Radical-Based Hierarchical Embeddings for Chinese Sentiment Analysis at Sentence Level

基于部首的句子级汉语情感分析层次化嵌入

摘要

中文情感分析中的文本表示通常在单词或字符级别工作。在本文中,我们证明了部首级处理可以极大地提高情感分类性能。特别地,我们提出了两种基于中文部首的层次嵌入。嵌入不仅包含部首和字符级别的语义,还包含情感信息。在对嵌入的评估中,我们在四个不同的数据集上进行句子级的中文情感分析。实验结果验证了我们的假设,即词根级语义和情感可以有助于句子级情感分类,并证明了我们的嵌入优于经典文本特征和流行的单词和字符嵌入。

1. 介绍

对于每一项自然语言处理任务,文本表示总是第一步。在英语中,单词是由空格分割的,它们自然被作为文本表示中的基本语素。然后,基于分布式假设,单词嵌入诞生了。

与英语不同,英语的基本语素是字符的组合,如前缀、单词等。,汉语的基本语素是部首,是汉字的(图形)成分。每个汉字最多可以包含五个部首。字符内的部首有不同的相对位置。例如,它可以是左右的(“蛤”,“秒”),从上到下的(“岗”,“孬”,“国”,“问”)等。

它们存在的意义不仅在于装饰,还在于功能。部首有两个主要作用:语音和意义。由于这项工作的目的是情感预测,我们对后一种功能更感兴趣。例如,部首“疒”带有疾病的含义。任何含有这种偏旁部首的汉字都与疾病有关,因此倾向于表达负面情绪,例如“病”,“疯”,“瘫”等。为了利用部首之间的语义和情感信息,我们决定将部首映射到嵌入(低维的数字表示)。

我们之所以选择嵌入而不是ngram、POS等经典文本特征,是因为嵌入方法基于分布假设,极大地挖掘了语义,依赖于标记序列。相应地,偏旁可能不能携带足够的语义和情感信息。只有当它们被置于一定的顺序时,它们与情感的联系才会开始显现(Poria et al. 2017)。

据我们所知,在这项工作之前,还没有人提出过特定情感的部首嵌入。我们首先训练一个名为 $R_{semantic}$的纯部首嵌入,希望能捕捉部首之间的语义。然后,我们训练一个情感特定的部首嵌入,并将其与$R_{semanticto}$整合,形成一个名为$R_{seminal}$的部首嵌入,它编码语义和情感信息(Cambria等人,2016;茯苓等人,2016年)。

在此基础上,我们将得到的两个部首嵌入与汉字嵌入相结合,形成了基于部首的层次嵌入,分别称为$\mathbf{H}{semantic},\mathbf{H}{sentic}$。

论文的其余部分组织如下:第一部分说明了一般的单词嵌入方法和中文部首嵌入;第二部分详细分析了汉字和部首的分解;第三部分介绍了我们的分层嵌入模型;第四部分对所提出的方法进行了实验评估;最后,第五部分对论文进行了总结,并提出了一些未来的改进建议。

2. 相关工作

2.1 通用嵌入方法

one-hot表示是自然语言处理中最初的数字单词表示方法。然而,它通常会导致高维和稀疏的问题。为了解决这个问题,分布式表示或单词嵌入被提出(图里安,拉蒂诺夫,和本吉奥2010)。单词嵌入是一种利用神经网络将单词映射到实数的低维向量的表示。其核心思想是基于分布假设来建模如何表示上下文词以及上下文词和目标词之间的关系。因此,语言模型是一个自然的解决方案。本吉奥等人(2003)在2001年引入了神经网络语言模型(NNLM)。

他们没有用计数来建立ngram语言模型,而是建立了一个神经网络。单词嵌入是建立语言模型的副产品。在2007年,Mnih和Hinton提出了对数双线性语言模型(LBL) (Mnih和Hinton 2007),该模型建立在NNLM的基础上,后来升级为层次LBL (HLBL) (Mnih和Hinton 2009)和逆向量LBL (ivLBL) (Mnih和Kavukcuoglu 2013)。Mikolov et al. (Mikolov et al. 2010)没有像上面那样建模ngram模型,而是提出了一种基于递归神经网络的模型,直接估计给定上下文下目标词出现的概率。

自从2008年引入C&W模型(Collobert and Weston 2008)以来,人们开始设计模型,其目标不再是语言模型,而是单词本身的嵌入。C&W将目标单词放在输入层,只输出一个表示输入单词序列的可能性的节点。2013年晚些时候,Mikolov等人(Mikolov et al. 2013a)引入了连续词袋模型(CBOW),该模型将上下文词放在输入层,目标词放在输出层,以及Skipgram模型,该模型在CBOW中交换输入和输出。他们还提出了可以大大加快训练速度的负采样。

2.2 中文部首嵌入

(Chen等人.2015)开始将汉字拆分成汉字,并提出了一种字符增强的单词嵌入模型(CWE)。(Sun等人.2014年)开始将汉字分解为部首,并开发了增强部首的汉字嵌入。然而,他们只从每个字符中选择了一个部首来增强嵌入性。(史等人.2015)开始训练用于短文本分类、中文分词和网络搜索排名的纯部首嵌入。Yen等人推广了Mikolov等人(Mikolov et al.。2013B)通过引入多粒度的中文单词嵌入。

然而,上述嵌入都没有考虑纳入情感信息,并将偏旁嵌入应用于情感分类任务(Cambria 2016)。为了弥补这一差距,本文开发了专门用于情感分析的基于部首的层次化中文嵌入

3. 汉字的分解

中国的书面语言可以追溯到公元前1200-1050年的商朝。它起源于甲骨文,这是刻在“龙骨”上的标志性符号。从此是中国书面语发展的第一个阶段,中国书面语完全是象形文字。然而,中国不同的地区保持着一套不同的文字系统。

第二个阶段始于秦朝的统一,篆书是象形文字的抽象,从此统治了整个帝国。这一时期的另一个明显特征是,新的汉字是由现存的和进化的汉字组合而成的。在外来文化、科学技术发展和社会生活演变的综合影响下,产生了大量的汉字。

这些文字的一个特点是它们不再是象形文字,但它们是可分解的。每个分解的元素(或根)都具有特定的功能。例如,“声旁”标记这个字的发音,“形旁”象征这个字的意思。更多细节将在下一节中讨论。

第三个阶段发生在上个世纪中叶,当时中央政府开始提倡简体中文。通过减少字符中的某些笔画,旧字符得到了简化。从那以后,简体字在中国大陆占据了主导地位。只有香港、台湾和澳门保留繁体汉字。

3.1 中文部首

由于上述讨论的第二阶段,所有现代汉字都可以分解为部首。部首是字符的图形组件。汉字中的一些部首起到了音素的作用。例如,部首‘丙’出现在字符‘柄(Handle)’的右半部分,它象征着这个字符的发音。人们有时甚至可以通过辨认汉字中的某些部首来正确预测他或她不知道的汉字的发音。

汉字中的其他一些部首就像语素一样,承载着汉字的语义。例如,‘木’本身既是一个字符,又是一个部首。意思是木头。“林”由两个“木”组成,意思是丛林。字符’森’,由三个’木’组成,表示森林。在另一个例子中,部首 ‘父’是词“父亲”的正式形式。它出现在 ‘爸’的顶部,这个字符确切地表示父亲,但不太正式,就像英语中的“dad”。

此外,一个字符的含义可以从其偏旁的组合中得出。(师等2015)给出的一个很好的例子是字符’朝’。这个字由 ‘十’,‘日’,‘十’,‘月’四个部首组成。这四个部首是由象形文字演变而来的。‘十’ 代表草;‘日’代表太阳;‘月’代表越来。这四个词的融合意味着太阳取代了草地上的月亮,而草地上的月亮本质上就是“早晨”这个词。毫不奇怪,这个字‘朝’的意思确实是早晨。

这种情况可能会持续下去。如果部首‘氵’(意为水)附在字‘朝’的左边,那么它就是另一个字‘潮’。从字面上看,这个字的意思是早上水上来了。事实上,这个“潮”的意思是潮汐,与字面意思相符。

总而言之,部首比字符本身包含更多的信息。文字层面的研究只能研究文字所表达的语义。然而,更深层的语义信息和线索可以在部首层次的分析中找到(Peng, Cambria, and Hussain 2017)。

这促使我们应用深度学习技术来提取这些信息。在此之前,正如我们在相关作品中所讨论的,大部分作品都是用英语写的。由于英语和汉语在很多方面都有很大的不同,特别是在分解方面,我们在表1中进行了比较。

image-20210623200752215

从表1可以看出,字符水平是英语中最低的构成水平。而汉语中对应的层次是比汉字低一级的,即词根层次。与英语不同,汉语的语义隐藏在每个字符中。其次,汉语词可以是单字也可以是多字。而且,汉语句子中词之间没有空格。

以上所有观察表明,正常的英语单词嵌入不能直接应用于汉语。像分词这样会引入错误的额外处理需要首先进行。

此外,如果一个新单词甚至一个新字符超出了词汇表(OOV),正常的单词级或字符级除了给出一个随机向量之外没有合理的解决方案。为了解决上述问题,同时提取汉字内部的语义,提出了一种基于部首的层次化汉字嵌入方法。

4. 层次汉语嵌入

在这一节中,我们首先介绍了用于训练分层嵌入的深度神经网络。然后,我们讨论我们的部首嵌入。最后,给出了分层嵌入模型。

4.1 Skip-gram 模型

我们采用了Mikolov等人(2013a)提出的Skip-gram神经嵌入模型和尹等人(2016)提出的负采样优化技术。在这一部分中,我们对培训目标和模式进行了简要的总结。跳过语法模型可以理解为一个词的上下文版本CBOW模型(Mikolov等人,2013A)在C个面板上工作,其中C是目标词的上下文词数。与CBOW模式相反,目标词在输入层,而语境词在输出层。通过生成最可能的上下文词,可以训练权重矩阵并提取嵌入向量。

具体地说,它是一个单隐层神经网络(Rong 2014)。对于每个输入单词,用输入向量 $V_{wi}$ 表示。隐藏层定义为:
$$
h = V _ { \mathrm { wi } } ^ { \mathrm { T } }
$$
在输出层,输出C个多项式分布,假设每个输出用隐藏输出矩阵计算如下:
$$
p \left( w _ { c , j } = w _ { O , c } \mid w _ { i } \right) = y _ { c , j } = \frac { \exp \left( u _ { c , j } \right) } { \sum _ { j ^ { \prime } = 1 } ^ { V } \exp \left( u _ { j ^ { \prime } } \right) }
$$
此外,目标函数是最大化以下公式:
$$
\sum _ { ( w , c ) \in \mathbb { D } } \sum _ { w _ { j } \in c } \log \mathrm { P } \left( w \mid w _ { j } \right)
$$
$w_j$是背景词$c$中的第$j$个单词,根据给定词$w$。

4.2 基于部首的嵌入

传统的部首研究如(孙等2014)只从每个汉字中提取一个部首来改进汉字的嵌入。此外,据我们所知,还没有人提出过针对特定情感的中文部首嵌入。因此,我们为中文情感分析提出了以下两种部首的嵌入。

受汉字可以分解成部首,这些部首带有语义的启发,我们直接将汉字分解成部首,并按从左到右的顺序连接起来。我们把偏旁部首视为文本的基本单位。具体来说,对于任何句子,我们将每个字符分解成它的部首,并将这些来自不同字符的部首连接成一个新的部首字符串。然后我们对语料库中的所有句子进行了上述预处理。最后,使用skip-gram模型在该部首语料库上建立部首级嵌入模型。

我们将这种类型的部首嵌入称为语义部首嵌入($R_{semantic}$),因为从这种类型的语料库中提取的主要信息是部首之间的语义。为了提取部首之间的情感信息,我们提出了第二种类型的部首嵌入,即情感部首嵌入($R_{sentic}$)。

在研究了偏旁部首之后,我们发现偏旁部首本身并没有传递太多的情感信息。携带情感信息的是不同部首的顺序或组合。因此,我们利用现有的情感词汇作为我们研究序列的资源。和以前一样,我们从两个不同的中文情感词汇集中收集所有的情感词汇,分别是知网(董和董,2006)和NTUSD(,梁和陈,2006),并把它们分成偏旁部首。然后我们采用$Sikp-gram$模型来学习与情感相关的部首嵌入。

也是使用情感词典

由于我们希望部首嵌入同时具有语义信息和情感信息,因此我们对前两个嵌入进行了融合。融合公式如下:
$$
R _ { \text {sentic } } = ( 1 - \omega ) \cdot R _ { \text {semantic } } + \omega \cdot R _ { \text {sentiment } }
$$
其中 $R_{sentic}$ 是整合了语义和情感信息的结果部首嵌入;$R_{semantic}$是语义嵌入;$w$ 是融合权重。如果 $w$ 是0,则 $R_sentic$ 是完全的语义嵌入。如果 $w$ 是1,则 $R_{sentic}$ 是纯的情感嵌入。

为了找到最佳的融合参数,我们对四个真实中文情感数据集的分离开发子集进行了测试,分别是:Chn2000、It168、中国树库(Li et al. 2014)和微博数据集(详见下一节)。我们训练了一个卷积神经网络(CNN)来分类数据集中句子的情感极性。我们使用的特征是sentic部首嵌入,但是我们在不同的融合参数值上应用这些特征。

图1显示了不同融合值在四个数据集上的分类精度。正如图1中的启发式算法所建议的那样,我们选择值0.7的融合参数,性能最好。

image-20210623204218141

4.3 层次嵌入

分层嵌入基于这样的假设,即不同级别的嵌入将捕获不同级别的语义。根据表1中的汉语层次结构,我们已经在偏旁层面对语义和情感进行了探讨。下一个更高的级别是字符级,然后是词级(多字符词)。

然而,我们只选择字符级嵌入($C_{semantic}$)来集成到我们的分层模型中,因为字符是自然地被Unicode分割的(不需要预处理或分割)。现有的中文分词器虽然可以达到一定的准确率,但是仍然会引入分词错误,从而影响分词的性能。在分层模型中,我们还使用Skip-gram模型来训练独立的汉字嵌入。

然后,我们将字符嵌入与语义部首嵌入($R_{semantic}$)和情感部首嵌入($R_{sentic}$)融合,分别形成两种层次嵌入:$H_{semanitc}$和$H_{sentic}$。融合公式与部首嵌入中的公式相同,只是根据我们的开发测试,融合参数值不同,为0.5。图2描绘了分层模型的图解

image-20210623205120032

5. 实验评估

在这一部分中,我们对我们提出的方法在中文句子级情感分类任务中进行了评估。首先,我们介绍了预先评估的数据集。然后,我们演示了实验设置。最后,我们给出了实验结果并对其进行了解释。

5.1 数据集

我们的实验中使用了四个句子级别的中文情感数据集。第一个是微博数据集(Weibo),这是来自NLP&CC的中文微博的集合,大约有2000个博客,无论是正面的还是负面的类别。第二个数据集是由Li等人介绍的中文树库(CTB)。2014年)。对于每个情感类别,我们将它们的情感值映射到极性后,得到了19000多个句子。第三个数据集Chn2000包含大约2000条来自客户的酒店评论。最后一个数据集IT168有大约1000条数字产品评论。所有上述数据集在句子层面上都被标记为肯定或否定。为了防止过度拟合,我们对所有的实验进行了5次交叉验证。

5.2 实验设置

由于在分类任务中通常使用嵌入向量作为特征,因此我们将所提出的嵌入与三种基线特征:字符二元语法、单词嵌入和字符嵌入进行了比较。在选择分类模型时,我们利用了最先进的机器学习工具箱scikit-learn (Pedregosa,Varoquaux,and et al. 2011)。

在我们的实验中应用了四个经典的机器学习分类器:线性支持向量机(LSVC)、逻辑回归、带高斯核的朴素贝叶斯分类器和多层感知器(MLP)分类器。在评估这些经典机器学习分类器上的嵌入特征时,给定句子单元的特定粒度,计算平均嵌入向量来表示每个句子。例如,如果一个句子被分解成一串部首,那么这个句子的部首嵌入向量就是其组成部分部首嵌入的算术平均值(平均值)。此外,我们也以(Kim 2014)中提出的相同方式应用CNN,只是我们将嵌入向量维数降低到128。

5.3 结果和讨论

表2在四个不同的数据集上使用五种分类模型将二元语法特征与语义部首嵌入、情感部首嵌入、语义层次嵌入和情感层次嵌入进行了比较。

image-20210623205904838

类似地,表3还将提出的嵌入特性与word2vec和character2vec特性进行了比较。

image-20210623210317649

在所有四个数据集中,我们提出的与CNN分类器配合使用的特征取得了最好的性能。在微博数据集上,Sentic分层嵌入的性能略好于character2vec,改善幅度不到1%。

然而,在ctb和chn2000数据集中,semantic层次比三个基线特征高出2∼6%。

在IT168数据集中,sentic层次嵌入仅次于MLP模型中的二元语法特征。

这一结果并不令人惊讶,因为二元语法特征可以理解为大小为2的滑动窗口。使用多层感知器分类器,其性能可以与CNN分类器相当。尽管如此,与CNN分类器一起工作的其他三个提出的特征击败了使用任何分类器的所有基线特征。除了上述观察,我们还得到了以下分析。

首先,深度学习分类器在嵌入特征方面效果最好。当应用于经典分类器时,所有嵌入特征的性能都会急剧下降。然而,即使我们在经典机器学习分类器中提出的特征的性能与CNN相比有了很大的下降,它们仍然可以与其他基线特征平起平坐,甚至超过其他基线特征。此外,提出的特征的性能从未进行过微调。在未来的微调之后,可以预期更好的性能。

其次,所提出的嵌入特征确实揭示了能够促进句子级情感分析的某些信息。虽然我们不确定额外信息的确切位置,因为我们提出的四个嵌入特征的性能不稳定(没有一个特征在所有四个数据集上获得最佳性能),但我们证明了部首级嵌入有助于中文情感分析。

6. 总结

在这篇文章中,我们提出了专门为情感分析设计的基于中文部首的分层嵌入。介绍了四种基于部首的嵌入:部首语义嵌入、部首情感嵌入、层次语义嵌入和层次情感嵌入。通过在四个中文数据集上进行句子级情感分类实验,我们证明了所提出的嵌入方法优于现有的文本和嵌入特征。最重要的是,我们的研究提出了第一个证据,即中文部首级和层级级嵌入可以改善中文情感分析。

同时,本文还提出了今后工作的几个方向。首先,由于本文只在特征层对不同的嵌入进行了融合:一种可能的改进方法是在模型层进行融合,将不同嵌入的分类结果进行融合。其次,我们想对中文的部首进行更深层次的分析。在本文中,我们把汉字中的每个部首都视为同等重要,这是不理想的。由于同一字符中的部首具有不同的功能,从而导致对情绪的贡献不同,因此每个字符内的加权部首分析有望进一步提高性能。

Radical-Based Hierarchical Embeddings for Chinese Sentiment Analysis at Sentence Level

http://example.com/2021/06/23/RBHE/

作者

bd160jbgm

发布于

2021-06-23

更新于

2021-06-23

许可协议