使用BERT进行跨领域情感分析

2020 年 8 月 12 日 深度学习自然语言处理
点击上方,选择星标置顶,每天给你送干货
阅读大概需要7分钟
跟随小博主,每天进步一丢丢


每日英文
We'd better struggle for the future rather than regret for the past.
后悔过去,不如奋斗将来。
Recommender:云不见


作者:张义策
学校:哈尔滨工业大学(深圳)
方向:自然语言处理
知乎:https://www.zhihu.com/people/zhang-yi-ce-84
编辑:王萌 澳门城市大学(深度学习自然语言处理公众号)


Adversarial and Domain-Aware BERT for Cross-Domain Sentiment Analysis https://www.aclweb.org/anthology/2020.acl-main.370/

这是ACL2020上的一篇长文,作者来自北京邮电大学。

这篇文章将BERT模型用在跨领域情感分析上,所使用的方法并没有非常新颖,不过实验和分析倒是挺多的。



大体思路



这篇文章所研究的“跨领域情感分析”,旨在通过源领域的标注数据对目标领域的无标注数据进行情感分类。源领域如餐饮领域,目标领域如电子产品领域,这两个领域之间存在一定的差异。为了克服领域间的差异,一大类工作的思路是在特征抽取阶段,抽取领域不变的特征。比如以下两个句子中,“不错”则是领域不变的特征,而“清晰”和“周到”则是领域特定的特征。


  
  
    
电子产品领域:这个屏幕不错,很清晰。
餐饮领域:他们的服务不错,很周到。

这篇文章也采用这种方法。此外,他们还适应BERT的特点,进行了后训练(post-training)。



后训练



后训练这种说法我最早是从下面的文章中看到的,大概是为了与预训练(pre-training)区分开来。这种说法虽然严谨,貌似用的人不多。

BERT Post-Training for Review Reading Comprehension and Aspect-based Sentiment Analysis( https://www.aclweb.org/anthology/N19-1242/

在这篇文章中,作者使用了两个后训练任务:领域分类任务和mlm(mask language model)任务。下面分别介绍。

领域分类任务 在该任务中,作者构造了两种句子对,句子对由句子A和句子B构成。第一种句子对中句子A和句子B都是目标领域,第二种句子对中一个句子来自源领域,另一个来自其他领域。下图是例子。两种句子对都是随机采样的,各占50%。随后将这两种句子输入到BERT中,使用[CLS]处的向量进行分类。作者指出,该任务的目的是让模型增加对不同领域数据的感知,以增强接下来的对抗训练。


mlm任务 这里的mlm任务则和BERT预训练中的基本相同,区别在于文章只mask了目标领域句子中的词。但是这里我有个疑问。如果进行领域分类任务和mlm任务的联合训练,那么模型岂不是可以根据mask的情况找到领域分类任务的捷径?可惜这篇文章的代码没有开源。


对抗训练



前面提到大部分的模型都是通过抽取领域不变的特征来进行跨领域的情感分类。为了实现这一点,大部分的工作都是在进行情感分类的同时,添加一个领域分类任务,然后配合梯度反转层来进行对抗训练。关于梯度反转层,可以参见我的这篇文章(【梯度反转】 https://zhuanlan.zhihu.com/p/75470256 )。作者进行情感分类和领域分类的时候,也使用了[CLS]处的向量。



理论分析



与大多数工作不同的是,作者就其提出的方法进行了一定的理论分析,将感觉转变为可证明的定理。经过一番假设和推导后得到:


即目标领域错误的期望值的上界由三部分构成:(1) 源领域错误的期望值,(2)两个领域的差异,(3)一个常数。所以说,为了降低目标领域上的错误率,应该降低源领域上的错误率,并减少两个领域的差异。



实验部分



实验仍是在Amazon数据集上进行。实验结果如下表所示,其中BERT-AT是指只使用了对抗训练没有使用后训练,BERT-DA使用了后训练没有使用对抗训练。从表中可以看出,使用了后训练和对抗训练的策略,在BERT模型的基础上提高了将近2个百分点。而且作者指出,单纯地使用对抗训练提高并不大,而结合了后训练之后,对抗训练的效果才较为明显。


此外,作者还通过t-SNE进行了特征的可视化。如下二图所示,在左图中在源领域上的不同情感倾向句子的特征相距较远,而在目标领域上分离的就不够充分;经过了后训练,相比左图,在右图中,不同领域的特征分离的比较明显,而且相对来说目标领域上不同情感倾向的特征分离程度更高(作者这么说的,不过肉眼上好像也看不出来)。


如下二图所示,经过对抗训练后,在左图中和右图中两个领域的特征距离均比较接近。而在左图中,不同情感倾向句子的特征分离没有右图中的明显。经过一堆分析后,我们可以看到在文章提出的方法中,不同领域上的分离程度低,不同情感倾向上的分离程度高,结合前面的理论分析,所以提出的方法效果好。


文章还有关于领域差异度以及消融分析的实验,这里不介绍了。



总结



这篇文章的实验和分析的确是充分,而且也没有很强行。
不知道以后会不会有类似{D, B, K}->E的工作。



说个正事哈



由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:

(1)点击页面最上方深度学习自然语言处理”,进入公众号主页。

(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。

感谢支持,比心



投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。

方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等

记得备注呦


推荐两个专辑给大家:
专辑 | 李宏毅人类语言处理2020笔记
专辑 | NLP论文解读

整理不易,还望给个在看!

登录查看更多
4

相关内容

狭义的情感分析(sentiment analysis)是指利用计算机实现对文本数据的观点、情感、态度、情绪等的分析挖掘。广义的情感分析则包括对图像视频、语音、文本等多模态信息的情感计算。简单地讲,情感分析研究的目标是建立一个有效的分析方法、模型和系统,对输入信息中某个对象分析其持有的情感信息,例如观点倾向、态度、主观观点或喜怒哀乐等情绪表达。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
【ICML2020】统一预训练伪掩码语言模型
专知会员服务
25+阅读 · 2020年7月23日
深度学习自然语言处理概述,216页ppt,Jindřich Helcl
专知会员服务
209+阅读 · 2020年4月26日
【ACL2020-Allen AI】预训练语言模型中的无监督域聚类
专知会员服务
23+阅读 · 2020年4月7日
六篇 EMNLP 2019【图神经网络(GNN)+NLP】相关论文
专知会员服务
71+阅读 · 2019年11月3日
最新BERT相关论文清单,BERT-related Papers
专知会员服务
52+阅读 · 2019年9月29日
【情感分析】基于Aspect的情感分析模型总结(一)
深度学习自然语言处理
8+阅读 · 2020年3月1日
细粒度情感分析任务(ABSA)的最新进展
PaperWeekly
18+阅读 · 2020年1月3日
一文读懂最强中文NLP预训练模型ERNIE
AINLP
24+阅读 · 2019年10月22日
一文详解Google最新NLP模型XLNet
PaperWeekly
17+阅读 · 2019年7月1日
站在BERT肩膀上的NLP新秀们(PART III)
AINLP
11+阅读 · 2019年6月18日
站在BERT肩膀上的NLP新秀们(PART II)
AINLP
35+阅读 · 2019年6月8日
奇点已过?聊聊BERT之后的NLP时代
AI研习社
4+阅读 · 2019年6月6日
R语言自然语言处理:情感分析
R语言中文社区
16+阅读 · 2019年4月16日
Arxiv
4+阅读 · 2020年5月25日
Arxiv
3+阅读 · 2019年9月5日
Arxiv
6+阅读 · 2019年8月22日
VIP会员
相关资讯
【情感分析】基于Aspect的情感分析模型总结(一)
深度学习自然语言处理
8+阅读 · 2020年3月1日
细粒度情感分析任务(ABSA)的最新进展
PaperWeekly
18+阅读 · 2020年1月3日
一文读懂最强中文NLP预训练模型ERNIE
AINLP
24+阅读 · 2019年10月22日
一文详解Google最新NLP模型XLNet
PaperWeekly
17+阅读 · 2019年7月1日
站在BERT肩膀上的NLP新秀们(PART III)
AINLP
11+阅读 · 2019年6月18日
站在BERT肩膀上的NLP新秀们(PART II)
AINLP
35+阅读 · 2019年6月8日
奇点已过?聊聊BERT之后的NLP时代
AI研习社
4+阅读 · 2019年6月6日
R语言自然语言处理:情感分析
R语言中文社区
16+阅读 · 2019年4月16日
Top
微信扫码咨询专知VIP会员