SentiLR: Linguistic Knowledge Enhanced Language Representation for Sentiment Analysis

SentiLR:用于情感分析的语言知识增强的语言表示

来源:https://arxiv.org/abs/1911.02493 清华团队

Introduction

虽然当前的预训练语言模型已经取得了很好的性能,但是它们的预训练任务(1.masked language model; 2.next sentence prediction )都忽视了语言知识。作者认为语言知识对于一些NLP任务非常重要,特别是情感分析任务。

在情感分析任务中,语言知识例如词性和单词级情感极性经常被用作外部特征。词性通过提高句法分析性能,有助于理解语篇的句法结构。单词级情感极性主要来自情感词典。

语言知识大致反映了单个单词对整个句子的情感的不同影响,有一些充当**“sentiment shifters”**的角色,例如,否定词不断地将情感转变为相反的极性,而程度词会改变文本的情感程度。

然而,句子的情感标签通常是由词语引起的多种情感变化而来的,而对于句子级情感标签和单词级的sentiment shifts之间的复杂关系的建模仍在探索中。

因此,我们的研究目标是充分利用语言知识来获得语言表示,从而建立高级标签(句子级的情感标签)和单词(指sentiment shifters)之间的联系,从而提高情感分析任务的性能。

作者提出一种新型的语言表示模型:“SentiLR”,它引入了单词级的语言知识,包括词性标注先验情感极性 (来源于SentiWordNet情感词典)。

设计了一个新的预训练任务:label-aware masked language model (LA-MLM)

  1. word knowledge recovering given the sentence-level label.

    即根据给定的句子级标签来预测被mask的位置上的词、词性、情感极性。

  2. sentence-level label prediction with linguistic knowledge enhanced context. 语言知识增强语境下的句子级语言预测。即同时预测句子级标签、masked单词及其它的语言知识(也就是词性、情感极性)。

这两个子任务旨在鼓励模型利用语言知识来建立 high-level 情感标签(也就是句子级的情感标签) 与 low-level sentiment shifts (改变句子情感极性的一些词,如否定词、程度词) 之前的联系。


Model

Task Definition and Model Overview

该模型首先从SentiWordNet中获取每个词对应词性标记的词级情感极性。

在预训练过程中,基于 label-aware masked language model 和 next sentence prediction 这两个任务对模型进行训练。

经过预训练之后,SentiLR可以对不同的情感分析任务(如句子级/方面级的情感分类任务)进行微调。

Linguistic Knowledge Acquisition

这个模块是通过词性标签从SentiWordNet词典中获取每个词的情感极性(得分)。

输入是 X=((x1,pos1),(x2,pos2),...,(xn,posn))X=((x_1,pos_1),(x_2,pos_2),...,(x_n,pos_n))X=((x1,pos1),(x2,pos2),...,(xn,posn)) ,其中 xix_ixi 是word,posipos_iposi 是词性标签。

假设对于元组 (xi,posi)(x_i,pos_i)(xi,posi) 我们可以找到m种不同的意思,用 (SNi(j),PosScorei(j),NegScorei(j))(SN_i^{(j)},PosScore_i^{(j)},NegScore_i^{(j)})(SNi(j),PosScorei(j),NegScorei(j))1⩽j⩽m1 \leqslant j \leqslant m1jm .

其中,SNSNSN 是不同意思的索引,PosScorePosScorePosScoreNegScoreNegScoreNegScore 分别是word的情感正向得分和负向得分。

由于我们不能准确的去匹配每个词在sequence中的意思,所以我们计算每个词的情感score根据求和平均的方法:
score(xi,posi)=∑j=1m1SNi(j)⋅(PosScorei(j)−NegScorei(j))score_{(x_i,pos_i)}=\sum_{j=1}^m \frac{1}{SN_i^{(j)}} \cdot (PosScore_i^{(j)}-NegScore_i^{(j)}) score(xi,posi)=j=1mSNi(j)1(PosScorei(j)NegScorei(j))

label(xi,posi)={Positivescore(xi,posi)>0Negativescore(xi,posi)<0Neutralscore(xi,posi)=0label_{(x_i,pos_i)}=\left\{\begin{aligned}Positive & score_{(x_i,pos_i)} > 0 \\Negative & score_{(x_i,pos_i)} < 0 \\Neutral & score_{(x_i,pos_i)} = 0\end{aligned}\right. label(xi,posi)=PositiveNegativeNeutralscore(xi,posi)>0score(xi,posi)<0score(xi,posi)=0

Pre-training Tasks

两个子任务:

  1. Label-aware masked language model (LA-MLM)
  2. Next sentence prediction (NSP)

NSP任务和BERT论文中是一致的。

LA-MLM任务是利用语言学知识去获取句子级情感标签与每个单词以及上下文依赖性之间的隐含关系

LA-MLM包含两个独立的子任务:

  • Sub-task#1 of label-aware masked language model:

Token Embedding 包含了original word embedding,part-of-speech embedding,word-level sentiment polarity embedding。

给定句子级的情感标签(如negative),我们的模型去预测word(good),part-of-speech tag (JJ) 和 word-level sentiment polarity (positive)。

  • Sub-task#2 of label-aware masked language model:

Sub-task#2的任务是去同时预测句子级的情感标签(negative)和被mask掉的位置上的词信息(word: good, part-of-speech tag: JJ, word-level senti-ment polarity: positive)。

由于两个子任务是独立的,我们经验性的给它们分配的预训练数据比例为4:1。

与BERT不同的是,对于masking probability,我们从设置为30%。只对正负情感词进行mask,提升masking probability的原因是情感词的多少影响整个句子的情感转移,通俗的说,就是被masking的情感词如果比较少的话,可能对于句子的情感并没有多大影响。

Fine-tuning Setting

(x1,x2,...,xn)(x_1,x_2,...,x_n)(x1,x2,...,xn) 表示要进行分类的 text sequence,(a1,a2,...,al)(a_1,a_2,...,a_l)(a1,a2,...,al) 表示 aspect term/aspect category sequence。


Experiment

Sentence-level Sentiment Classification

效果明显比BERT要好,跟XLNet不相上下吧。

Aspect-level Sentiment Classification

General Language Understanding Tasks (GLUE)

Ablation Study

Ablation study 即模型简化测试

顾名思义,就是去掉模型中的部分模块,然后看模型的性能是否发生变化。

SentiLR:Linguistic Knowledge Enhanced Language Representation for Sentiment Analysis 论文阅读笔记相关推荐

  1. Beta Distribution Guided Aspect-aware Graph for Aspect Category Sentiment Analysis论文阅读笔记(EMNLP2021)

    目录 标题翻译:基于Beta分布引导方面感知图的方面类别情感分析 原文链接:https://aclanthology.org/2021.emnlp-main.19.pdf 摘要: 1 引言 2 相关工 ...

  2. Discrete Opinion Tree Induction for Aspect-based Sentiment Analysis论文阅读笔记(ACL2022)

    目录 标题翻译:基于方面情感分析的离散意见树归纳 论文链接:https://aclanthology.org/2022.acl-long.145.pdf 摘要 1 引言 2 模型 2.1 基于意见树的 ...

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

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

  4. 《GRACE: Gradient Harmonized and Cascaded Labeling for Aspect-based Sentiment Analysis》阅读笔记

    GRACE 论文题目: <GRACE: Gradient Harmonized and Cascaded Labeling for Aspect-based Sentiment Analysis ...

  5. Towards Generative Aspect-Based Sentiment Analysis 论文阅读ACL2021

    Towards Generative Aspect-Based Sentiment Analysis 摘要 [ACL2021]基于方面的情感分析(ABSA)最近受到越来越多的关注. 大多数现有工作以区 ...

  6. Progressive Self-Supervised Attention Learning forAspect-Level Sentiment Analysis论文阅读

    Progressive Self-Supervised Attention Learning forAspect-Level Sentiment Analysis翻译及理解 1.本文针对神经网络在学习 ...

  7. ERNIE: Enhanced Language Representation with Informative Entities 论文研读

    1. 摘要   NLP表示模型如BERT的预训练模型能够在大量的纯文本语料中捕获丰富的语义信息,并且通过微调改进NLP任务的效果.然而,已存在的预训练语言模型很少考虑将知识图谱的结构化信息融入其中,从 ...

  8. RSGAN: Face Swapping and Editing using Face and Hair Representation in Latent Spaces论文阅读笔记

    论文原文地址:RSGAN: Face Swapping and Editing using Face and Hair Representation in Latent Spaces 本文和上一篇FS ...

  9. [论文阅读笔记17]A Survey on Knowledge Graph-Based Recommender Systems

    一,题目 TKDE 2020 A Survey on Knowledge Graph-Based Recommender Systems 综述:基于知识图谱的推荐系统 In IEEE Transact ...

  10. LET: Linguistic Knowledge Enhanced Graph Transformer for Chinese Short Text Matching学习笔记

    文章目录 1. 背景与相关技术 1.1 解决的问题与方法 1.2 HowNet 1.3 Word lattice graph 1.4 Graph attention networks 2. LET 2 ...

最新文章

  1. Hibernate 乐观锁和悲观锁
  2. C#中Encoding.Unicode与Encoding.UTF8的区别
  3. Tensorflow2.0版本 笔记
  4. 如何画架构图之C4模型画法
  5. jquery ajax POST/GET 请求至 ASP.NET WebAPI
  6. 【STM32】FreeRTOS列表应用示例
  7. python调用远程的python文件_python 实现调用远程接口
  8. 10、angular的全部api
  9. 算法时间复杂度分析专题一(帮助快速解题)
  10. 更改session bean的JNDI名称
  11. Qt6安装教程——国内源
  12. linux USB摄像头 V4L2工具调试摄像头
  13. PS 色彩平衡之算法公式原理详解及 Python 实现
  14. 在Centos7中安装英伟达显卡驱动
  15. Antd 修改 Table 悬浮颜色、表头背景色
  16. [文献阅读]—一篇不错的低资源机器翻译综述(Neural Machine Translation for Low-Resource Languages: A Survey)
  17. SAP_FI_FI包含哪些部分
  18. Pcap4J抓包基本使用方法
  19. linux中安装easy_install(setuptools)
  20. 月薪集中在8k-17k、厌倦大小周、近三成的人没有跳槽过,2021-2022中国开发者调查报告发布

热门文章

  1. db2 windows linux,Migrate DB2 v9 on windows to DB2 v10.5 on linux
  2. 软件及其公司篇--项目管理(八)
  3. 吴恩达新课快来了!万字博客回顾机器学习算法起源
  4. RPL(9):RFC6550翻译(9)---安全机制
  5. Tourists【广义圆方树+树链剖分+方点的特别优化】
  6. 【NLP】自然语言处理的语料库与词库
  7. 课程学习与自步学习Curriculum learning and self-paced learning:极简入门
  8. 苹果手机在升级系统时一直显示无服务器,苹果手机一直显示检测更新,怎么办?...
  9. 用WinRAR分割文件
  10. PostgreSQL:“more than one owned sequence found“异常问题解决