刘 娟
(1.重庆化工职业学院,重庆 401228;2.四川学术成果分析与应用研究中心,四川 成都 610039)
近年来,数字化技术得到快速发展。在图书情报领域,数字图书馆是数字化的典型代表之一,它利用信息技术能够更好完成文本信息的组织和传递。其中,图书分类是数字图书馆建设中的重要一步,研究图书自动分类方法具有重要意义。
图书分类其实质就是对图书文本信息的分类。文本分类在自然语言处理的许多领域中具有重要地位,其已应用于推荐系统[1]、垃圾邮件过滤系统[2]和其他需要了解用户情绪的领域。当前,用于文本分类的方法主要有3 种类型:①基于统计的分类方法,如贝叶斯分类器;②连接网络学习分类方法,如神经网络;③规则制定方法,如决策树分类法。这些方法仅依靠目标句子或目标单词解决文本分类问题,忽略了单词之间的关系。通常,文本方式的表达和上下文的联系对信息的表达至关重要,这使得文本分类很难通过单独每个句子或单词进行识别。
近年来,深度学习[3]在许多领域都取得了显著成果。对于文本分类,使用深度学习方法开展的研究可分为两部分:①通过神经语言模型学习词向量表达[4-5];②对学习的词向量进行合成以完成分类[6]。卷积神经网络[5,7]和递归神经网络[8-9]是文本分类中使用最广泛的深度学习模型。卷积神经网络能够从时间或空间数据中学习局部特征,但缺乏学习时序相关性的能力。与卷积神经网络相比,递归神经网络被指定用于时序建模,在文本分类中更常使用递归神经网络。LSTM 解决了传统递归神经网络存在的梯度爆炸和消失等问题[10]。BiLSTM 网络[11]是LSTM 进一步改进的模型,LSTM 和BiLSTM 已应用于文本分类并取得了一些成果[12-16]。BiLSTM 结合了前向隐藏层和后向隐藏层,可以联系前向和后向的上下文。因此,BiLSTM 可以比LSTM 更好地解决时序建模任务。
尽管BiLSTM 可以获取文本的上下文信息,但无法重点获取上下文信息中的重要信息。注意力机制[16]可以通过设置不同的权重从而突出显示上下文信息中的重要信息,BiLSTM 和注意力机制的结合可以进一步提高文本分类准确性。为了解决图书文本数据高维度、语义复杂的问题,本文提出了一种新颖的用于图书文本分类的方法。本文主要使用注意力机制对BiLSTM 进行增强,BiLSTM 用于提取上下文信息,注意力机制对从BiLSTM 中的前向隐藏层和后向隐藏层提取的信息给予不同的关注度,注意力机制加强了对重要序列的权重分配。从注意力机制层提取的特征将由Softmax 分类器进行分类。
LSTM 目前已成为RNN 的主流结构。LSTM 单元由3个门计算组成,如图1 所示。
Fig.1 Schematic diagram of LSTM unit图1 LSTM 单元示意图
LSTM 通过存储块解决梯度消失问题,存储单元能够使网络知道何时学习新信息以及何时忘记旧信息。输入门控制添加到单元的新存储内容的大小,遗忘门确定需要忘记的存储量,输出门调制输出存储器内容的数量。LSTM的数学形式计算如下:
其中,f(t)表示在时刻t遗忘门的值,输入门的值由i(t)和a(t)组成,c(t)表示在时刻t的单元状态,h(t)表示在时刻t输出门的值,它通过o(t)计算得到。W、U表示隐藏层的权重,而b表示偏差矢量。δ(·)和tanh(·)分别为S 型和双曲正切函数。所有门的值和隐藏层的输出都在[0,1]范围内。运算符⊙表示逐元素乘法。标准LSTM 网络结构如图2(a)所示,标准LSTM 网络只能利用上文数据,缺乏下文数据环境可能导致对文本含义的不完全理解。如图2(b)所示,BiLSTM通过组合前向隐藏层和后向隐藏层建立前面和后面的上下文联系,BiLSTM 对文本的理解能力比LSTM 更强。BiLSTM 所建立的网络进行正向和反向传递的方式与常规网络正向和反向传递的方式类似。
Fig.2 Schematic diagram of network structure图2 网络结构
目前,注意力机制已经成为一种选择重要信息以获得优化结果的有效方法。关于注意力机制的体系结构已有较多研究,特别是序列问题,注意力机制已成功应用于各种任务。Yang[17]针对文档分类问题,提出分层注意力网络,它在构建文档表达形式时能够分别注意重要内容;Wang[18]将微博对话作为数据序列,并利用BiLSTM 模型将先前的推文纳入上下文感知的情感分类。他们提出的方法不仅可以缓解特征空间中的稀疏性问题,而且可以捕获微博对话中的远距离情感依赖性。可以看出,BiLSTM、注意力机制处理文本问题能力较强,但较少涉及图书分类应用。鉴于此,本文结合BiLSTM、注意力机制的优势,建立基于注意力机制的BiLSTM(A-BiLSTM)的中文图书分类模型。
LSTM 擅长处理可变长度序列,但LSTM 缺乏提取下文信息的能力。此外,并非文档的所有部分都具有同等的相关性,LSTM 无法识别文档各部分之间的不同相关性,这些问题影响LSTM 的文本分类准确性。为了提高LSTM 在文本分类中的性能,本文提出了一种新的文本分类模型,该模型通过集成BiLSTM、注意力机制解决上述缺点,所提出的模型被称为基于注意力机制的BiLSTM(A-BiLSTM)。在A-BiLSTM 中,从图书信息文本中提取词向量以进行句子建模;然后BiLSTM 通过组合前向隐藏层和后向隐藏层建立前向和后向的上下文联系;再利用注意力机制对BiLSTM隐藏层的信息给予不同的关注度,以帮助理解句子的语义。A-BiLSTM 中的两个注意力机制层分别处理前后的上下文特征。最后,由注意力机制处理的关键特征被串联在一起,然后输入到Softmax 分类器中,实现图书分类。
本文使用Mikolve[19]提出的Word2vec 方法进行词嵌入。Skip-Gram 模型通过目标词预测其上下文,并捕获语义词之间的关系。假设一个文本有M 个词,wrm表示文本中第m个词的向量,m∈[1,M]。给定一个带有单词wrm的文本,通过嵌入矩阵We将单词wrm嵌入到向量xm中,可由式(7)得到。
BiLSTM 被用于从词向量的特征序列中提取上下文信息,其作用是建立更低维度的文本特征。因为所有词对上下文的图书类别信息都有不同的贡献,词向量分配不同的权重是解决问题的一种常用方法,注意力机制可以为词向量赋予不同的权重,以增强对词向量的理解。
BiLSTM 通过从词向量的前向和后向汇总信息获得文本特征,其特征包含了上下文信息。BiLSTM 包含正向LSTMf和后向LSTMb,正向LSTMf读取从Lc1到Lc100的特征序列,后向LSTMb从Lc100读取到Lc1。BiLSTM 计算式如下:
通过向前隐藏状态hf,向后隐藏状态hb获得给定特征序列Lcn的文本特征。
注意力机制着眼于关键字的特征,以减少非关键字对图书类别的影响。A-BiLSTM 中注意力机制的工作过程如下:hf输入一层感知器运算获得uf,作为hf向前隐藏状态的表示,uf如式(10)。
式中,w和b表示神经元的权重和偏差,tanh(·)是双曲正切函数。再用Softmax 函数获得归一化权重af,af如式(11)。
式中,vf表示上下文向量,M是文本中的单词数,exp(·)是指数函数。基于权重af计算前向传播词向量的加权,Fc代表前向上下文,表示为:
与前向传播类似,可以使用后向隐藏状态hb计算ab。Hc表示后向上下文,表示为:
A-BiLSTM 通过组合前向上下文表示Fc和后向上下文表示Hc来获得给定序列Lcn的文本特征。最后,获得综合上下文表示S=[Fc,Hc]。此外,在A-BiLSTM 中,Dropout 层用于避免过度拟合,Softmax 层用于生成条件概率以实现分类。
交叉熵是评估模型分类性能的常用损失函数。本文选择Adam 优化器[20]优化网络损耗函数,损失函数如式(14)。
式中,num表示样本数量,Sp表示训练样本,y是标签,y_是A-BiLSTM 的输出。
最终,可构建图书分类模型,其结构如图3 所示。
Fig.3 Book classification model图3 图书分类模型
该模型的关键点详细描述如下:首先,使用式(7)预训练词向量构造词嵌入表,获得特征序列Lc;使用BiLSTM 从特征序列中获取上下文特征特征hf和hb;利用式(12)和(13),从两个关注层的前向和后向上下文特征获得上下文表示式Fc和Hc;将上下文表示式相结合以获得综合上下文表示式S=[Fc,Hc];再将综合上下文表示式输入到Softmax分类器中以实现分类;最后使用Adam 优化器,根据损失函数式(14)更新模型参数。
在介绍数据集和实验设置后,对结果进行讨论,以评估本文所提方法的性能。
实验数据为重庆第二师范学院图书馆的馆藏图书信息。该校图书馆书目检索系统具有基本一致的体系和格式,便于数据获取和整理。使用网络爬虫,从该校图书馆书目检索系统爬取图书信息,主要抓取字段包含书名、主题词、摘要、图书类别。考虑到图书数量问题,实验中选择了法学、工学、经济学、文学、历史学,5 个类别的图书具有一定代表性。在本次实验中,每类图书5 000 册,训练集与测试集的比例为9∶1。
在训练A-BiLSTM 以提取文本中的特征时,将输入序列xm表示为第m个单词嵌入。BiLSTM 被用于从词向量的特征序列中提取上下文信息,建立更低维度的文本特征。在本次实验中,每个词向量的维数是200,所有数据集的训练批处理大小设置为50。训练时使用反向传播和Adam 算法,dropout:0.5,学习率:0.001。在训练完成后,使用测试数据集进行测试,并将测试集获得的准确度作为图书分类模型的评估指标。
3.3.1 不同模型间比较
比较不同模型的性能以验证本文所提模型的优势,将准确度作为评估指标以衡量分类模型的性能。对比模型包括支持向量机(SVM)、一维卷积神经网络(1d-CNN)、具有堆叠的多个递归层的深度递归神经网络(DRNN)、多项式朴素贝叶斯(MNB)、长短期记忆(LSTM)[21]、双向长短期记忆(BiLSTM)、结合了CNN和RNN优势的模型(CLSTM)。各模型在图书测试集上的比较结果如表1 所示。由表1 中可以看出,在上述8 种方法中,本文所提出的方法A-BiLSTM 在图书测试集上均比其他方法获得了更好的结果,在所有数据集上均优于其他方法。其A-BiLSTM 在图书测试集上的平均准确度为92.04%。与SVM、DRNN、MNB、1d-CNN、LSTM、BiLSTM、C-LSTM 相比,A-BiLSTM准确度提高了14.36%、5.63%、5.76%、4.23%、2.89%、1.94%和2.26%。与SVM、MNB 模型相比,A-BiLSTM 更优,其主要原因是深度学习方法可以有效地从输入数据中学习基本特征,SVM 与MNB 等传统方法在很大程度上取决于手动提取特征,与手动特征提取和繁琐的特征选择相比,深度学习方法自动特征学习能力更强。与基于CNN 的方法1d-CNN 相比,A-BiLSTM 比CNN 更加擅长处理序列问题,对上下文的序列特征更加敏感,特征提取能力更强,因此在图书分类结果上表现更好。与3 种基于LSTM 的方法(CLSTM、LSTM 和BiLSTM)相比,A-BiLSTM 在图书测试集上均具有较好的性能,说明本文所提出的改进方法具有可行性,为进一步说明本文方法的有效性,将增加对比验证,对改进方法加以说明。
Table 1 Average accuracy of book classification of different models表1 不同模型的图书分类平均准确度
3.3.2 BiLSTM 与注意机制层对比结果
A-BiLSTM 包含两个改进部分,即BiLSTM、注意机制层。本文将通过一组实验研究两个改进部分对A-BiLSTM性能的影响。比较用LSTM 代替BiLSTM 的A-BiLSTM(用A-LSTM 表示)、只有单层注意力机制的A-BiLSTM(用A1-BiLSTM 表示),没有注意机制层的A-BiLSTM(用BiLSTM表示)和A-BiLSTM,其结果如表2 所示。
Table 2 Average accuracy of book classification of different models表2 不同模型的图书分类平均准确度
从表2 中可以看出,注意力机制层和BiLSTM 对A-BiLSTM 的性能有很大影响,在上述4 种模型中,A-BiLSTM 可获得最佳结果。与A-LSTM 相比,A-BiLSTM 的识别率提高了1.21%。在A-BiLSTM 中,BiLSTM 可以获取图书文本之前和之后的信息,比单一从前向传播中获取图书文本的方式更加有效,BiLSTM 有效提高了A-BiLSTM 的分类精度。与BiLSTM 相比,A-BiLSTM 的识别率提高了1.94%。注意力机制层可以对BiLSTM 隐藏层中的信息实现不同的关注度,并对重要信息进行筛选,提高不同信息对模型识别的贡献度,从而优化模型。从表3 中可以观察到,当除去注意力机制层和BiLSTM 时,A-BiLSTM 的性能有所降低,证明A-BiLSTM 中的所有成分都是有用的。
此外,为验证前向和后向两层注意力机制层的作用,比较单层注意力机制层的A1-BiLSTM 和A-BiLSTM。A1-BiLSTM 中的注意力机制层的输入是BiLSTM 前向和后向结果的串联。A-BiLSTM 的识别率比A1-BiLSTM 高0.91%,验证了双层注意力机制层能够使分类模型对图书分类更加准确。使用两个注意机制层分别处理正向和反向信息要比使用单个注意机制层处理正向和反向信息更好。
本文提出了一种新的解决图书分类问题模型A-BiLSTM。从图书信息文本中提取词向量以进行句子建模;BiLSTM 通过组合前向隐藏层和后向隐藏层建立前向和后向的上下文联系,而无需任何费时的手工特征提取过程;利用注意力机制对BiLSTM 隐藏层的信息给予不同的关注度。
比较所提方法与其他方法的分类效果,结果表明本文所提出的BiLSTM 和注意力机制增强了语义理解并提高了分类准确性。双层注意力机制层分别处理前向和后向信息的效果比单层注意力机制层更好,表明多注意力层可以更好地给予重要文本信息关注度,解决了浅层CNN 和LSTM 存在提取特征不全的问题。单一神经网络结构存在缺点,后期研究考虑搭建CNN 和BiLSTM 混合网络模型,并将注意力机制融入CNN 中建立特征提取通道之间的联系,最终实现文本信息的准确分类。