这是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的工作。

人工智能应用场景案例:使用BERT进行跨领域情感分析相关推荐

  1. [Python人工智能] 三十四.Bert模型 (3)keras-bert库构建Bert模型实现微博情感分析

    从本专栏开始,作者正式研究Python深度学习.神经网络及人工智能相关知识.前一篇文章开启了新的内容--Bert,首先介绍Keras-bert库安装及基础用法及文本分类工作.这篇文章将通过keras- ...

  2. 如何实现情感分析在舆情场景下的千人千面效果——情感分析在舆情中的研发实践(上)

    编者按 文本情感分析是对带有主观感情色彩的文本进行分析.处理.归纳和推理的过程.互联网上每时每刻都会产生大量文本,这其中也包含大量的用户直接参与的.对人.事.物的主观评价信息,比如微博.论坛.汽车.购 ...

  3. 武汉大学计算机学院 情感分析,跨语言情感分析方法研究

    跨语言情感分析方法研究 [摘要]:近些年来,随着自然语言处理技术和机器学习技术的发展,单语文本的情感分析已得到深入的研究和发展,各种关于词级.超词级.句子级.篇章级的情感分析研究已逐渐趋于成熟.然而, ...

  4. 【人工智能毕设之基于Python+flask+bilstm的评论情感分析系统-哔哩哔哩】 https://b23.tv/QU56eTl

    [人工智能毕设之基于Python+flask+bilstm的评论情感分析系统-哔哩哔哩] https://b23.tv/QU56eTl https://b23.tv/QU56eTl

  5. 跨领域推荐,实现个性化服务的技术途径

    本文由携程技术中心投递,ID:ctriptech.本文整理自上海交通大学计算机系教授曹健,在携程个性化推荐与人工智能Meetup上的分享. 1.跨领域推荐的概念 推荐系统在我们这个时代扮演了越来越重要 ...

  6. NLP之TEA:自然语言处理之文本情感分析的简介、算法、应用、实现流程方法、案例应用之详细攻略

    NLP之TEA:自然语言处理之文本情感分析的简介.算法.应用.实现流程.实现方法之详细攻略 目录 TEA的简介 TEA的应用 TEA的实现流程 TEA的实现方法 T1.词袋模型 TEA的案例应用 TE ...

  7. [深度学习-NLP]Imdb数据集情感分析之模型对比(贝叶斯, LSTM, GRU, TextCNN, Transformer, BERT)

    一,详细原理以及代码请看下面博客 1.Imdb数据集情感分析之离散贝叶斯 2.Imdb数据集情感分析之LSTM长短期记忆 3.Imdb数据集情感分析之卷积神经网络-TextCNN 4.Imdb数据集情 ...

  8. 结合业务场景案例实践分析,倾囊相授美团BERT的探索经验

    Google 在 2018 年公布 BERT 的工作之后,引起了 NLP 学术圈以及工业界的极大关注.无论是在各个公司的应用场景中,还是在一些公开的 Benchmark 上,BERT 的效果都得到了验 ...

  9. 捷报|数说故事入选「广州市人工智能应用场景典型案例TOP100」

    近日,为贯彻<广州市人工智能产业链高质量发展三年行动计划(2021-2023年)>有关要求,广州市科学技术局围绕"造车健城"4条优势赛道,经过公开征集和组织专家评审,遴 ...

最新文章

  1. 安装envi出现cannot find lincese_Ubuntu 16.04 安装 CUDA10.1 (解决循环登陆的问题)
  2. 系统管理员在企业中的职业定位及发展方向 连载(三)
  3. 推荐系统的作用和问题
  4. php查询字段的总和,ThinkPHP 多表查询-如其字段A相同,则把字段B相加
  5. 昨天日志 今天日志的获取方法
  6. 通过Applescript打开终端运行py文件
  7. 为什么工作7年又来开博客?
  8. 页面搭建工具总结及扩展架构思考
  9. python ca模块_23 Python常用模块(一)
  10. 重新想象 Windows 8 Store Apps (35) - 通知: Toast 详解
  11. 博图注册表删除方法_回收站删除的文件怎么恢复?手把手教你找回
  12. IPv4无网络访问权限解决办法
  13. kinectfusion解析_KinectFusion解析
  14. HDU 4238 You Are the One
  15. 我的第一个JS组件-跨浏览器JS调试工具
  16. 安卓京东自动炸年兽v4.1.1
  17. oracle11g 客户端字符集,查看 Oracle11g 的字符集
  18. 电子元器件贸易如何应用采购管理系统,做好采购订单交期管理?
  19. 【大道至简】机器学习算法之EM算法(Expectation Maximization Algorithm)详解(附代码)---通俗理解EM算法。
  20. 基础知识回顾——迭代器和生成器

热门文章

  1. Glossary - 术语对照表 10
  2. C/C++ source code websites
  3. 函数| 常用模块总结练习
  4. C语言strlen函数未定义
  5. AWS DAS认证考点整理(Redshift篇)
  6. 【收藏】羊皮卷(之九)
  7. this的HXD“super”关键字
  8. 仿美团城市定位于城市选择
  9. 毕设-基于SpringBoot家庭理财管理系统v2
  10. 显存优化 | Pytorch的显存机制torch.cuda.empty_cache及周边概念