融合双向切片LSTM与Attention的情感分类模型

朱广丽,谈光璞,张顺香,韦斯羽

(1.安徽理工大学计算机科学与工程学院,安徽 淮南 232001;
2.合肥综合性国家科学中心人工智能研究院,安徽 合肥 230088)

近年来,网络技术的快速发展带来社交软件上语言信息数量的喷涌式增长,网络上出现了海量的带有不同情感倾向的语言信息。因此,对自然语言的信息进行处理就变得尤为重要。通过对这些语言信息进行情感分析、情感分类,可以更好地了解人们对于某件物品的接受程度或对于某件事情的情感态度。无论是企业还是个人都对处理后的信息抱有极大的兴趣,都希望通过分析处理后的信息来得到某些数据或者信号。

由于简单的RNN在使用中存在许多问题[1-2],在具体分类工作中,大部分都采用RNN的变体模型LSTM作为循环单元,先后出现了WEEF-BILSTM、W2V-Att-LSTM、BiLSTM-CRF等LSTM的变体模型,但是BiLSTM-CRF模型中的LSTM不能并行导致了训练时间较长,且LSTM无法区分句子中的每个词在分析句子整体情感上的重要性。因此,构建一个可行高效的情感分类模型,需要考虑以下3点:①如何对文本进行预处理以及分词;
②如何实现并行处理文本;
③如何充分提取文本语义特征。

基于上述考虑,本文提出了融合双向切片LSTM与注意力机制的情感分类模型(BiS-LSTM-Attention)。首先,将待处理文本用Natural Language Toolkit(NLTK)处理包进行预训练以及分词,(自然语言工具包Python用于诸如标记化、词形还原、词干化、解析、POS标注等任务);
其次,通过BERT对词向量进行训练来得到上下文向量列表,将预处理后的文本切分为多个文本切片作为BiS-LSTM-Attention模型输入。经过双向LSTM特征提取,更好地捕获双向的语义依赖,实现训练并行,使训练速度加快;
加入注意力层,对LSTM输出的隐藏层向量进行加权计算,增强方面信息与句子的关联度,用以补救因对文本进行切片的操作所造成的网络损失问题;
分类层根据每个文本对应的特征向量进行计算来实现情感分类。BiS-LSTM-Attention模型由输入层、词嵌入层、双向处理层、聚合层、Attention层、融合层、Sofmax层组成。

1)输入层 用NLTK预处理包对初始文本进行分词、消除停用词、大小写转换等处理,使其转化为标准用语。

2)词嵌入层 使用BERT方法对待处理文本进行预训练得到词向量列表,将词向量进行文本切片处理,并将处理结果后输入到双向LSTM中。

3)双向层 双向LSTM分前向和后向并行处理输入的多个文本切片。

4)聚合层 将双向LSTM的输出向量拼接。

5)Attention层 对每个子序列进行注意力计算,提高模型在方面级的情感极性分类效果,并作为下一层的输入。

6)融合层 将Attention层的输出的向量进行拼接融合,并输入到Sofmax层。

7)Sofmax层 进行情感极性的判断。

本文研究工作的主要贡献包括:

1)采用传统的SRRN与双向 LSTM结构,实现了双向切片 LSTM的并行运算,提高了情感分类的训练速度。

2)结合注意力机制,更接近人们的理解方式,增强方面信息与句子的关联度,能够解析更深层次的文本信息,提高对文本进行情感分类的精度和效果。

3)结合注意力机制,在一定程度能够补救切片所导致网络损失问题。

随着互联网技术的飞速发展,对于文本处理也有了多种技术。基于传统的机器学习与基于情感词汇的文本处理技术是目前最常使用的两种。近年来,随着人们对情感分类研究的,推进深度学习在情感分类工作上的应用越来越普遍,通过不断深入的分析,文本分析情感的精度有了很大的提升,同时也使深度学习方面的算法在文本分类工作中的应用日益增多[3]。与传统的机器学习和情感词典相比,深度学习可以以词矢量或短文矢量为前提,持续了解原文特征,了解更深层次、更多模态的情感特征,更能满足目前的文字处理要求。

1.1 基于情感词典的方法

在自然语言处理工作方面,采用了一种基于情感词典的处理方式,主要是将初始预处理句子和情感词典中的词组进行配对,从而得出情绪极性。文献[4]采用情感词典ELMo技术,既能表达词汇自身的语义信息,又能表达词汇的语言信息,还能根据不同的情感语境信息产生的词汇矢量,对“bug”等多种词汇语义表达进行分析。文献[5]根据使用者兴趣爱好特征分析,提出一种基于使用者兴趣爱好字典与 LSTM之间的文本分类办法。文献[6]介绍一种分类思想的微博最新情感词汇抽取方式。文献[7]建立一种网络评论情感分类模式,运用相关领域的网络评论对情感字典方式作出了扩充,从而提高了情感倾向模糊文章的划分精度。文献[8]提供一种采用语义相似性与嵌入表征的情感分类方案,该方法对待处理句子和情感词汇的语义相似程度进行分析,并将语义距离与嵌入特征结合在一起,实现思想和情感的区分,从而解决了语义特征利用率低问题。文献[9]提出一种名为EmoChannel的新方法,通过结合领域知识和维度情感词典来捕捉时间序列中特定情感的强度变化,并通过引入EmoChannelAttn网络和注意力机制识别所有情绪中的依赖关系,以提高情绪分类性能。前期研究主要是基于情感词典方法处理文本,但是该方法需要进行许多的手动标记特性,建立不同的情感词典费时费力,使用基于情感词典方法的人已经很少了。

1.2 基于机器学习的方法

基于传统的机器学习技术是将待处理文字进行分类,分成多个小分支,构成多个子任务[10]。文献[11]基于以往图像文献计算理论,利用表情词和表情字符的相似度,构建了表情图象的情感字典,对官方扩展式表情包和图像型表情词进行情绪识别与检验。文献[12]对网络骚扰进行了系统的检测,并将内容分类作为标记,采用六个机器学习算法对文本数据进行应用,从而有效地解决了分类问题,并根据对有毒评论分类的评价指标,确定了最优的机器学习算法。文献[13]提出一个混合神经网络,使用双向LSTM编解码器提取事件实体,使用CNN分类器获取实体之间的关系,实现事件之间的关系抽取。文献[14]提出一个混合神经网络,使用双向LSTM编解码器提取事件实体,CNN分类器获取实体之间的关系,实现事件之间的关系抽取。文献[15]提供一个采用BERT模式的社会化电子商务文本分类算法,既可以快捷精确地评估物品类别,还可以对网络交易信息进行深入研究,从海量数据中获取有用的信息。文献[16]针对分类器的适应性和标记样本的匮乏性两个问题,给出一种基于贝叶斯网络的跨领域情感分析方法。这种方法在某种程度上进一步优化了领域面上的情感划分精度。文献[17]提出一种多支持向量机分类器,以一种创新且有效的概率特征加权方法来准确地对代表项进行加权,确保提取的知识用于描述相关信息的确定性。

1.3 基于深度学习的方法

近年来,随着深度学习技术在社会生活中的广泛应用,基于深度学习的文本处理技能也有了长足的进步。与传统的机器学习相比,采用深度学习的方法,可以将单词或语句中的向量作为首要依据,从而了解语言的特征,了解更加高级、更加抽象的语言特征,更能满足当前的文本处理需求。文献[18]提出一个基于深度学习的模型,将推文分类为不同的可操作类别,例如资源需求和可用性、各种非政府组织的活动等。模型不需要领域知识,可以在任何灾难场景中使用,几乎不需要修改。文献[19]对利用多种卷积神经网络(CNN)预测类标签的预训练词嵌入结构进行了研究,构建了一个带有连续词袋(CBOW)方式的CNN,其中包括一种具有skip-gram方式的CNN,以及带有和不带有 word2vec 和FastText的 CNN。ELMO模式是一种深度双向的LSTM语句模式,处理了语句多义问题,但是由于ELMO模式每个语句中的词被预测,前后双向语言模型都可以看到下一个句子的信息,因此它没有并行执行,速度较慢。文献[20]提出了一种多尺度CNN的多标记情感分析模型,采用不同的卷积尺度对原文的特性进行抽取。针对多标签情感语料库的不足,给出一种基于情感种子词的多标签情感语料库的构建方法。文献[21]提供一个可以用上下文表示的BiLSTM-CRF(双向长短期记忆条件随机场)模式,模型将事件检测任务视为字符级序列标记问题,并使用上下文表示来消除事件触发的歧义。

随着深度学习技术的不断发展,Attention机制因为其具有记忆功能,从而越来越多地被融合到不同的模型中。文献[22]给出一种利用混合神经网络和注意力机制的问题报告自动分派模型Atten-CRNN,可以更有效地提出更为精确的问题修复建议。文献[23]采用基于规则计算的方法进行可解释和深度学习,提出一种基于规则的可解释性和快速计算技术的方法,这种方法可以应用于医药领域的情感分类工作。文献[24]介绍一种双向长短期记忆网络模型,该方法以短语、单词、不同单词性质为基础,采用Attention机制对相关情感信息进行加权求解。文献[25]给出一种基于 W2V和 LDA 主题的文字表达矩阵。将词汇中的意义特性与 LSTM相结合,采用Attention机制对 LSTM模式进行改进,并给出 LSTM-Attention模型。

基于以上研究分析,目前的方法虽能很好地分类文本,但是仍然存在情绪分类模式训练速度较慢、分类精度较低等问题。本文通过对文本进行切片以及加入Attention机制来提高训练速度以及分类准确度。

2.1 切片循环神经网络

切片循环神经网络是通过将输入文本切分为多个长度一样长的最小文本切片来构造的。它的速度高于一般循环神经网络几十倍。每个循环结构都可以并行处理多层次的多个子文本,处理文本可以通过多个层级进行传递,具体结构如图1所示。

图1 切片循环神经网络

2.2 Bi-LSTM模型

单向的LSTM模型,只能按照从前到后的顺序去提取文本中的特征,双向LSTM就是对两个LSTM的整合,如图2所示。在对文本进行处理时,Bi-LSTM可以同时对上下文信息进行提取处理,通过捕获双向的语义信息来提取特征,更好地通过有效地提高参数训练的精度。

图2 Bi-LSTM模型

2.3 Bi-LSTM-Attention模型

Attention机制能够提高情感理解方式,增强方面信息与句子的关联度,解析更深层次的文本含义,加强文本分类的精度和效果。Bi-LSTM和注意力机制可以在某种程度上解决文字切片所产生的低层网络损失问题,Bi-LSTM-Attention模型如图3所示。

图3 Bi-LSTM-Attention模型

注意力机制可以通俗地表示为对于某一刻输入attention机制的信息,在方面信息上增强与句子的关联度,加入注意力计算的一种机制。Attention模型能很好地解决长记忆损失问题,在不同的时间内,仅侧重于对与某些特定的联系部分进行处理。加入Attention机制还能有效地降低切片造成的长期依赖损失问题。Attention层表示为

edf=a(sd-1,hf)

(1)

(2)

(3)

式中:edf表示每一个输入位置hf对当前位置d的影响,其中,hf为输入位置,sd-1为隐层,d表示当前位置,f表示输入位置,αdf表示权重分布,ed为利用αdf进行加权求和得到相应的文本向量。

为了解决BiLSTM-CRF无法并行及无法分辨词与词的重要性的问题,本文提出一种融合双向切片LSTM与注意力机制的情感分类模型(BiS-LSTM-Attention)。

3.1 模型表示

首先,利用NLTK方法对初始文字进行预处理;
其次,使用BERT模型对预处理后的文本进行预训练,再对其进行切片处理得到文本切片,将切片文本作为Bi-LSTM的输入,经过Bi-LSTM的分析和Attention机制的计算在融合层对输出的向量进行拼接;
最后,在Softmax层中利用正则化操作方法将输入的特性分类,进行情感极性的判断,具体框架如图4所示。

图4 BiS-LSTM-Attention模型

3.2 文本预处理

由于中文的复杂性,单一的中文文字无法很好地去表现出人们的情感,同时在书写的文字中,人们通常习惯使用大量的标点符号、中英文混用、新型符号等,因此,先对本文进行NLTK预处理。初始文本经过预处理后对后续文本进行情感计算会变得更加清楚、更加规范。

假定有一个A文本为“口罩质量感觉有点差”。在经过上一层处理后,预训练层接收到的文本可表示为A=[‘口罩’,‘质量’,‘感觉’,‘有点’,‘差’]。预处理流程如图5所示。

图5 预处理流程

算法1.数据预处理部分算法

输入:待处理的原始文本

输出:预处理后的文本

分词、停用词删除、去除特殊符号:

①ke_token=jieba.lcut(ke_nopuc)

②d=open(r″C:Users16440PycharmProjects去除停用词.txt″,′r′,encoding=′UTF-8′)

③Stop_zhi_n=d.readlines()

④d.close()

⑤Stop_zhi = [wy.strip().replace(′′,″) for wy in stop_zhi_n]

⑥import re

⑦from zhon.hanzi import punctuation

⑧ke_nopuc=re.sub(″[{}]+″.format(punctuation),″″,text_chinese)

3.3 文本预训练

使用BERT方法对待处理文本进行预训练得到词向量列表,将文本切片处理,结果输入到双向LSTM中。

通过BERT方法对预处理后的语料库进行预训练,得到训练好的上下文词向量列表。通过对比实验选择最佳切片次数k和最小子序列长度n来对预训练后的文本进行切片,使切片后得到的文本切片在BiS-LSTM-Attention模型中表现最好。

算法2.文本预训练部分算法

输入:预处理后的文本

输出:文本切片

预训练、切片:

①cun_indexes = []# 存储可参与掩码的下标

②for (k,we) in enumerate(tokens):

③if we==″[CLS]″ or we ==″[SEP]″:

④continue

⑤if (FLAGS.do_whole_word_mask and len(cun_indexes) >= K andwe.startswith(″##″)):

⑥cun_indexes[-1].append(k)

⑦else:

⑧cun_indexes.append([k])

3.4 双向处理模块

由于传统的Bi-LSTM不能并行进行计算,使得计算时间增加,而切片循环神经网络将输入序列进行多次切片处理,形成多个长度相等的文本切片。因此,循环单元可以在每个层上同时处理多个文本切片,实现并行计算,然后通过多层网络进行信息传递使得文本切片可以实现并行计算。

该模块对输入的多个最小文本切片分两个方向并行进行处理,提取各自的特征

式中:hij为双向处理文本切片后提取的特征;
Xij为第i个子文本的j个输入;
i、j分别为双向处理上第i个子文本的j个输入。

3.5 注意力计算模块

Attention机制的本质即为不同的特征赋予一组权重值。当进行分类工作时,一个词的权值越大即表示该词的重要性越强,就越容易影响到最后的结果。在文本分类任务中,将注意力放在对文本分类结果影响较大的词上可以有效提升分类的效果。

该模块主要是对Bi-LSTM层输出的隐藏层向量进行加权计算。首先,将Bi-LSTM层的输出向量输入到Attention层,其输出结果输入到单层感知机中得到隐含表达,再通过对比与上下文向量的相似性来判定该单词的是否为主要单词。最后,利用词向量加权求和计算的方法,实现文本级别的局部特征关注,具体计算公式如下:

ui=tanh(DwSi+bi)

(6)

(7)

式中:∂i为词语序列S中第i个单词的注意力分值;
Si表示隐藏层向量;
DW为词权重矩形;
ui表示Si在词注意力层的隐含表示;
uw表示一个初始化用以表示上下文的向量。

3.6 情感极性判断模块

将Attention层处理后的特征向量进行拼接后输入到softmax层中,softmax层对每个分量计算e指数,再归一化,也就是属于0到1之间,且模为1,步骤如下:

(8)

Q=softmax(wTT+bT)

(9)

式中:T为顶层文本切片的隐含表示;
wT为权重;
bT为偏置;
Q为模型在各个情感极性预测概率值归一化的结果,取其中最大值对应的情感极性标签作为预测结果,分为积极、消极以及中性。

本文使用的损失函数为

LOSS=-∑log2Qkl

(10)

式中:LOSS表示损失函数输出的结果,k为语料库中的每条句子,l为标签。

4.1 实验数据准备

为了验证本文提出的BiS-LSTM-Attention模型的效果,选取了CSDN上公开的来自京东和淘宝商品的用户评论文本的中文语料集(1)https://download.csdn.net/download/qq_43414292/18464424。该语料集包括手机、口罩、衣服、酒店、零食等5个类别的数据集,其中积极、中性、消极评各25 000条。选取好、中、坏评各6 000条作为实验的数据集,语料集样例如表1所示。

表1 语料集样例

4.2 实验评价指标

本文采用的实验评估指标有:准确率(precision)、召回率(recall)、F1测度和运行时间。它们的计算公式分别如下:

(11)

(12)

(13)

式中:TP、FN分别是被模型预测为合适和错误的正样本;
FP、TN分别是被模型预测为合适和错误的负样本。

4.3 实验过程

为验证本文提出的BiS-LSTM-Attention模型的可行性。具体实验步骤如下:

Step 1:使用NLTK预处理包,对初始文本进行预处理,去除停用词、大小写转化、分词;

Step 2:使用BERT对文本进行预训练得到词向量列表;

Step 3:为预训练处理后的文本选择最佳的切分次数和子序列长度并进行切分处理,将切分后的多个文本切片作为BiS-LSTM-Attention模型的输入;

Step 4:将每个文本切片经过Bi-SLSTM提取的特征输入到Attention层,对Bi-SLSTM输出的隐藏层向量进行加权计算;

Step 5:将Attention层输出的向量进行拼接融合,并进行情感极性的判断;

Step 6:用测试集对模型进行测试判断。

4.4 结果与分析

本文提出的模型与WEEF-BILSTM、W2V-Att-LSTM和BiLSTM-CRF 3种模型进行了对比实验,实验环境基于相同的硬件设施和环境配置,实验统计结果如表2所示。

表2 对比模型实验结果分析

通过对比实验结果,可以得出以下结论:

1)WEEF-BILSTM模型进行一次执行的时间是最短的,但是WEEF-BILSTM模型的其他实验评估指标相较于另几种对比模型的实验评估指标也是最差的。本文提出的BiS-LSTM-Attention模型虽然在执行的用时上低于WEEF-BILSTM模型的速度,但是其他实验评估指标都远远大于WEEF-BILSTM模型以及其他对比模型的效果;

2)本文提出的BiS-LSTM-Attention模型在京东和淘宝商品的用户评论文本的中文语料集上表现最好。这是由于BiS-LSTM-Attention模型引入了注意力机制,将注意力集中在对最终结果影响较大的词上,赋予其较高的权重,提高了模型分类的效果。这表明BiS-LSTM-Attention模型与其他几种文本分类模型相比,可以更好地提取出文本信息,并快速地进行训练,从而有效地改善文本分类的效果,体现本文提取模型的效果。

为了加快模型的训练速度以及区分句子中的各个词在情感分类中所占重要性的问题,本文提出了一种融合双向切片LSTM与注意力机制的情感分类模型(BiS-LSTM-Attention)。实验结果表明,该方法相对于其他模型具有明显的优势,可以更好地对文本进行情感分析,对于如何更加快速高效地处理带有不同情感表达的文本具有一定的改进作用。基于深度学习的文本处理技术目前正在高速发展,但中文语法复杂、一词多义和训练速度较慢等问题对中文文本的情感分析仍然存在着一定的难度。因此,如何去使模型并行计算以及区分中文句子中各个词在情感分类中的重要性还有待进一步研究分析。

猜你喜欢 双向切片预处理 双向度的成长与自我实现出版人(2022年11期)2022-11-15求解奇异线性系统的右预处理MINRES 方法温州大学学报(自然科学版)(2022年2期)2022-05-30降低寄递成本需双向发力今日农业(2021年19期)2021-11-27用“双向宫排除法”解四宫数独数学小灵通(1-2年级)(2021年10期)2021-11-05高COD二噻烷生产废水预处理研究潍坊学院学报(2020年2期)2021-01-18新局势下5G网络切片技术的强化思考科学与财富(2020年15期)2020-07-04网络切片标准分析与发展现状移动通信(2019年4期)2019-06-25基于预处理MUSIC算法的分布式阵列DOA估计制导与引信(2017年3期)2017-11-02一种软开关的交错并联Buck/Boost双向DC/DC变换器通信电源技术(2016年5期)2016-03-22肾穿刺组织冷冻切片技术的改进方法中国组织化学与细胞化学杂志(2016年3期)2016-02-27

推荐访问:切片 双向 融合