成为VIP会员查看完整内容
VIP会员码认证
首页
主题
发现
会员
服务
注册
·
登录
0
数据不平衡问题成“千年”难题,看ACL新方法Dice Loss如何有效解决!
2020 年 7 月 5 日
AI科技评论
本文介绍的是 ACL 2020 论文《
Dice Loss for Data-imbalanced NLP Tasks》,论
文作者来自香侬科技、浙江大学
。
作者 |
香
侬科
技
编辑 | 丛 末
论文链接:
https://arxiv.org/pdf/1911.02855.pdf
在本文中,我们提出用Dice Loss缓解大量NLP任务中的数据不平衡问题,从而能够提高基于F1评分的表现。Dice Loss 形式简单且十分有效,将Cross Entropy Loss替换为Dice Loss能够在词性标注数据集CTB5、CTB6、UD1.4,命名实体识别数据集CoNLL2003、OntoNotes5.0、MSRA、OntoNotes4.0,和问答数据集SQuAD、Quoref上接近或超过当前最佳结果。
1
自然语言处理中的“不平衡”数据集
在各类自然语言处理任务中,数据不平衡是一个非常常见的问题,尤其见于序列标注任务中。比如,对词性标注任务来说,我们一般使用BIEOS,如果我们把O视为负例,其他视为正例,那么负例数和正例数之比是相当大的。
这种不平衡会导致两个问题:
训练与测试失配。占据绝大多数的负例会支配模型的训练过程,导致模型倾向于负例,而测试时使用的F1指标需要每个类都能准确预测;
简单负例过多。负例占绝大多数也意味着其中包含了很多简单样本,这些简单样本对于模型学习困难样本几乎没有帮助,反而会在交叉熵的作用下推动模型遗忘对困难样本的知识。
总的来说,大量简单负例会在交叉熵的作用下推动模型忽视困难正例的学习,而序列标注任务往往使用F1衡量,从而在正例上预测欠佳直接导致了F1值偏低。
在本文,我们认为这种问题是交叉熵本身的特点带来的:交叉熵“平等”地看待每一个样本,无论正负,都尽力把它们推向1(正例)或0(负例)。但实际上,对分类而言,将一个样本分类为负只需要它的概率<0.5即可,完全没有必要将它推向0。
基于这个观察,我们使用现有的Dice Loss,并提出一个基于Dice Loss的自适应损失——DSC,在训练时推动模型更加关注困难的样本,降低简单负例的学习度,从而在整体上提高基于F1值的效果。
我们在多个任务上实验,包括:词性标注、命名实体识别、问答和段落识别。
对词性标注,我们能在CTB5上达到97.92的F1,在CTB6上达到96.57的F1,在UD1.4上达到96.98,在WSJ上达到99.38,在Tweets上达到92.58,显著超越基线模型。
对命名实体识别,我们能在CoNLL2003上实现93.33,在OntoNotes5上实现92.07,在MSRA上实现96.72,在OntoNotes4上实现84.47的F1值,接近或超过当前最佳。
对问答,我们能在SQuAD1/2和QuoRef上超过基线模型约1个F1值。
对段落识别,我们的方法也能显著提高最终结果。
2
从Cross Entropy到Dice Losses
1、交叉熵损失(CE)
我们按照逻辑顺序来梳理如何从交叉熵损失到Dice Loss。我们以二分类作为说明,记输入为
,输出为一个二值概率
,并且有一个二元真值
。
首先,传统的交叉熵损失是:
显然,对每个样本,CE对它们都一视同仁,不管当前样本是简单还是复杂。当简单样本有很多的时候,模型的训练就会被这些简单样本占据,使得模型难以从复杂样本中学习。于是,一种简单的改进方法是,降低模型在简单样本上的学习速率,从而得到下述加权交叉熵损失:
对不同样本,我们可以设置不同的权重,从而控制模型在该样本上学习的程度。但是此时,权重的选择又变得比较困难。因为我们的目标是缓解数据集的不平衡问题从而提高基于F1评测指标的效果,我们希望有一种损失函数能够直接作用于F1。
2、Sørensen–Dice系数(DSC)
幸运的是,我们可以利用一种现有的方法——Sørensen–Dice系数(简称DSC)——去衡量F1。DSC是一种用于衡量两个集合之间相似度的指标:
如果我们令A是所有模型预测为正的样本的集合,令B为所有实际上为正类的样本集合,那么DSC就可以重写为:
其中,TP是True Positive,FN是False Negative,FP是False Negative,D是数据集,f是一个分类模型。于是,在这个意义上,DSC是和F1等价的。
既然如此,我们就想直接优化DSC,然而上述表达式是离散的。为此,我们需要把上述DSC表达式转化为连续的版本,从而视为一种soft F1。
对单个样本x,我们直接定义它的DSC:
注意这和一开始DSC的定义是一致的。可以看到,若x是负类,那么它的DSC就为0,从而不会对训练有贡献。为了让负类也能有所贡献,我们增加一个平滑项:
但这样一来,又需要我们根据不同的数据集手动地调整平滑项。而且,当easy-negative样本很多的时候,即便使用上述平滑项,整个模型训练过程仍然会被它们主导。基于此,我们使用一种“自调节”的DSC:
比较上面两个DSC,可以发现,
实际上充当了缩放系数,对于简单样本(
趋于1或0),
使得模型更少地关注它们。从导数上看,一旦模型正确分类当前样本(刚刚经过0.5),DSC就会使模型更少关注它,而不是像交叉熵那样,鼓励模型迫近0或1这两个端点,这就能有效避免因简单样本过多导致模型训练受到简单样本的支配。
事实上,这比较类似Focal Loss (FL),即降低已分好类的样本的学习权重:
不过,FL即使能对简单样本降低学习权重,但是它本质上仍然是在鼓励简单样本趋向0或1,这就和DSC有了根本上的区别。因此,我们说DSC通过“平衡”简单样本和困难样本的学习过程,从而提高了最终的F1值(因为F1要求各类都有比较好的结果)。
3、Dice Loss(DL)与Tversky Loss(TL)
除了上述DSC之外,我们还比较了两种
的变体,分别是下述的Dice Loss(DL)和Tversky Loss(TL):
特别地,在TL中,如果
,它就退化到了DSC。
4、损失总结
最后,我们来总结一下各损失:
我们把后面三个损失统称为Dice Loss。
3
实验
1、词性标注
我们首先在词性标注任务上实验,数据集有中文的CTB5/6、UD1.4和英文的WSJ、Tweets。基线模型包括Joint-POS、Lattice-LSTM及BERT。下表分别是中文和英文的实验结果:
可以看到,DSC在各个数据集上都能得到最好的效果提升,而其他方法的提升并不一致。
2、命名实体识别
下面我们在命名实体识别任务上实验,数据集有中文的Ontonotes4、MSRA和英文的CoNLL2003、OntoNotes5,基线模型有ELMo、CVT、BERT-Tagger与BERT-MRC。下表是实验结果:
与词性标注一样,DSC能够保持效果一致的提高。
3、问答
下面我们在SQuAD1/2和QuoRef上对问答任务进行实验,基线模型有QANet、BERT与XLNet,下表是实验结果:
无论是对BERT还是对XLNet,DSC都有显著的提升。
4、段落识别
段落识别是一个分类任务,需要判断两个给定的段落语义是否相同。和标注任务相比,该任务的不平衡度要轻得多。下表是实验结果:
尽管效果提升没有序列标注任务大,但仍然有接近一个点的提升。
5、不平衡程度的影响
既然Dice Loss的提出是为了缓解数据分布不平衡的问题,我们自然想问,不平衡的程度对效果的提升影响如何。我们使用段落识别的QQP数据集进行实验。QQP原始数据包含37%的正类和63%的负类,我们使用下述方法改变数据分布:
+positive:使用同义词替换等方式增加正类数量,使数据分布平衡(50:50)
+negative:使用同义词替换等方式增加负类数量,使数据分布更加不平衡(21:79)
-negative:随机删除负类,使数据分布平衡(50:50)
+positive&+negative:同时增加正类和负类,使数据分布平衡(50:50)
以上+方法最终都得到了相同大小的数据集。下表是实验结果:
首先观察到,数据的平衡性对最终结果影响是非常大的,即使是基线模型BERT,大体上讲,数据越不平衡,最终结果就越差,当然这也受到整体数据量的影响。而对平衡的数据集(+positive,+positive&+negative)来说,DSC带来的提高略小于不平衡的数据集(original,+negative),而-negative提高最差可能与它的数据量有关。
6、对以准确率为指标的任务的影响
通过上述实验我们知道,Dice Loss有助于提高F1值的表现,那么对以准确率为指标的任务又如何呢?我们在SST2和SST5上实验,下表是实验结果:
可以看到,使用Dice Loss实际上是降低了准确率,这是因为Dice Loss考虑的实际上是类间的“平衡”,而不是笼统地考虑所有的数据。
3
小结
本文使用现有的Dice Loss,并提出了一种新型的自适应损失DSC,用于各种数据分布不平衡的NLP任务中,以缓解训练时的交叉熵与测试时的F1的失配问题。实验表明,使用该损失可以显著提高标注任务、分类任务的F1值,并且也说明了F1效果的提升与数据不平衡的程度、数据量大小有密切的关系。
ACL 2020原定于2020年7月5日至10日在美国华盛顿西雅图举行,因新冠肺炎疫情改为线上会议。为促进学术交流,方便国内师生提早了解自然语言处理(NLP)前沿研究,AI 科技评论将推出「ACL 实验室系列论文解读」内容,同时欢迎更多实验室参与分享,敬请期待!
点击"阅读原文",直达“ACL 交流小组”了解更多会议信息。
登录查看更多
点赞并收藏
0
暂时没有读者
4
权益说明
本文档仅做收录索引使用,若发现您的权益受到侵害,请立即联系客服(微信: zhuanzhi02,邮箱:bd@zhuanzhi.ai),我们会尽快为您处理
相关内容
Dice Loss
关注
0
最新《数据因果性学习: 问题与方法》2020综述论文,36页pdf
专知会员服务
151+阅读 · 2020年8月16日
【ECCV2020-海康威视】用于深度表示学习的无监督图像分类
专知会员服务
69+阅读 · 2020年7月6日
基于多头注意力胶囊网络的文本分类模型
专知会员服务
77+阅读 · 2020年5月24日
【伯克利】再思考 Transformer中的Batch Normalization
专知会员服务
40+阅读 · 2020年3月21日
【TPAMI2020】目标检测中的不平衡问题:综述论文,34页pdf
专知会员服务
54+阅读 · 2020年3月16日
【斯坦福大学】图卷积神经网络和标签传播统一建模学习
专知会员服务
98+阅读 · 2020年2月20日
医学图像分割的深度学习解决方案综述
专知会员服务
87+阅读 · 2020年2月14日
【NLP| 推荐文章】用图递归网络解决图的NLP问题(Tackling Graphical NLP problems with Graph Recurrent Networks)
专知会员服务
32+阅读 · 2019年11月24日
【CCL 2019】 许晶晶:基于对抗训练的机器学习鲁棒性分析-研究中的崎岖与思考
专知会员服务
17+阅读 · 2019年11月12日
生成式对抗网络GAN异常检测
专知会员服务
116+阅读 · 2019年10月13日
多因素问题分析时,如何确立各因素权重?
人人都是产品经理
74+阅读 · 2020年3月4日
论文浅尝 | 利用问题生成提升知识图谱问答
开放知识图谱
20+阅读 · 2019年11月5日
ACL 2019开源论文 | 句对匹配任务中的样本选择偏差与去偏方法
PaperWeekly
6+阅读 · 2019年7月12日
如何理解模型的过拟合与欠拟合,以及如何解决?
七月在线实验室
12+阅读 · 2019年4月23日
非平衡数据集 focal loss 多类分类
AI研习社
33+阅读 · 2019年4月23日
机器学习中如何处理不平衡数据?
机器之心
13+阅读 · 2019年2月17日
深度学习训练数据不平衡问题,怎么解决?
AI研习社
7+阅读 · 2018年7月3日
方法总结:教你处理机器学习中不平衡类问题
专知
9+阅读 · 2018年2月7日
【干货】机器学习中样本比例不平衡的处理方法
机器学习研究会
8+阅读 · 2018年1月14日
何恺明大神的「Focal Loss」,如何更好地理解?
PaperWeekly
10+阅读 · 2017年12月28日
Action Segmentation with Joint Self-Supervised Temporal Domain Adaptation
Arxiv
6+阅读 · 2020年3月18日
Question Generation by Transformers
Arxiv
5+阅读 · 2019年9月14日
Capsule Networks against Medical Imaging Data Challenges
Arxiv
3+阅读 · 2018年7月19日
Asymmetric Similarity Loss Function to Balance Precision and Recall in Highly Unbalanced Deep Medical Image Segmentation
Arxiv
5+阅读 · 2018年6月29日
Scaling Neural Machine Translation
Arxiv
3+阅读 · 2018年6月1日
Hierarchical Pointer Memory Network for Task Oriented Dialogue
Arxiv
3+阅读 · 2018年5月3日
Graph Attention Networks
Arxiv
10+阅读 · 2018年2月4日
Brain Tumor Segmentation Based on Refined Fully Convolutional Neural Networks with A Hierarchical Dice Loss
Arxiv
4+阅读 · 2017年12月25日
Dr.VAE: Drug Response Variational Autoencoder
Arxiv
3+阅读 · 2017年7月6日
Twitter Sentiment Analysis
Arxiv
5+阅读 · 2015年9月14日
VIP会员
自助开通(推荐)
客服开通
详情
相关主题
Dice Loss
负例
数据不平衡
交叉熵
正例
词性标注
相关VIP内容
最新《数据因果性学习: 问题与方法》2020综述论文,36页pdf
专知会员服务
151+阅读 · 2020年8月16日
【ECCV2020-海康威视】用于深度表示学习的无监督图像分类
专知会员服务
69+阅读 · 2020年7月6日
基于多头注意力胶囊网络的文本分类模型
专知会员服务
77+阅读 · 2020年5月24日
【伯克利】再思考 Transformer中的Batch Normalization
专知会员服务
40+阅读 · 2020年3月21日
【TPAMI2020】目标检测中的不平衡问题:综述论文,34页pdf
专知会员服务
54+阅读 · 2020年3月16日
【斯坦福大学】图卷积神经网络和标签传播统一建模学习
专知会员服务
98+阅读 · 2020年2月20日
医学图像分割的深度学习解决方案综述
专知会员服务
87+阅读 · 2020年2月14日
【NLP| 推荐文章】用图递归网络解决图的NLP问题(Tackling Graphical NLP problems with Graph Recurrent Networks)
专知会员服务
32+阅读 · 2019年11月24日
【CCL 2019】 许晶晶:基于对抗训练的机器学习鲁棒性分析-研究中的崎岖与思考
专知会员服务
17+阅读 · 2019年11月12日
生成式对抗网络GAN异常检测
专知会员服务
116+阅读 · 2019年10月13日
热门VIP内容
开通专知VIP会员 享更多权益服务
OpenAI十二天总结与Agent新范式
【伯克利博士论文】高效深度学习推理的全栈方法
【AAAI2025】多层次最优传输用于语言模型中的通用跨标记器知识蒸馏
大规模语言模型增强推荐系统:分类、趋势、应用与未来
相关资讯
多因素问题分析时,如何确立各因素权重?
人人都是产品经理
74+阅读 · 2020年3月4日
论文浅尝 | 利用问题生成提升知识图谱问答
开放知识图谱
20+阅读 · 2019年11月5日
ACL 2019开源论文 | 句对匹配任务中的样本选择偏差与去偏方法
PaperWeekly
6+阅读 · 2019年7月12日
如何理解模型的过拟合与欠拟合,以及如何解决?
七月在线实验室
12+阅读 · 2019年4月23日
非平衡数据集 focal loss 多类分类
AI研习社
33+阅读 · 2019年4月23日
机器学习中如何处理不平衡数据?
机器之心
13+阅读 · 2019年2月17日
深度学习训练数据不平衡问题,怎么解决?
AI研习社
7+阅读 · 2018年7月3日
方法总结:教你处理机器学习中不平衡类问题
专知
9+阅读 · 2018年2月7日
【干货】机器学习中样本比例不平衡的处理方法
机器学习研究会
8+阅读 · 2018年1月14日
何恺明大神的「Focal Loss」,如何更好地理解?
PaperWeekly
10+阅读 · 2017年12月28日
相关论文
Action Segmentation with Joint Self-Supervised Temporal Domain Adaptation
Arxiv
6+阅读 · 2020年3月18日
Question Generation by Transformers
Arxiv
5+阅读 · 2019年9月14日
Capsule Networks against Medical Imaging Data Challenges
Arxiv
3+阅读 · 2018年7月19日
Asymmetric Similarity Loss Function to Balance Precision and Recall in Highly Unbalanced Deep Medical Image Segmentation
Arxiv
5+阅读 · 2018年6月29日
Scaling Neural Machine Translation
Arxiv
3+阅读 · 2018年6月1日
Hierarchical Pointer Memory Network for Task Oriented Dialogue
Arxiv
3+阅读 · 2018年5月3日
Graph Attention Networks
Arxiv
10+阅读 · 2018年2月4日
Brain Tumor Segmentation Based on Refined Fully Convolutional Neural Networks with A Hierarchical Dice Loss
Arxiv
4+阅读 · 2017年12月25日
Dr.VAE: Drug Response Variational Autoencoder
Arxiv
3+阅读 · 2017年7月6日
Twitter Sentiment Analysis
Arxiv
5+阅读 · 2015年9月14日
大家都在搜
palantir
洛克菲勒
大规模语言模型
CMU博士论文
无人机系统
自主可控
无人艇
机器狗
evolution
GANLab 将GA
Top
提示
微信扫码
咨询专知VIP会员与技术项目合作
(加微信请备注: "专知")
微信扫码咨询专知VIP会员
Top