fixed the bug raised by "tmp_eval_loss += tmp_eval_loss.item()" when parallelly using multi-gpu.
This commit is contained in:
@@ -210,6 +210,9 @@ def evaluate(args, model, tokenizer, labels, pad_token_label_id, mode, prefix=""
|
|||||||
outputs = model(**inputs)
|
outputs = model(**inputs)
|
||||||
tmp_eval_loss, logits = outputs[:2]
|
tmp_eval_loss, logits = outputs[:2]
|
||||||
|
|
||||||
|
if args.n_gpu > 1:
|
||||||
|
tmp_eval_loss = tmp_eval_loss.mean() # mean() to average on multi-gpu parallel evaluating
|
||||||
|
|
||||||
eval_loss += tmp_eval_loss.item()
|
eval_loss += tmp_eval_loss.item()
|
||||||
nb_eval_steps += 1
|
nb_eval_steps += 1
|
||||||
if preds is None:
|
if preds is None:
|
||||||
|
|||||||
Reference in New Issue
Block a user