From bd847ce7d7a498c3852f6bb31af8f9e781a85f65 Mon Sep 17 00:00:00 2001 From: "focox@qq.com" Date: Wed, 23 Oct 2019 20:27:13 +0800 Subject: [PATCH] fixed the bug raised by "tmp_eval_loss += tmp_eval_loss.item()" when parallelly using multi-gpu. --- examples/run_ner.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/examples/run_ner.py b/examples/run_ner.py index 00eb039258..28d9e9db28 100644 --- a/examples/run_ner.py +++ b/examples/run_ner.py @@ -210,6 +210,9 @@ def evaluate(args, model, tokenizer, labels, pad_token_label_id, mode, prefix="" outputs = model(**inputs) 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() nb_eval_steps += 1 if preds is None: