SKEP模型

SKEP模型1.SKEP是百度研究团队提出的基于情感知识增强的情感预训练算法,此算法采用无监督方法自动挖掘情感知识,然后利用情感知识构建预训练目标,从而让机器学会理解情感语义。SKEP为各类情感分析任务提供统一且强大的情感语义表示。SKEP采用RoBERTa作为基线模型。RoBERTa相对于BERT的改进之处如

大家好,欢迎来到IT知识分享网。

1.SKEP是百度研究团队提出的基于情感知识增强的情感预训练算法,此算法采用无监督方法自动挖掘情感知识,然后利用情感知识构建预训练目标,从而让机器学会理解情感语义。SKEP为各类情感分析任务提供统一且强大的情感语义表示。SKEP采用RoBERTa作为基线模型。RoBERTa相对于BERT的改进之处如下:

  (1)去除了BERT中的NSP任务

  (2)增加了batch size的大小,并且增加了训练的数据

  (3)采用了动态mask的方式,在Bert中进行Mask是采用静态编码的方式,在进行预训练任务之前将所有向量都进行了掩码处理,之后送入Bert模型进行预训练,每次epoch mask的方式都是相同的,但是在RoBert中是动态编码的方式,把训练的数据复制10份,然后一句话就会有10种不同的mask方法,在训练过程中序列的mask方式是会变化的,就实现了动态mask的方式。

  (4)BERT使用的是字符级编码方式,但是RoBERTa使用的是byte-level text encoding   见BEP概述

        (5)在更长的序列上进行训练,不会对序列进行截断。

tokenizers小结(https://zhuanlan.zhihu.com/p/360290118)

2.模型分析

SKEP模型

 

 

SKEP模型包含两部分,(1)情感掩盖,通过无监督的方式自动挖掘情感知识来识别输入句子中的情感词,情感词的极性和方面情感对,然后掩盖这些情感词和方面情感对生成一个损坏的版本,RoBERTa模型是随机掩盖的,SKEP模型掩盖的是之前挖掘的情感知识,由此可见,SKEP就是对RoBERTa模型的掩盖机制进行了更改。(2)情感预训练的目标是从损坏的序列中恢复这些情感词,情感词极性和方面情感对。通过x9预测情感词,通过x6x9来预测情感词极性,通过x1来预测方面情感对,值得注意的是x9既预测了情感词又预测了情感词极性,但是x6只预测了情感词的极性,但是没有预测情感词,这是因为x1预测的方面情感对已经包含了fast这个情感词。

情感知识库

通过无监督方式挖掘的情感知识构成了情感知识库,文中只提到了挖掘的情感知识库包含一组具有极性的情感词和一组方面情感对,并没有给出情感知识库的具体形式。

3.SKEP在BERT的预训练过程中加入了情感知识,这样更有利于情感分类任务。

通用语言理解评估基准(GLUE)是用于评估和分析多种已有自然语言理解任务的模型性能的工具。模型基于在所有任务的平均准确率进行评估。

SOTA全称是state of the art,是指在特定任务中目前表现最好的方法或模型。

SKEP通过PMI方法从句子中自动挖掘情感知识,情感知识包括情感词、词的极性和方面-情感对,其中方面-情感对的提取是通过简单的约束完成的(情感词和它所描述的名词之间的距离不会超过3).

情感掩蔽(删除这些识别出来的情感信息,产生一个损坏的版本),屏蔽序列的过程按照如下过程:(1)最多随机选择两个方面-情感对被mask (2)对于没有被屏蔽的情感词,随机选择其中的一部分,将它的标记替换成mask,被屏蔽的token总数不超过10%。(3)如果第二步中情感词的token比例不足10%,那么就随机去mask其他的字。

情感预训练

情感预训练的目标优化函数 [公式] (Sentiment Pre-training Objectives)有3个目标优化函数组成,分别为Sentiment Word Objectives( [公式] )、Word Polarity Objectives( [公式] )和Aspect-sentiment Pair Objectives( [公式] )。

SKEP模型

 SKEP模型

Sentiment Word Objectives( [公式] )情感词预测,恢复被mask的情感词标记,它的目标是将在整个词汇表中生成的规范化向量中原始情感词的概率最大化。情感词目标函数中X指的是输入的序列的向量表示,里面的一个xi是序列里面一个词的向量表示,将这个xi送入预训练模型,就会得到一个i的向量,i被送入一个输出softmax层,该层生成一个基于整个词汇表的归一化概率向量i 。情感词预测的目标Lsw是最大化原始情感词xi的概率,Lsw是目标函数,如果第i个位置是输入序列掩盖的词,则mi=1,否则就为0。yi是原始情感词xi基于整个词汇表的one-hot表示。

Word Polarity Objectives( [公式] )词极性预测 对于被mask的情感词,预测它的极性。

SKEP模型

 

上图是方面情感对的目标函数,Aspect-sentiment Pair Objectives( [公式] )方面-情感对预测 是为了捕捉方面和情感之间的关系,成对的词之间并不相互排斥,但是在BERT里面,每个词是被独立预测的,并不存在依存关系。在方面-情感对预测中使用的是多标签分类,通过[CLS]标记来预测方面-情感对。

通过多标签分类对方面情感对进行预测,使用预训练模型输出的[CLS]向量1预测方面情感对。因为进行情感掩盖的时候序列会掩盖多个方面情感对,所以经过sigmoid激活函数之后会有多个向量a输出。A是输入序列被掩盖的方面情感对的数量,a是经过sigmoid标准化的单词概率,ya是目标方面情感对的稀疏表示,ya中的每一个元素对应词汇表中的一个token,如果目标方面情感对包含相应的token,则等于1.因为方面情感对的预测是多标签分类,所以ya会有多个元素等于1.

 

多标签分类是在网络的最后一层,针对每一个标签,使用一个全连接层,经过sigmoid激活函数,然后在每一个标签上就是一个二分类问题。

多标签分类任务就是将一个模型输出的向量分到不同的类别中,比如一个L码的短袖,他就属于两个类别,尺码:L码,类型:夏装。

利用 BERT 模型解决多标签分类问题时,其输入与普通单标签分类问题一致,得到其 embedding 表示之后(也就是 BERT 输出层的 embedding),有几个 label 就连接到几个全连接层(也可以称为 projection layer),然后再分别接上 softmax 分类层,这样的话会得到 ,最后再将所有的 loss 相加起来即可。这种做法就相当于将 n 个分类模型的特征提取层参数共享,得到一个共享的表示(其维度可以视任务而定,由于是多标签分类任务,因此其维度可以适当增大一些),最后再做多标签分类任务。

4.对于模型的分析

(1)情感知识的作用 通过对目标的比较,我们认为情绪知识是有帮助的,且知识的多样性有利于提高绩效。这也鼓励我们在未来使用更多类型的知识,使用更好的方法。

 

(2)多标签优化的效果  提出了多标签分类方法来处理方面-情感对中的依赖关系。在方面级分类和意见角色标注方面,多标签分类效率较高,最多可提高0.6个点。这表明多标签分类确实更好地捕捉了方面和情感之间的依赖关系,也说明了处理这种依赖关系的必要性。

 

(3)在方面-情感对预测中有两种方式,一种是通过[CLS]来进行对句子的预测,这种方法成为sent-vector方法。另一种是将两个单词的最终向量 串联成一对,成为Pair-vector方法,这两种方法的性能差不多,但是使用单个向量进行预测效率更高,因此在SKEP模型中采用了sent-vector方法进行了方面-情感对的预测。

 

5.数据集介绍

(1)SST-2

GLUE的全称是General Language Understanding Evaluation,在2018年,由纽约大学、华盛顿大学以及DeepMind的研究者们共同提出。这个基准由一系列自然语言理解数据集/任务组成,最主要的目标是鼓励开发出能够在任务之间共享通用的语言知识的模型。SKEP模型在GLUE中的SST-2数据集上验证了在句子级情感分类的有效性,SST-2(The Stanford Sentiment Treebank,斯坦福情感树库),单句子分类任务,包含电影评论中的句子和它们情感的人类注释。这项任务是给定句子的情感,类别分为两类正面情感(positive,样本标签对应为1)和负面情感(negative,样本标签对应为0),并且只用句子级别的标签。也就是,本任务也是一个二分类任务,针对句子级别,分为正面和负面情感,数据集链接:https://gluebenchmark.com/tasks 数据集形式如下:

SKEP模型

 

(2)Sem-L

Sem-L数据集是英文评价对象级情感分类数据集,主要由描述笔记本电脑类别某个属性的商品用户评论构成。数据集链接:https://alt.qcri.org/semeval2014/task4/index.php?id=data-and-tools 数据集形式如下:

SKEP模型

 

(3)MPQA

MPQA数据集是英文互联网评论数据集,数据集使用例子如下,为了方便模型使用需要将文本进行分词处理,标签BIO标记评论内容、评论实体和实体内容表达主体。B_H I_H代表实体内容表达主体,B_T I_T代表评论实体,B_DS I_DS代表评论内容。数据集链接:https://mpqa.cs.pitt.edu/corpora/mpqa_corpus/mpqa_corpus_2_0/ 数据集形式如下:

SKEP模型

 

 

 

 

 

 

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/32040.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信