友情提示:阅读作业的笔记整理,文章来源会议ACL2020,由百度和中科大发表的SKEP模型。初读此类论文,靠着百度磕磕巴巴读的,未来发现理解错误会进行修改,欢迎指正。

Abstract

Recently, sentiment analysis has seen remarkable advance with the help of pre-training approaches. However, sentiment knowledge, such as sentiment words and aspect-sentiment pairs, is ignored in the process of pre-training, despite the fact that they are widely used in traditional sentiment analysis approaches. In this paper, we introduce Sentiment Knowledge Enhanced Pre-training (SKEP) in order to learn a unified sentiment representation for multiple sentiment analysis tasks. With the help of automatically-mined knowledge, SKEP conducts sentiment masking and constructs three sentiment knowledge prediction objectives, so as to embed sentiment information at the word, polarity and aspect level into pretrained sentiment representation. In particular, the prediction of aspect-sentiment pairs is
converted into multi-label classification, aiming to capture the dependency between words in a pair. Experiments on three kinds of sentiment tasks show that SKEP significantly outperforms strong pre-training baseline, and achieves new state-of-the-art results on most of the test datasets. We release our code at https://github.com/baidu/Senta.

0. Summary

SKEP名为情感知识增强预训练模型,就是将多种情感知识融合,包括不同领域的知识和不同类型的知识,从而达到可以使用同一个预训练模型处理多个情感分析的任务。该文出发点是目前情感任务必须分不同的领域使用不同的模型比较繁琐,以及发现方面-情感词作为一个token的时候效果会比拆开单独作2个token效果更好,从而将三个目标优化融入到transfomer中,达到模型的性能提高,在大部分数据集中都超过之前的SOTA。

1. Research Objective

结合多种情感知识并且提高预训练模型性能。

2. Background / Problem Statement

传统的情感分析任务分别研究不同类型的情感知识,针对模型众多这个问题,该文想为不同的情感分析任务提出一个统一的情感分析模型,争取在不同的任务中取得良好的效果。

BERT

  1. BERT使用transformer编码器可以给输入序列的每个token都产生一个上下文表示。输入序列的第一个token是一个特殊的分类标记[CLS],在微调步骤中,[CLS]的最终隐藏状态通常用作输入序列的整体语义表示。为了训练transfomer编码器,提出了MLM(类似于做完形填空测试),MLM根据占位符预测序列中被掩盖的token,一部分输入token会被随机选中并替换。
  2. BERT统一选择15%的输入token,在这些被选择中的token中,80%被替换成特殊的掩码token[MASK],10%被替换为随机token,10%保持不变。在构建了一个损坏的序列版本之后,MLM的目标是使用相应的最终状态来预测掩盖位置的原始token。

RoBERTa

  1. 去掉下一句预测NSP任务。
    Next Sentence Prediction: 寻找自然语言中句子级的监督信号。
  2. 动态掩码。
    原版的BERT实现在数据预处理期间执行一次掩码,得到一个静态掩码。RoBERTa使用了动态掩码,每次向模型输入一个序列时都会生成新的掩码模式,在大量数据不断输入的过程中,模型会逐渐适应不同的掩码策略,学习不同的语言表征。
  3. 文本编码

3. Method(s)

SKEP三个步骤

1. 无监督获取情感知识

  1. SKEP从未标记的数据中挖掘知识,即基于逐点互信息的简单有效的挖掘方法 Pointwise Mutual Information (PMI)。
    PMI方法只依赖于少量的情感种子词,并给出每个种子词s的词极化度 WP(s)。它首先建立一个候选词对的集合,其中每个词对包含一个种子词,并符合预先定义的词性模式。

PMI参考文献: Peter D Turney. 2002. Thumbs up or thumbs down?:semantic orientation applied to unsupervised classification of reviews. InACL 2002.

下图为SKEP中使用的种子词

单词对的共现由PMI计算如下:

  1. 一个单词的极性是由所有正种子的PMI分数和所有负种子的PMI分数之差决定的。如果候选词的WP(w)大于0判定w是正向词,否则是负向词。
  2. 在挖掘情感词之后,通过简单的约束提取aspect-sentiment对。一对方面词和情感词之间的最大距离不超过3个token。

结果:挖掘好的情感知识包含带有极性的情感词和方面词-情感词对。

2. 情感掩码

与以前的随机词mask不同:SKEP基于情感知识mask。

1. Sentiment Detection with Knowledge 使用情感知识进行情感检测
情感检测:通过输入序列和情感知识进行匹配识别情感词和方面词-情感词对。

  • 情感词检测:在输入序列找到情感词与情感知识库匹配,匹配到就是情感词。
  • 方面词-情感词对检测:与前面的挖掘过程类似,将查找到的情感词与其距离为3以内的名词视为方面词-情感词对,在情感知识库内查找,如果有那么方面词-情感词对。

2. Hybrid Sentiment Masking 混合情感掩蔽
情感检测为输入序列产生三种类型的token,损坏(屏蔽)序列的过程按照一下的步骤进行:

  • 方面词-情感词掩蔽:最多选择两对方面词-情感词进行掩蔽。方面次词和情感词token都被[MASK]替换。
  • 情感词掩蔽:随机选择剩余未屏蔽的情感词,最多10%,用[MASK]替换。
  • 通用标记掩蔽:如果步骤2中的token不足,即少于10%。则使用随机的token来补充。(与RoBerta中的随机标记相同)

3. 情感预训练函数Sentiment Pre-training Objectives

定义了三个情感预训练目标函数,训练transformer编码器恢复被替换的情感信息。

1. 情感词预测:情感词预测目标函数Lsw代表原始情感词xi出现的最大概率

  • Lsw也包括Common token mask 通用标记掩码
  • 其中xi是transformer中的encoder的输出向量,yi是xi经过输出层后在经过softmax得到的概率分布。mi用于筛选哪些词是情感词,mi=1则是情感词。

2. 单词极性预测

  • 传统的基于词典的模型直接利用单词的极性对文本的情感进行分类。为了将这个引入到编码器中,进一步引入的Lwp,类似于Lsw,区别在于Lsw计算的是token的loss,而Lwp计算的是polarity的loss,也可以把polarity看成两分类positif和negatif的token。
  • 对于每个被掩蔽的情感标记xi,Lwp使用最终状态的xi计算极性(正或负)。然后目标的极性对应的原始情感词的极性可以从挖掘出的情感知识中找到。

3. 方面-情感对预测:比情感词能揭露更多的信息。

采用多标签分类进行方面-情感对预测。使用分类标记的最终状态[CLS]。

  • x1表示[CLS]的输出向量。A是在一个损坏的序列中被屏蔽的方面-情感对的数量。 ˆya 由sigmoid归一化的单词概率. ya是目标方面-情感对的稀疏表示。
  • ya的每个元素对应于词汇表中的一个标记,如果目标的方面情感对包含相应的标记,则等于1。由于ya等于1有多个元素,这里的预测是多标签分类。

4. Evaluation

预训练的过程在Amazon-2数据集中的句子上进行。

  • 与12层RoBERTa base以及24层的RoBERTa large对比。如下图所示,使用了SKEP后,性能有了较大提高。

  • 消融分析

    • 情感知识更丰富效果更好
    • AP-I是将方面词和情感词作为单个token进行训练,效果不如结合起来的AP
  • 注意层可视化

    • 表5显示了当使用SKEP模型对输入句子进行分类时,[CLS]标记最后一层注意力分布。
    • 在SST-2例子中,Roberta尽管给出了正确预测但是对情绪的关注不准确,而在Sem-L中根本没注意到“惊人”这个词,做出了错误预测。
    • SKEP模型可以正确预测以及产生对情感信息的恰当的关注,这表明SKEP具有更好的可解释性。

5. Conclusion

SKEP显著优于RoBERTa,在句子级、观点抽取以及方面级的情感分析任务上效果都很好,另外本文验证了将情感知识运用于预训练中是非常必要。

Future work

1. transformer学习
2. SKEP模型使用

【课程作业】情感分析方向SKEP: Sentiment Knowledge Enhanced Pretraining for Sentiment Analysis阅读报告相关推荐

  1. 【课程作业】Adversary Instantiation: Lower Bounds for Differentially Private Machine Learning论文阅读报告

    0.论文信息 论文名字 Adversary Instantiation: Lower Bounds for Differentially Private Machine Learning 所属会议 I ...

  2. [语义]情感分析方向近况·0908

    什么是情感分析? 这是一个语义领域的方向. 我们业界的术语是 Sentiment Analysis ,能涵盖这个方向的更高一层术语是 Opinion Analysis (意见分析).在我看来,情感分析 ...

  3. 自然语言处理NLP-100例 | 第二篇:在线课程评论情感分析-本科毕设实战案例

    大家好,我是K同学啊~ 春去秋来,时间就这样嘀嗒嘀嗒的过去,不知道大家的毕设做得怎么样了呢 K同学就今天和大家分享一篇关于在线课程评论情感分析的实战案例,帮助大家找找灵感. 数据用的是一份公开的在线课 ...

  4. 论文解读:SentiPrompt: Sentiment Knowledge Enhanced Prompt-Tuning for Aspect-Based Sentiment Analysis

    论文解读:SentiPrompt: Sentiment Knowledge Enhanced Prompt-Tuning for Aspect-Based Sentiment Analysis 简要信 ...

  5. 详细介绍ERNIE 3.0: Large-scale Knowledge Enhanced Pre-training for Language Understanding and Generation

    系列阅读: 详细介绍百度ERNIE1.0:Enhanced Representation through Knowledge Integration 详细介绍百度ERNIE 2.0:A Continu ...

  6. 方面级情感分析论文泛读02:Syntax-Aware Aspect-Level Sentiment Classification with Proximity-Weighted Convolution

    提示1:原文链接 提示1:代码链接 文章目录 前言 一.论文信息 二.笔记要点 2.1. 目前存在的问题 2.2. 目前解决方法: 2.3.本文方法和创新点 2.4. 实验效果 2.5. 模型结构 2 ...

  7. 【论文阅读】【基于方面的情感分析】Deep Context- and Relation-Aware Learning for Aspect-based Sentiment Analysis

    文章目录 Deep Context- and Relation-Aware Learning for Aspect-based Sentiment Analysis 一.该论文关注的是解决ABSA问题 ...

  8. 『NLP打卡营』实践课5:文本情感分析

    『NLP直播课』Day 5:情感分析预训练模型SKEP 本项目将详细全面介绍情感分析任务的两种子任务,句子级情感分析和目标级情感分析. 同时演示如何使用情感分析预训练模型SKEP完成以上两种任务,详细 ...

  9. 情感分析Sentiment Analysis 知识资料全集(入门/进阶/论文/综述/视频/专家,附查看

    情感分析 ( Sentiment Analysis ) 专知荟萃 入门学习 进阶论文 Tutorial 综述 代码 视频教程 领域专家 入门学习 斯坦福大学自然语言处理第七课"情感分析(Se ...

  10. 中文情感分析 (Sentiment Analysis) 的难点在哪?现在做得比较好的有哪几家?

    点击上方,选择星标或置顶,每天给你送干货! 阅读大概需要25分钟 跟随小博主,每天进步一丢丢 来自: 知乎 编辑: 深度学习自然语言处理公众号 地址: https://www.zhihu.com/qu ...

最新文章

  1. PHP和Java的联系,PHP和Java的功能
  2. java存储整数_关于数组:Java:存储大量整数的最佳数据类型是什么?
  3. UVA - 10603 Fill(BFS求最小值问题)
  4. mysql 存储过程 百万数据 innodb_详解mysql数据库一键查看锁信息(开启InnoDB监控)...
  5. “全能”选手—Django 1.10文档中文版Part1
  6. HLS实现点播和直播时,M3U8文件的不同
  7. tp5 使用PHPAnalysis提取关键字中文分词
  8. vmw6.5安装Freebsd8.1桌面gnome
  9. VB.net:VB编程语言/VB.net语言编程的简介、IDE安装、学习路线(几十项案例代码实现)之详细攻略
  10. 精易模块保存html文档,易模块文件不存在
  11. DOS windows PE三者有什么区别
  12. 微信好友只有昵称没有微信号_只知道昵称怎么查他的微信号
  13. SveletJs学习——运动动画
  14. Matlab 旋转坐标轴标记文本
  15. java一系列图片加载_RxJava系列文章(一) - 网络图片加载水印一般写法
  16. Chip类控件(Chip、InputChip、ChoiceChip、FilterChip、ActionChip)
  17. Windows系统删除保存在凭据管理器中的密码
  18. 2017衢州联赛第三题题解
  19. 手机端页面测试神器--Browsersync
  20. STM32学习之PWM输出

热门文章

  1. 《狂人日记》是中国第一部现代白话文小说
  2. 小米、百度、bigo 、滴滴 、快手等iOS 面试后的一次阶段性总结
  3. MTK 驱动开发---Vibrator
  4. 捐一个亿的是加多宝,不是王老吉!只喝加多宝,不喝王老吉!
  5. 主流邮箱的反垃圾邮件技术
  6. PHP微信公众号文章编辑排版工具源码+采集功能/附教程
  7. 用python识别图片上的数字_python 识别图片上的数字
  8. Android 多种投屏神器(Vysor,Total Control,scrcpy )
  9. 个人和企业拥有专利的25个好处!
  10. TFN DG15M 高抗干扰电缆故障测试仪评测