Actionable and Political Text Classification using Word Embeddings and LSTM
Rao A, Spasojevic N. Actionable and Political Text Classification using Word Embeddings and LSTM[J]. arXiv preprint arXiv:1607.02501, 2016.
关键词
文本分类;社交媒体;深度学习;神经网络;LSTM模型;可行动性;政治
目标问题
在文本分类领域,大量的研究是关于情感挖掘问题,而其他形式的文本分类则研究得相对较少。在一部分应用场景下,只获取文本的情感分类不足以提供充分的信息来满足应用需求。论文考虑使用基于应用上下文标准的文本分类。其中应用的技术包括:词嵌入和长短期记忆人工神级网络。具体应用为文本可行动性分类和政治倾向分类。
论文主要贡献
词嵌入已经被证明是文本语义特征提取的有效工具,LSTM网络能有效完成与文本序列有关的任务。论文将两者结合来解决基于上下文的文本分类问题。
方法与模型
预处理
输入的信息被分词(tokenized)后作为神经网络的输入。每一个词例(token)的词频作为其索引。词频排名前V的词例组成词汇库。每一条信息可以被转化为词频索引序列。论文选择一个最大允许长度作为每一个索引序列的固定长度,如果索引序列实际长度小于最大允许长度,用数字0补充多余的索引。
神经网络架构
递归神经网络(Recurrent Neural Networks,RNNs) 是神经网络的一类。与传统升降网络不同的是,RNNs使用一种具有内部状态、能保存前向事件信息的单元(unit),因此非常适用于需要处理连续信息的场合,比如文本处理。
传统的RNNs不能保存长期依赖关系,长短期记忆(Long Short Term Memory ,LSTM)神经网络则能避免这个问题。
论文使用的神经网络模型应用了词嵌入和LSTM单元实现基于上下文的文本分类,具体的神经网络层次结构如下:
嵌入层
网络的第一层是嵌入层。嵌入层的目的是建立离散词汇库中的词语到低维向量空间的映射。这种词汇的分布式表示在建立概念之间的关系上具有极大优势。通过嵌入层,实现了文本特征的自动提取,无需手动定义特征。
LSTM层
网络的第二层是LSTM层。LSTM层由若干个LSTM单元组成。一个LSTM单元相当于一个记忆细胞,由四部分组成:一个输入门,一个一个自循环连接,一个遗忘门以及一个输出门。
退出层
退出(Dropout)是神经网络中避免过拟合的一种调节机制,通过随机中止部分神经单元来避免共同适应。
充分连接层
充分连接层中,上一层所有的激活都充分连接。这一层用来学习高层次特征间的非线性结合。
损失层
这一层用来衡量预测结果和实际结果之间的偏差。论文使用二维交叉熵作为损失函数。
实验一:可行动性预测
可行性实验判断是将消息划分为可行动的或者非可行动的两类。
数据集
数据集来源于一个社交媒体平台。该平台帮助代理代表公司对顾客来信进行回复。平台整合了多个社交媒体平台,包括Twitter、Facebook、google+、品牌社区以及在线论坛。
监督训练的标签通过以下方式收集:如果代理对一条信息进行了回复,这条信息则被标注为可行动的(Actionable),用1作为标签;反之则为非可行动性的(Non-Actionable),用0作为标签。论文使用了从2014.11.1到2015.05.1为期6个月的数据,收集了同等数量的可行动数据集和非可行动性数据集。80%的数据集用来训练,余下的20%用来测试。实验针对多种语言,因此每一种语言都包括一组训练集和测试集。实验还包括一组包含所有语言的数据集。数据集大小随语言变化,最小的2.7万条信息(Farsi)到最大的850万条信息(English)。混合语言数据集规模为170万。
实验结果
实验结果分析
与传统神经网络比较,在Arabic以外的其他语种,论文使用的LSTM神经网络预测精度上表现更佳。具体结果见下表:
模型建立中的一个参数变量是词表规模,记作V。如table 1所示,实验选取了V的两个值,20,000和100,000。从整体实验结果来看,两个词表的测试集精度相差不大。这表明较小的数据集同样能有效预测消息的可行动性,并且模型训练时间开销更小。
实验二:政治倾向预测
第二个文本分类任务是判断与美国政治相关的政治倾向。根据消息中表现出的观点,将消息分为民主党或者共和党。
数据集
数据收取方式:根据twitter上其他用户创建的twitter 名单,选取Twitter上政治倾向明确的用户。收集这些用户从2015.10.12到2016.1.12为期三个月发布的信息。如果是民主党,则标记为0,如果是共和党则标记为1。训练集和测试集的比例为8:2,规模分别为336,000和84,000。
训练与评估
使用与第一个实验相同的神将网络模型(嵌入层和LSTM层各有128个单元),得到的结果为:训练集的精度为88.82%,测试集的精度为87.57%。
模型参数对训练结果的影响
嵌入层、LSTM层的单元数变化对模型精度的影响参考Figure 2。Figure 2(a)显示当LSTM为固定64个单元时,模型精度随嵌入层单元数量的变化情况;Figure 2(b)显示当嵌入层为固定128个单元时,模型精度随LSTM单元数量的变化情况;Figure 3(b)显示当LSTM层和嵌入层单元数量同时增长时,模型精度的变化情况。
优化器(optimizers):Adam优化器精度最高,为87.57%;其次是Adagrad,为87.12%;RM-Sprop,87.06%
批规模(batch size):较小的批规模会使模型精度稍微提高,但较大的批则使模型收敛的更快。实验结果表明,当批大小为64时,模型精度达到87.57%,并且相对收敛较快。
激活函数(activation):使用sigmoid激活函数比tanh函数在准确度上提高了0.5%。
从Figure2可以看出,模型精度随着LSTM层和嵌入层单元数量增加呈现增长趋势,但是关于参数如何选择仍然是一个开放问题。但Figure2表明,随着参数变化,模型精度在一个较小的区间浮动,变化总体相对较小。另外,使用规模较小的网络在训练时间和内存限制上存在优势。