基于意象的诗词情感分析研究

2022-08-20 09:20付朝帅吴亚东张贵宇
现代计算机 2022年12期
关键词:向量注意力意象

付朝帅,李 攀,吴亚东,张贵宇,高 婧

(1.四川轻化工大学自动化与信息工程学院,宜宾 644000;2.四川省大数据可视分析工程技术实验室,宜宾 644000;3.四川轻化工大学计算机科学与工程学院,宜宾 644000;4.四川轻化工大学人工智能四川省重点实验室,宜宾 644000)

0 引言

近年来,我国积极推进、加强文化大数据体系建设,2019年8月科技部、中宣部等六部委在《关于促进文化和科技深度融合的指导意见》中提出加强文化大数据体系建设;2020年5月中宣部文改办下发了《关于做好国家文化大数据体系建设工作通知》。诗词是中国文学史上的璀璨明珠,在弘扬文化自信的时代背景下,对诗词文本进行细粒度、语义化、大规模分析的需求日益迫切。

诗词作为中国特有的文学体裁,它是人们表达情感最丰富最集中的文本,具有言辞简练、韵律严格、语义关系密切等特点。这些特点导致其情感分析存在两个难点:①诗词的单句字数较少,情感特征不明显;②诗词多带有组合式情感,这就需要在分析过程中必须考虑情感特征间的相对关系。

意象作为诗词的重要单位,是诗人通过客观事物展现主观情感的媒介。同是一轮明月,“行宫见月伤心色,夜雨闻铃肠断声”表现出了唐玄宗和杨玉环的悲伤哀婉,“但愿人长久千里共婵娟”却寄托着美好的祝愿。同是相思之情,诗人或在大雁的背影中寄托,或在月色下映衬,亦能在孤帆中发现。只有将情感渗入到意象中,才能更好地体会诗中情感。因此,研究诗词中意象与情感的关系有利于把握诗歌的内容,领会诗歌的主旨,感知诗人的情感,从而弘扬中国古诗词文化,增强文化自信。

目前文本情感分析的研究方法主要分为基于情感词典匹配的方法和基于机器学习的方法。基于情感词典的分析方法本质是构建规则对文本情感进行对照判别,如张玮等将诗词文本向量化后与“喜怒哀乐”四个字求相似度得到情感极性;孔雪莹利用字向量模型,根据诗词中的语气词与情绪词语的关联程度判别情感极性。这种情感分析方法难以识别隐晦情感,不适用于语言精练的诗词文本。基于机器学习的情感分析方法本质是依赖神经网络的学习能力自动判断文本情感,如李晖等针对不同格律的诗词分别构建相应的胶囊网络进行情感分析。吴斌等基于频繁词扩展了诗词特征向量,再通过迁移学习方式建立三个分类器,投票得出最后的情感极性。这种方法对诗词文本的情感识别效果有一定提升作用,但忽略了意象这类细粒度情感特征。

针对意象与诗词情感间的关系,现有的研究方法多从文学鉴赏的角度去分析,过度依赖专家知识和人工标注,未见大规模的语料自动处理和数据分析。为此,本文提出将方面级情感分析技术应用到诗词情感分析领域。方面级情感分析属于情感分析的一种,目的是识别目标中给出明确方面的情感信息。例如王维《送元二使安西》:“渭城朝雨浥轻尘,客舍青青柳色新。劝君更尽一杯酒,西出阳关无故人。”可以将这首诗中出现的两个意象视为两个意象方面词,即“柳色”和“故人”,当方面词为“柳色”时,诗词的情感极性为积极;当方面词为“故人”时,情感极性为消极。

与分析文档和句子情感的任务相比,方面情感分析任务粒度更细,更有挑战性。目前通过深度学习方法赋予模型细粒度的情感分析能力成为方面级情感分析的主流方式。为使深度学习模型能更好地利用有效语义特征,不少学者在情感分析任务中加入了注意力机制。肖 宇 晗 等将AOA模 型(Attention-Over-Attention)应用到方面情感分析任务中,有效提取指定方面词的情感特征,增强了文本与方面词的信息交互。Ma等采用了IAN模型(Interactive Attention Networks)进行情感分析,以交互式注意力机制计算上下文与方面词的注意力得分。Tang等将MemNet网络(Memory Network)应用到方面情感分析任务中,采用具有外部记忆的注意力机制来捕捉与给定目标方面相关的上下文信息。薛福亮等采用了ATAE-LSTM模型(Attention-based LSTM with Aspect Embedding)进行情感分析,用LSTM(Long Short-Term Memory)对目标句和方面词进行合并编码,采用注意力机制来获取给定方面词的目标句的特征向量表示。

近些年,利用预训练语言模型来增强模型的语义表达能力成为方面级情感分析任务的研究 热 点。随 着BERT(Bidirectional Encoder Representation from Transformers)的 出 现,由于其能得到比Word2vec、glove等浅层词嵌入更好的语义表达,越来越多的情感分析任务选择其作为句子的预训练编码模型。罗俊等将方面级情感分析任务转化成句子分类问题,用BERT训练模型对输入的特征向量进行微调,取编码后的[CLS]向量作为情感分类特征,提高了模型对情感分析的准确性。

为了能准确地自动判别诗词在不同意象下的情感,本文在前人已有研究的启发下,将方面级情感分析技术应用到诗词情感分析领域,通过对比实验的方法试图从五个主流方面级情感分析模型中找出适合分析诗词意象级情感的模型。具体而言,本文完成了以下任务:

(1)将中国古诗词数据库中的诗词作为数据源,并从中提取出诗词中的意象方面词。

(2)采用BERT预训练模型获取诗词的初始化向量表示,并分别输入到五个主流方面级情感分析模型中获取情感分类特征。

(3)对比分析了情感分类效果与迭代次数、注意力的层数、LSTM编码模型、交互注意力机制的关系,并对各模型的注意力权重进行了可视化。

1 意象方面级情感分析方法

1.1 BERT预训练模型

BERT是一个双向语言模型,它将预训练模型和下游任务模型结合在一起,充分考虑了文本的上下关系,具有良好的语义多样性,而且它本身就支持文本分类任务,适合解决情感分析问题,其结构如图1所示。其中,,…,E 表示模型的输入向量,,,…,T 表示模型的输出向量。

图1 BERT模型

BERT在预训练方法上使用了掩码机制和预测下一段文本机制,来获得词与上下文语义。掩码(Masking)机制是指随机选15%的词进行替换操作,这其中有80%的词被直接替换成[MASK]标签,10%的词替换成任意单词,10%的词保持不变,让模型基于上下文预测被掩盖的单词含义。预测下一段文本机制是指BERT的输入一般是给定两段文本,用来判断它们是否具有上下文关系。简而言之,BERT能通过字词替换,或者通过引导模型理解两个输入句子之间的关系,从而找到一些线索能更准确地表示目标词汇,对于诗词这种语言精练的文本,BERT很适合解决其情感分析问题。

本文将诗词文本作为BERT的输入,以“月有阴晴圆缺”为例,其输入表示如图2所示。该输入由单词嵌入(Token Embeddings)、分段嵌入(Segment Embeddings)和位置嵌入(Position Embeddings)三部分叠加起来表示。其中起始单词嵌入为E,分隔符为E,结尾单词嵌入为E;分段嵌入是给、两段文本中的单词分配不同的编码以此区分;位置嵌入是人为设定的序列位置向量。

图2 BERT输入表示

BERT采用双向Transformer编码器作为特征提取器,可以同时接收两个方向的文本输入,其结构如图3所示。Transformer Encoder完全是以多头注意力机制作为基础结构,并且具有并行计算的优点,其公式如下:

图3 Transformer编码器

1.2 方面级情感分析模型

在本文任务中,通过AOA模型分别计算行和列的意象方面词与诗词上下文的注意力得分,将诗词的意象方面短语表示作为情感特征向量进行分类。

AOA注意力机制:设AOA的输入为意象方面词的语义编码h 和诗词语境的语义编码h ,其中h Rh R,是方面词序列的长度,是诗词语境序列的长度,是予以编码的维数。计算AOA数值首先要得到两者的语义联系矩阵,其公式如下:

式中∈R,中的第行列的元素表示诗词语境序列中第个词和意象方面词序列中第个词的语义匹配分数。然后对的列进行分类操作,获得意象方面词对诗词语境的注意力数值;对的行进行分类操作,获得诗词语境对意象方面词的注意力数值。其公式如下:

对按列计算平均值获得ˉ∈R,最后的AOA注意力数值∈R由和ˉ点乘得到。其公式如下:

本文利用IAN模型将意象方面短语的平均向量作为意象方面词嵌入向量,通过交互计算的方式得到诗词上下文与意象方面短语的注意力得分。

IAN模型采用交互注意力模块,其原理为:分别对LSTM得到的诗词上下文和目标的隐藏表示取平均值作为诗词上下文和目标的初始表示,即和,其公式如下:

诗词上下文的隐藏表示为[,,…,h ],将诗词上下文和目标的初始表示作为输入,通过注意力机制生成诗词上下文对目标对象的注意力,其公式如下:

其中数值函数表示h 在诗词上下文中的重要性,函数的定义如式(12)所示。

再通过得到的注意力矩阵αβ重构诗词上下文和目标对象的表示,其公式如下:

使用Tensorflow深度学习框架中的concatenate()函数将ct拼接在一起,得到最终的向量表示,代码为:=concatenate([ct])。

本文通过MemNet模型将意象方面短语的平均向量作为意象方面词嵌入向量,将句子向量作为外部记忆,多次计算外部记忆与意象方面词嵌入的注意力得分。

取一个外部记忆∈R和一个意象方面向量∈R作为输入,注意力机制输出一个连续的向量∈R,其公式如下:

其中∈是可训练的注意力权重矩阵,∈为偏置。

本文通过ATAE-LSTM模型将意象方面短语的平均向量作为意象方面词嵌入向量,再计算意象方面词嵌入向量与BERT编码后的首位[CLS]向量的注意力得分。

LSTM生成诗词隐藏向量[,…,h]组成矩阵∈R,其中表示隐藏层的大小,表示句子长度。注意力机制会产生一个注意力权重向量和一个加权表示。其公式如下:

其中v 表示意象方面的嵌入,eR是列全为1的 向 量 。∈,∈R,∈RW RW R,∈R为投影参数。v e =[;;…;]表示将v 平铺成e 相同的维度。最终的句子表示如式(22)所示,其中∈RW W 为投影参数。

在本文任务中,BERT-Single是通过BERT模型编码后得到的首位[CLS]向量作为情感分类特征。

1.3 分类层

本文采用Softmax特征分类器来实现诗词情感分类。将得到的诗词最终表示输入到Softmax层,计算意象方面词情感倾向,再通过最小化交叉熵来训练,其公式如下:

其中表示情感类别集,表示训练样本数,f (;)表示模型的预测情感分布,是正则化系数,表示需要训练的参数。

2 实验设计与结果分析

2.1 实验流程

本文实验流程如图4所示,主要包括语料预处理、对比实验、结果分析三部分。最终针对诗词在不同意象下的情感,从BERT-Single、ATAE-LSTM、IAN、MemNet、AOA五个主流方面级情感分析模型中选出效果最好的一个。

图4 实验流程图

2.2 数据来源

数据来源于Github上由Werner收集的中国古诗词数据库,包含了从先秦到现代的共计85万余首古诗词,通过Python程序从诗词语料库中得到出现频率最多的5种意象作为细粒度方面的数据,即“云”、“月”、“草”、“柳”、“竹”。邀请了多名研究人员对其中一万余首诗词进行了人工标注,将诗词情感标注为消极、中性、积极三类,并按照5种意象词将标注好的数据分为五类,以此作为测试数据,数据详情分布如表1所示。

表1 数据集分布详细

2.3 参数设置及评价指标

本文采用TensorFlow2.2框架搭建所有模型。操作系统为Window10专业版;CPU为Intel(R)Core(TM)i3-9100F CPU@3.60GHz,内 存 为8.0GB;显卡为GTX1060,显存为6.0GB;语言环境为Python 3.6。以模型准确率和宏平均1值(_1)作为评价指标。模型参数设置如表2所示。

表2 参数设置

2.4 实验结果分析

本文中所有模型都经过了10次实验,对结果取平均值,各模型迭代次数变化如图4所示。从图中可以看出,随着迭代次数的增加,各模型_1值整体上也随之增加,但在后续趋向饱和,说明一定的迭代次数能有效提高模型在诗词意象方面级情感分类效果。

各个类别的1值、宏平均1和准确率如表3所示。从表3可以看出,所有基于BERT的下游模型中,IAN的效果最好,_1值达到了68.16%。BERT-Single的_1值最低,说明以诗句的[CLS]向量作为情感特征不能准确代表诗句的语义信息。此外,带有注意力机制的模型要比BERT-Single的_1值高,可见注意力机制能提升模型性能。对比AOA与MemNet,两者都采用了多层注意力机制,而MemNet的Macro_F1值比AOA高0.87%,说明注意力层数越多,就越容易获取诗词中的意象方面信息。对比MemNet与ATAE-LSTM,MemNet在采用了三层注意力层数的情况下,其_1值与ATAE-LSTM接近,说明LSTM编码模型能更好地联系诗词上下文信息。对比IAN和ATAE-LSTM,在采用了LSTM编码模型的基础上前者的_1值比后者的高0.39%,说明交互式注意力机制能有效增强意象方面词与诗词本身的相互表示。

表3 各个类别F1值与宏平均F1值对比(括号内为注意力层数)

整体来看,IAN模型的_1值高于其他几个对比模型,说明交互式注意力机制和LSTM编码模型更适于分析诗词的意象方面级情感。

2.5 注意力可视化

为了进一步对比AOA、IAN、MemNet、ATAE-LSTM模型的效果,笔者将它们的注意力权重进行了可视化,如图5所示。其中字符的颜色越深,表示其注意力值越大。从图5可以看出,在意象方面词为“云”和“月”时,其情感极性是消极的。AOA模型将“月”、“远”等关键词进行了加强,但也产生了较多噪音以至于标点符号也被加强了。MemNet和ATAELSTM模型对“云”、“月”、“孤”进行了加强,但对于表示消极情感的“远”却没有给到很大权重。IAN模型对“云”、“远”、“月”、“孤”的权重都进行了加强。说明在诗词情感分析领域,IAN模型能取得更好的分析效果。

图5 迭代次数变化图

图6 诗词注意力权重可视

2.6 实例研究

为验证IAN模型在诗词意象方面级下的情感分析效果,笔者随机选取了每种意象下的诗词数据进行测试。通过BERT预训练模型获取目标诗词的初始化向量,再输入到IAN模型对这些诗词进行情感分类,得到预测的情感类别,与人工标注的真实情感类别进行对比,结果如表4所示。从表4可以看出,IAN模型在诗词中不仅准确找出了意象方面词“草”、“云”、“月”、“柳”、“竹”,并且将意象方面词下与情感相关的字词进行了权重加强。但是对于情感比较隐晦的诗词,不能给出很好的判断。比如“遗庙丹青落,空山草木长”表达一种落寞消极情感,IAN模型预测的是中性情感。总之IAN模型最终得到的情感预测类别绝大部分与真实类别相符,证明了IAN模型在诗词意象方面级情感分析领域中能取得不错的效果。

表4 IAN模型注意力可视化实例

3 总结与展望

如何自动判别诗词在不同意象下的情感,是一项充满挑战性的任务,本文尝试将方面级情感分析技术应用到诗词情感分析领域来解决此问题。首先通过预训练模型BERT得到诗词的初始化表示,然后输入到五个主流方面级情感分析模型中进行对比实验。实验结果表明IAN模型不仅能准确识别出意象方面词,而且能对意象方面词下的诗词情感做出更准确的分析。最后将对比实验结果和IAN模型实例分析结果进行了注意力可视化,并总结出以下结论,在诗词意象方面级情感分析领域:

(1)注意力机制能有效提升情感分类效果。

(2)注意力层数能提升情感分类效果,但LSTM编码层的效果提升能力更强。

(3)交互式注意力机制能有效提升情感分类效果。

因此,集交互注意力机制与LSTM编码器于一身的IAN模型更适合分析诗词在不同意象方面词下的情感。

本次研究作为不同意象下诗词情感分析的初步尝试,实验设计上仍存在不足。后续的研究将从以下几个方面展开:①增加对诗词文本的分词和词性标注,改进模型对诗词隐晦情感的判断;②将诗词的意象情感信息与诗人、朝代、诗词题材等信息做交叉分析,挖掘中国诗词的深层价值,在弘扬文化自信的时代背景下,让受众能通过多维度的视角去了解中国诗词的魅力。

猜你喜欢
向量注意力意象
论姜夔词的意象处理方式
向量的分解
抚远意象等
《庄子》中的舞蹈意象
让注意力“飞”回来
来自林间的风
A Beautiful Way Of Looking At Things
向量垂直在解析几何中的应用
向量五种“变身” 玩转圆锥曲线
阅读理解两则