Dice Loss for Data-imbalanced NLP Tasks

Many NLP tasks such as tagging and machine reading comprehension are faced with the severe data imbalance issue: negative examples significantly outnumber positive examples, and the huge number of background examples (or easy-negative examples) overwhelms the training. The most commonly used cross entropy (CE) criteria is actually an accuracy-oriented objective, and thus creates a discrepancy between training and test: at training time, each training instance contributes equally to the objective function, while at test time F1 score concerns more about positive examples. In this paper, we propose to use dice loss in replacement of the standard cross-entropy objective for data-imbalanced NLP tasks. Dice loss is based on the Sorensen-Dice coefficient or Tversky index, which attaches similar importance to false positives and false negatives, and is more immune to the data-imbalance issue. To further alleviate the dominating influence from easy-negative examples in training, we propose to associate training examples with dynamically adjusted weights to deemphasize easy-negative examples.Theoretical analysis shows that this strategy narrows down the gap between the F1 score in evaluation and the dice loss in training. With the proposed training objective, we observe significant performance boost on a wide range of data imbalanced NLP tasks. Notably, we are able to achieve SOTA results on CTB5, CTB6 and UD1.4 for the part of speech tagging task; SOTA results on CoNLL03, OntoNotes5.0, MSRA and OntoNotes4.0 for the named entity recognition task; along with competitive results on the tasks of machine reading comprehension and paraphrase identification.

PDF Abstract ACL 2020 PDF ACL 2020 Abstract

Results from the Paper

 Ranked #1 on Chinese Named Entity Recognition on OntoNotes 4 (using extra training data)

     Get a GitHub badge
Task Dataset Model Metric Name Metric Value Global Rank Uses Extra
Training Data
Result Benchmark
Named Entity Recognition (NER) CoNLL 2003 (English) BERT-MRC+DSC F1 93.33 # 23
Chinese Named Entity Recognition MSRA BERT-MRC+DSC F1 96.72 # 1
Chinese Named Entity Recognition OntoNotes 4 BERT-MRC+DSC F1 84.47 # 1
Named Entity Recognition (NER) Ontonotes v5 (English) BERT-MRC+DSC F1 92.07 # 1
Question Answering SQuAD1.1 dev XLNet+DSC EM 89.79 # 3
F1 95.77 # 1
Question Answering SQuAD2.0 dev XLNet+DSC F1 89.51 # 2
EM 87.65 # 2