基于LSTM深度神经网络的情感分析方法

2019-01-03 00:42
上饶师范学院学报 2018年6期
关键词:神经网络分类深度

(上饶师范学院 数学与计算机科学学院,江西 上饶 334001)

近年来,随着博客、微信、维基等社交网络的不断增长,基于社交网络等媒介的情感分析[1]正成为工业界与学术界的研究热点。情感分析也称观点挖掘[2-3],属于自然语言处理与计算语言学的范畴,其主要目标是将文本进行分类即正面情感或负面情感,有时还可划分为中性情感[4]。对于情感分析,已经涌现出大量相关情感分类方法,如PD Turney[5]与Taboada[6]等人分别先后于2002年、2011年提出基于字典的切分类方法。Pang与Lee[7-8]把机器学习的传统算法应用到情感分析中,并利 用 词 袋 模 型[2]对 文 本 进 行 情 感 分析。近年来,随着人工神经网络与深度学习研究的不断进展,如Kim于2014年提出CNN(Convolutional Neural Network,卷积神经网络)模型[9],利用词向量对文本进行分类,并取得了不错的效果。Mikolov[10]等人在2010年提出通过RNN(Recurrent Neural Network,循环神经网络)来进行建模,此模型可以充分地利用上下文信息构建语言模型,效果比较显著。Socher[11]等人通过改进的递归神经网络模型(Recursive Neural Network)来获取句子语义特征,提高了情感分类的准确率。

在传统的循环神经网络中,在梯度反向传播阶段,状态转移矩阵权重的大小将会对学习过程产生强烈影响。具体说来,如果状态转移矩阵中的权重较小,这将导致梯度信号变得太小以致于学习非常缓慢甚至停止从而带来梯度消失问题。反之,如果矩阵中的权重较大,将导致梯度信号过大使得学习偏离而造成所谓的梯度爆炸问题[12]。

本研究在RNN循环神经网络的基础上,建立LSTM深度神经网络模型,对文本情感进行分析,通过在公开数据集上的相关实验,证明LSTM模型情感分析方法的有效性。

1 LSTM模型

1.1 LSTM模型结构

为了解决RNN模型中的上述问题,这里采用LSTM(Long Short-Term Memory,长短记忆网络)模型[13],其是一种时间递归的深度神经网络。LSTM引入一种称之为记忆单元 (memory cell)的新型结构,具体如图1所示,记忆单元主要由输入门、自循环连接的神经元、遗忘门和输出门四个部分组成。

图1 LSTM记忆单元示意图

1.2 LSTM模型算法流程

为了理解LSTM网络模型的工作原理,这里通过一系列算法方程进行说明,假设每个时间步t,记忆单元层将进行更新,进一步假设如下:

(1)xt是记忆单元层在时间t的输入。

(2)Wi,Wf,Wc,Wo,Ui,Uf,Uc,Uo与Vo是权重矩阵。

(3)bi,bf,bc,bo是偏差向量。

具体算法流程如下:

第1步:在每一个时间步t,将计算it。具体将输入门输入信息与权值相乘,再加上偏置量,然后将记忆单元状态从Ct-1更新到Ct,具体方程如下:

it=σ(Wixt+Uiht-1+bi)

(1)

(2)

ft=σ(Wfxt+Ufht-1+bf)

(3)

(4)

第3步:在上述更新后记忆单元状态后,就可以不断计算输出门的值,具体方程如下。

ot=σ(Woxt+Uoht-1+VoCt+bo)

(5)

ht=ot* tanh(Ct)

(6)

2 实验过程

为了比较LSTM与RNN深度神经网络在情感分析方面的性能,这里设计了对比实验,实验数据来自Kaggle 的情感分类比赛UMICH SI650[14],分别用LSTM与RNN网络模型进行训练学习与预测,以分析对比这两个模型的优劣。

2.1 实验环境介绍

本研究实验硬件环境为中高性能PC;软件环境主要基于Keras与Tensorflow的深度学习平台,具体配置如表1所示。

表1 实验环境具体配置

2.2 数据集准备

本研究采用公开本情感分类数据集UMICH SI650,UMICH SI650数据集中的数据是从相关博客中抽取,每一行构成一个句子。本实验的目标通过构建模型进行训练,然后进行相应测试,将测试集中每一个句子进行情感分析分类即“positive(正面)”和“negative(负面)”。UMICH SI650训练数据中有7 086个句子,已经分别用“positive(正面)”和“negative(负面)”标注,这里将其中80%数据作为训练集(共5 668条),20%数据作为测试集(共1 418条)。

2.3 LSTM网络模型的构建

这里选用基于Python的深度学习库Keras,因为Keras 提供现成的 LSTM 层构造。模型经过多次调优,具体模型超参数如下。

(1)优化器选择

鉴于Adam优化器能够自动调整学习速率,收敛速度更快,因而一般在复杂网络中优化性能更好,这里选择Adam优化器。

(2)Epoch数量的选择

如果epoch数量太少,网络就没有足够的时间训练去寻找合适的参数,从而造成欠拟合;而epoch数量太多,则有可能导致网络过拟合。通过多次实验后,经过了 10 个epoch 后,在测试集上的精度已经趋向收敛,因此,这里选择epoch为10。

(3)batch_size选择

在实验中,采用逐步增大batch_size方案,最后选择模型达到收敛,并且训练时间最为合适的batch_size,因此,这里选择batch_size为20。

2.4 LSTM网络模型的情感分析训练与预测

LSTM网络模型先以上述数据集的词为单位进行分词,并统计词频,然后将训练集中的句子描述为“词-词向量(embedding)”矩阵,再输入到LSTM模型中进行训练,最后将模型在测试数据中进行情感分类预测。具体流程如图2所示。

图2 LSTM网络模型的情感分析流程

通过上述模型构建与超参数调优后,此模型在UMICH SI650数据集上情感分析分类实验,最终预测准确率为99.0%,具体如图3所示。

图3 LSTM网络模型情感分析预测精度

2.5 RNN网络模型的情感分析训练与预测

为了进一步对比分析本研究LSTM模型的精度,这里再利用RNN模型在同一数据集即UMICH SI650数据集上也进行情感分析分类实验,最终预测准确率为98.8%,且模型训练时间比LSTM网络更长,具体如图4所示。

图4 RNN网络模型情感分析预测精度

3 结论

经上述实验验证分析,LSTM深度神经网络比RNN网络模型情感分析分类预测准确率更高,且训练速度更快。证明基于LSTM深度神经网络的情感分析方法能更准确地完成情感分析任务。

4 展望

基于LSTM深度神经网络的情感分析方法在单语言文本(如英文或中文)处理上有较好性能,但随着互联网上的信息资源逐渐呈现出多语言化的特点,如何利用LSTM深度神经网络相关模型解决跨语言的情感分析,这是下一步工作的研究重点。

猜你喜欢
神经网络分类深度
分类算一算
深度理解一元一次方程
神经网络抑制无线通信干扰探究
分类讨论求坐标
深度观察
深度观察
深度观察
数据分析中的分类讨论
教你一招:数的分类
基于神经网络的拉矫机控制模型建立