基于Attention-BiLSTM的情感分类模型

2020-06-12 07:38黄奇景付伟
电子技术与软件工程 2020年3期
关键词:解码器注意力向量

黄奇景 付伟

(哈尔滨师范大学 黑龙江省哈尔滨市 150025)

随着社交网络的发展,越来越多的人在社交媒体(如微博,贴吧,论坛等)平台上进行分享或记录自己对生活的想法和心情,对生活和事物的理解和看法等,而在这其中也就潜藏了巨大的社会意义和庞大的商业价值。例如对于电商购物平台来说,获取一个用户对该平台商品的情感评论和倾向可以使该平台知道用户通过该平台的商品被社会大众的关注和接受程度,而通过社交网络媒体类型比如微博获得一个用户的对商品以及实时社会热点问题的关注情感和评论倾向则可以防止不良的社会现象和情绪的产生和传播,以便于有效维护国家和社会的优良形象和风气,而且由于深度的机器学习和移动大数据等信息技术的迅速普及和发展,给这一点提供了实现的方法和途径。深度的学习模型具有不需要人为的去构建或者调置神经网络模型的诸多优点,只需要简单的通过把大量的文本情感分析数据直接注入和拟合到一个基于神经网络的模型中去就已经可以快速的获得一个能够具有较好的数据拟合和分析能力的深度学习模型,而且随着数据的拟合规模扩大,模型的分析准确率也同样就会随之大幅度的提升。

1 相关工作

目前对于短文本的情感分类研究日趋增长,基于词库和规则的情感词典分类方法属于一种比较早期的情感分类处理方法,如情感活动词典分类作为一种重要的中文情感词典分类处理方法,能够充分体现文本的非高度结构化的特征。Paltoglou等人[1]采取情感词典的方法,借助情感活动强弱、极性等多种结构化的语言学因素来设计用来预测分析的函数,对微博文本进行了情感活动分类.在Twitter,MySpace,Digg等多种基于社交网络媒体的情感分类实验中,该情感分类方法的准确率最高可达86.5%。在跨领域的情感分类研究中,以机器学习[2]为基础的分析方法大放异彩,最大程度的规避了特征工程的影响的同时又通过词向量[3]获取了语义信息。Glorot等[4]提出了一种跨领域的SDA方法,该方法首先使用给定的包含多个领域的样本来训练神经网络,然后通过利用神经网络学习得到的文本特征表示在源领域上训练SVM情感分类器。该方法虽然简单,但是对其训练时没有充分的考虑到目标专有领域与源领域间的差异。Dong等人提出将递归神经网络应用到方面级别情感分类上,先利用递归神经网络获取情感极性信息,然后后加入句子的句法结构信息辅助模型来提高情感分类准确率[5]。但此类模型对句法依赖性较强,在处理非书面表达时性能表现不稳定,如Twitter、微博类数据时容易受句法分析错误的影响。近年来基于RNN的情感分类模型取得了较好的性能表现[6],例如,Tang等为了对句子之间的关系进行建模,提出采用层次化RNN模型来对篇章级文本进行建模[7]。但由于RNN网络本身的特点,如LSTM网络和门限网络倾向于重视短期输入,因此仅仅基于RNN的模型无法很好地捕捉到复杂语句中相对距离较远的情感极性词或短语与反面词之间的潜在关联。后续的研究表明,通过引入注意力机制有助于解决该问题。

2 模型

图1:注意力机制

2.1 Word2Vec

深度网络学习方法分类进行词汇文本分类的第一步工作就是将词汇文本向量化,利用大量的词汇文本向量嵌入来表示词汇文本,作为深度网络学习模型的文本输入。词向量嵌入将一个词汇向量表中的词向量表示为一个多维空间中的一个真实值词汇向量。Word2Vec是一种基于Skip-gram和模型架构CBOW的“人工神经网络预测”的模型(连续预测单词包)基于模型架构。CBOW模型是通过学习文本的上下文信息来对当前单词进行预测,而Skipgram的模型架构恰恰相反,是使用当前的单词直接预测当前上下文可能出现的单词。在NLP中传统的做法都会使用one-hot方法来编码一个词,但是这种编码方法会存在如下的问题:

(1)词表通常会非常大,致使词表的向量维度也会非常大,导致向量维度的大爆炸。

(2)使用one-hot对每个词语进行编码,无法表征词与词之间的内在联系,因此损失了语义信息。

所以word embeding的优势如下:

(1)每个词语都被预训练好的模型映射成为一个固定维度的向量,由此缩减了向量空间大小。

(2)在词语间具有相似的语义条件下,可能会将它们置于相近的向量空间当中,并且可以通过不断的训练获取特征学习到这组词语间的内在联系。

Word2Vec使得我们对于较大的文本进行情感分析成为了可能,避免了维度爆炸和大量无意义的计算,并且还具备有一定的词语语义的表征能力。

2.2 BiLSTM

LSTM的即长短时记忆网络,它是循环神经网络RNN(Recurrent Neural Network)的一种。标准RNN可以访问的上下文信息的范围非常有限,问题在于标准RNN给定了输入对隐藏层的影响,因此对网络输出的影响,因此随着时间推进会呈指数级衰减,这被称为消失梯度问题。长短期记忆(LSTM)是专门设计用于解决消失梯度问题的RNN体系结构。长短时记忆网络在基本的循环神经网络中添加了一个核心元素cell。LSTM通过输入门、输出门和遗忘门来控制 cell的状态,并对其删减或者增加信息。原始的循环神经网络的隐含层只有一个对短期输入敏感的状态,长短时记忆网络增加了一个用来保存长期输入的状态。

传统RNN的一个缺点是它们只能利用先前的上下文,而BiLSTM通过使用两个单独的隐藏层在两个方向上处理数据来获取前后双向的上下文特征,然后将这两个隐藏层前馈到同一输出层,这意味着对于给定文本中的每个词语,BiLSTM都具有关于其前后所有词语的完整的序列信息。

2.3 注意力机制

如图1所示,Attention机制是模仿人类的视觉注意力被提出来的,人类的视觉注意力虽然存在很多不同的模型,但它们都基本上归结为给予需要重点关注的目标区域(注意力焦点)更重要的注意力,同时给予周围的图像低的注意力,然后随着不同时间的需求调整焦点。注意力机制就是对输入权重分配的关注,最开始使用到注意力机制是在编码器-解码器(encoder-decoder)中,注意力机制通过对编码器所有时间步的隐藏状态做加权平均来得到下一层的输入变量。从算法上来理解,我们可以把注意力机制和池化做类比,即将卷积神经网络中的池化看成一种特殊的平均加权的注意力机制,或者说注意力机制是一种具有对输入分配偏好的通用池化方法(含参数的池化方法)。

使用注意机制,我们不再让解码器尝试将完整的源语句编码为固定时间长度的向量。相反,我们已经允许解码器在根据输出句子生成的每个句子中按步骤"参加"到源句子的不同组成部分,学习一些需要特别注意的内容,解码器的模型会非常有顺序地进行选择需要做的事情。

在这里,X是我们的输入文本,Y是我们由目标解码器分析和产生的目标词。注意力机制核心体现在每个目标解码器输出字符的Yt,不是取决于最后一个输入状态,而是所有解码器输入状态的一个加权组合。α是对输入状态的非线性分布,一般都被归一化成总和为1,它代表的是每个解码器输入状态对输出字符的影响因子。例如,假设输入状态α7,5是一个较大数字,这就意味着输入文本中的第5个输入状态对解码器在产生目标句子的第7个单词时的影响比重较大,亦即目标词对该输入状态给予了很大的关注。

3 实验

3.1 实验环境

本文中开发实验的环境如下:使用的操作系统为Windows 7,cpu是Intel corei5-7500,内存大小DDR3 16gb,开发环境为tensorflow 1.13.1,开发工具使用的是jupyter notebook。

3.2 实验数据

表1:模型训练集和测试集Accuracy

本文数据集为IMDB电影评论数据集,分为积极和消极评价两类分类,训练集25,000样本,测试集25,000样本。

3.3 实验结果及分析

为了验证本文主要提出的神经元模型的分类和性能,传统的机器智能学习采用SVM两个模型进行了对比分析实验。其中两个模型的参数优化器分别为:关键词向量为200维,BiLSTM层神经元的数目128个,采用了交叉熵计算的损失函数,优化器为:Adam,epoch为20。实验结果表明本文提出的模型在测试集的精度可以达到91.8%,而SVM则为85.7%。如表1所示。

本文与传统的机器学习算法SVM模型进行对比,实验结果表明本文分类效果明显优于SVM,提高了文本分类的准确性。

4 结束语

本文主要提出了一种基于BiLSTM的机器学习模型用于进行文本数据分类的研究,与其他基于传统的机器智能学习模型SVM的研究进行了比较,结果表明本文所提特征融合模型在分类准确率上优于对比的模型,本文模型有效地提升了文本分类的准确率。然而本文融合模型并未使用深度较深的BiLSTM网络,未来将研究深度较深的BiLSTM网络对文本分类准确率的影响。

猜你喜欢
解码器注意力向量
向量的分解
让注意力“飞”回来
科学解码器(一)
聚焦“向量与三角”创新题
科学解码器(二)
科学解码器(三)
线圣AudioQuest 发布第三代Dragonfly Cobalt蓝蜻蜓解码器
“扬眼”APP:让注意力“变现”
向量垂直在解析几何中的应用
向量五种“变身” 玩转圆锥曲线