基于集成深度迁移学习的多源跨领域情感分类
2018-12-12赵传君王素格李德玉
赵传君,王素格,2*,李德玉,2
(1.山西大学 计算机与信息技术学院,山西 太原 030006; 2.计算智能与中文信息处理教育部重点实验室,山西 太原 030006)
0 引言
传统的情感分类一般假设用于训练和测试数据的情感分布是一致的。然而在现实条件下,情感的表达是领域依赖的,不同领域的情感分布是不一致的[1-2]。在社会媒体中,用户倾向于在不同的领域中用不同的情感词来表达情感,而且同一个情感词或者短语在不同的领域中的情感极性可能是不同的[3]。因此,当一个源领域训练的分类器转移到另一个与源领域特征集和特征分布不一致的目标领域时,效率和精度会出现明显下降。跨领域的情感分类被定义为通过迁移源领域的情感信息到目标领域,利用相关源领域带标签的数据学习一个精确的情感分类器,实现对目标领域不带标签数据的情感极性分类任务[4]。在解决跨领域的情感分类任务时,迁移学习(Transfer learning,TL)通过实例迁移、特征迁移、模型迁移和相关知识迁移等手段将源领域的情感知识迁移到目标领域的情感分类任务中。迁移学习的引入,有效减少了目标领域训练数据的规模,还可以有效避免过度拟合现象。此外,迁移学习能够通过发现大数据和小数据问题之间的关联,把从大数据中发现的知识迁移到特定的小数据问题中[5]。
在深度学习(Deep Learning,DL)背景下,目标领域的带标签数据往往不足以训练一个有效的深度神经网络模型。在此情况下,标注大量的目标领域训练数据是非常耗时耗力的。深度迁移学习(Deep Transfer Learning,DTL)能够通过共享源领域和目标领域的特征表示和部分模型参数,将源领域中学到的特征表示迁移到目标领域中,以此利用神经网络的可迁移性提高目标领域任务的表现[6]。跨领域情感分类任务往往存在多个用于训练的源领域数据。集成学习作为机器学习的研究热点之一,其目的是利用多个模型的差异性提高学习系统的泛化性能[7]。集成深度迁移学习(Ensemble of Deep Transfer Learning,EnDTL)利用集成学习和深度迁移学习的优势,通过共享领域间的模型参数和特征表示,将多个源领域信息进行融合,相比较单源领域可减少过拟合的风险,有效避免负迁移现象[8]。通过迁移两个或更多的源领域的知识来辅助目标领域分类,与目标领域有较高相关度的源领域数据集应具有较高的迁移率[9-10]。
目前,多源领域情感迁移问题存在以下两点挑战:(1)不是所有的源领域知识都可以应用到目标领域中,相关性较低的样本会引入大量负迁移知识,反而会降低目标领域预测分类器的分类性能;(2)多个源领域情感知识之间往往存在共性和交叉,如何有效融合多个源领域的信息来辅助目标领域的分类成为关键。
本文从参数迁移和集成学习的角度,提出了一种多源信息融合的集成深度迁移学习跨领域文本情感分类框架。首先采用字符向量增强的深度卷积神经网络模型(Characters Enhanced Deep CNNs Model)进行深度特征提取。通过迁移模型中的共享网络部分和重新训练领域特定层,完成从源领域训练模型到目标领域训练模型的迁移。采用目标领域带标签数据来确定每个分类模块的权重系数,利用集成学习策略融合多个源领域知识提高框架的鲁棒性。在英文多领域数据集上的实验表明,本文提出的集成深度迁移学习框架较基准方法可有效提高多源跨领域情感分类的准确率。
1 相关研究
已有很多学者利用迁移学习算法实现源领域到目标领域的情感迁移[11],而目标领域分类预测有效性很大程度上取决于源领域与目标领域之间的相关性程度和所采用的迁移算法[12]。按照可用的源领域的个数,跨领域情感分类可分为单源领域(Single-source Domain)和多源领域(Multi-source Domains)的跨领域迁移。本文相关工作主要介绍在单领域上的深度情感迁移学习和多源跨领域迁移学习。
1.1 单源深度情感迁移学习
单源跨领域情感分类往往是根据单个源领域的数据完成到目标领域的情感迁移。最新的研究是利用端到端的深度神经网络来实现源领域到目标领域的情感迁移任务,主要是利用参数迁移的手段实现训练模型的迁移。Bollegal等人[13]将跨领域情感分类看作嵌入学习任务,构造了三种目标函数,分别是共同特征的分布式属性、源领域文本的标签约束信息、源领域和目标领域不带标记样本的几何特性。Zhao等人[14]针对短文本跨领域情感分类任务提出了一种两阶段的双向长短时记忆模型(Bi-LSTM)和参数迁移框架,通过使用少量的目标领域训练样本共享Bi-LSTM网络的底层参数和重新训练高层参数。为了解决源领域训练的分类器在其他目标领域表现不佳的问题,Zhu等人[15]将特征抽取方法合并到神经网络模型中,并应用到跨领域情感分类中。针对跨领域的情感分类问题,Li等人[16]提出了两种端到端的对抗记忆网络框架,分别是情感分类和领域分类记忆网络。同样,为了解决情感分类的领域适应性问题,Bach等人[17]提出了特征学习和特征子空间映射方法,并将词嵌入和典型相关性分析应用到跨领域情感分类任务上。在深度神经网络基础上,迁移学习用于特定任务将会受到大规模语料集的限制,Wei等人[18]提出了一种两层的卷积神经网络,用于跨领域的产品评论分类任务。Glorot等人[19]提出了一种深度学习策略来解决情感分类的领域适应性问题。通过使用一种无监督的深度学习范式来获得每篇评论的表示,在Amazon四种类型的产品评论上进行实验,表明了使用高层次特征训练的情感分类器优于基准方法。Yu等人[20]使用神经网络架构来研究跨领域的情感分类问题,借鉴结构一致化学习策略,利用两个辅助的任务并引入句子嵌入跨领域情感分类框架中。
1.2 多源跨领域迁移学习
当存在多个源领域数据集的情况下,多源迁移学习方法提取的迁移知识已不再局限于单个的源领域数据集,而是来自于两个或多个源领域数据集。大部分多源迁移学习主要采用基于样本迁移或者参数迁移的学习方法。与本文较相关的为参数迁移。从参数迁移的角度看,Yao等人[21]提出了TaskTrAdaBoost算法,假设目标领域预测模型与具有强迁移性的源领域数据集共享某些模型参数。在多个领域情况下,Hoffman等人[22]在分层聚类技术基础上,利用可用的目标类别信息,从而成功地发现潜在的源领域。Tan等人[23]定义了多视角和多源领域的迁移学习,提出了一种利用不同视角和源领域知识的协同算法。通过不同源领域互相协同训练的方法,可以弥补不同领域之间的分布差异。Ge等人[24]提出了一种快速的、可扩展的在线多领域迁移学习框架。此框架在目标领域的信息指导下从多个源领域中迁移知识。Zhuang 等人[25]提出了一种多个源领域的迁移学习框架(CRA)。该框架利用自编码器构造从初始的样本到隐含表示的特征映射,从源领域的数据中训练多个分类器,最后通过执行基于熵一致正则化矩阵完成目标领域样本的预测。
2 集成深度迁移学习框架
为了实现多源领域带标签数据到单个目标领域的情感迁移,利用深度集成迁移学习,建立深度特征抽取、模型迁移学习、集成学习训练和测试三个阶段。具体思路为结合目标任务给定语料资源类型,将多个源领域与目标领域分别组合,利用字符增强的深度卷积神经网络模型训练情感分类器,之后进行深度情感迁移学习,最后采用集成学习框架完成对目标领域数据的分类任务。
2.1 深度特征抽取
在文本分类任务中,卷积神经网络(Convolutional Neural Networks,CNNs)可以捕捉句子的局部相关性信息。因此,可以利用CNNs来提取句子中类似多元语法的关键信息。本文使用字符向量增强的深度卷积神经网络模型(Characters Enhanced Deep CNNs Model)抽取有用和判别性的特征,框架图如图1所示。深度特征抽取主要包含四个主要层:(1)字符和词输入层;(2)卷积层;(3)池化层;(4)全连接输出层。
Fig.1 Framework of characters enhanced deep CNNs model图1 字符向量增强的深度卷积神经网络模型图
(1)输入层:字符级别层利用字符的序列特征输出字符层面的信息表示。词层面联合字符的特征表示和词向量,通过组合上下文信息来输出一个新的特征表示,可以有效捕捉底层语义特征。对于每篇评论文本,输入词序列x=(w1,w2,…,wn),wi∈Rd为第i个词的词向量表示,d是词向量的维度。词wi的字符序列为wi=(c1,c2,…,cj),cj∈Rd为第j个字符的字符向量,对字符向量执行平均池化并加入到wi中。图1中评论文本有n个词,输入层是句子中的词语对应的词向量依次(从上到下)排列的矩阵,评论文本的表示矩阵为W∈Rn×d,作为CNNs的输入。
(2)卷积层:输入层经过卷积操作可以得到若干个特征映射。卷积窗口大小分别对应unigram、bi-gram和tri-gram,这三种大小的窗口可以捕捉诸如“like”、“not hate”和 “do not love”等词的语义信息。wi:i+m-1代表wi,wi+1,…,wi+m-1,表示m个纵向词语。新的特征gi由窗口wi:i+m-1生成,gi=f(eT·Wi:i+h-1+b),其中,f为非线性激活函数,e∈Rm×d为卷积核,b∈R为偏置项。卷积操作被应用于所有可能的窗口,得到卷积后的矩阵为g=[g1,g2,…,gn-h+1].
2.2 模型迁移学习
跨领域深度情感迁移学习过程:首先在源领域训练集上预训练一个神经网络情感分类器,然后通过模型迁移的手段迁移部分参数到目标领域中,最后使用目标领域的带标签情感数据重新训练和提升分类器,完成目标领域数据的情感分类任务。已有的研究表明在目标领域使用预训练的深度迁移网络要比随机初始化权重效果好,也说明了深度神经网络模型具有良好的可迁移性[14]。本文提出的深度卷积神经网络模型迁移学习框架如图2所示,通过迁移模型中的参数,实现源领域到目标领域的模型迁移。
Fig.2 Framework of deep CNNs model transfer learning图2 卷积神经网络模型迁移学习框架图
图2中的神经网络可以分为两个部分:领域共享网络(Domain Shared Networks)和领域特定层(Domain Specific Layers)。源领域中神经网络参数为WS,目标领域中神经网络参数为WT,领域共享网络的参数记为W。
(1)
模型训练利用梯度下降法,见公式(2),其中,μS为学习速率。
(2)
由于目标领域的分布PT(X)与源领域的分布PS(X)不同,因此,在初始化目标领域情感分类模型参数时,利用领域共享网络的参数W,并随机初始化领域特定层参数。利用目标领域的带标记数据集DT,用于训练目标领域的模型参数,其目标函数见公式(3)所示。
(3)
模型训练利用梯度下降法,见公式(4),其中,μS为学习速率,且μT<μS.
(4)
2.3 集成深度学习框架
为充分利用多个源领域的信息,本文提出了一种新的集成深度迁移学习框架。如图3所示,此框架主要包含两部分:多领域联合迁移学习(Multi-domain Joint Transfer Learning)和目标领域测试阶段(Classification Stage)。
Fig.3 Framework of deep Ensemble Learning model图3 集成深度学习框架图
为了得到评论文本x的最终情感类别标签,将x在各分类器fiT的概率加权,构建集成分类器fens,如公式(5)所示。
(5)
利用公式(5)可以得到样本x的标签为yi.
为了获得各基分类器的权重{wi},使用目标领域的验证集数据训练加权集成分类器fens和{wi},其优化过程如公式(6)所示。
(6)
在目标领域测试阶段,输入目标领域的测试样本,通过训练好的加权集成分类器fens对测试样本预测其标签,输出其情感类别标签(正面或者负面)。
3 实验及分析
3.1 数据集
本文选取了在跨领域情感分类中经常采用的英文多领域数据集[注]http:∥www.cs.jhu.edu/~mdredze/datasets/sentiment/。具体为亚马逊网站上的Book(B)、DVD(D)、Electronics(E)和Kitchen(K)四个领域的正面和负面各1000篇评论文本。在选择目标领域数据集随机抽取20%的目标领域数据作为目标领域训练数据集,20%目标领域数据作为验证集,其余数据作为测试数据集,其他的领域作为源领域数据集。
3.2 实验设置
本文使用预训练的词向量为在2014年的英文维基百科上训练的GloVe词向量,每个词用100维向量表示,对于未登录词的词向量随机初始化。词向量在训练过程中当作是可优化的参数,训练过程中动态调整。字符向量表示利用源领域和目标领域的所有文本集共同训练。批处理大小为50,迭代次数为25,使用Relu非线性激活函数。
卷积层的特征映射的数量设置l=100,池化层后最终得到300维向量。为了防止过拟合,在全连接层加入了Dropout,从而随机地舍弃一部分连接,Dropout的参数为0.50;在Softmax分类时使用L2正则项,正则项的系数是3。参数优化方法为Adadelta,在模型迁移时,在源领域的初始学习率设置为μS=0.20,目标领域初始学习率为μT=0.05.
3.3 评价指标
本文采取精度作为最终结果的评价指标:“精度(Accuracy)=分类正确的文本数/测试文本的总数”作为实验结果的评价指标。
3.4 比较方法
(1)DTL:将k个源领域混合为一个领域预训练情感分类器,用本文3.2节中深度模型迁移方法实现到目标领域的迁移学习任务,沿用3.2节的实验设置。
(2)EnSVM:集成SVM模型,以SVM模型[注]https:∥www.csie.ntu.edu.tw/~cjlin/libsvm/替代CNNs模型进行模型迁移和集成学习,运用Fisher特征选择方法[26]进行特征选择,选取前800个有效特征。
(3)TaskTr:Yao等人[21]提出的两阶段TaskTrAdaBoost算法,首先用源领域数据训练CNNs模型并抽取合适的参数,再用参数迁移策略提升地训练目标领域分类器。参数设置为:最大迭代次数为100,正则化参数阈值为0.6。
(4)CRA:Zhuang 等人[25]提出的多源领域迁移学习算法,能够同时学习隐含表示和分类器。算法采用Logistic回归作为基分类器,隐含节点个数设为10,参数α=1,β=0.5 .
(5)EnDTL:本文提出的集成深度迁移学习框架。
3.5 实验结果
在多领域数据集上,五种不同的迁移方法分别在两个源领域迁移到目标领域、三个源领域迁移到目标领域的精度以及平均精度(Average),如表1和2所示。
由表1和表2可以看出:
(1)EnDTL相比较DTL方法,在两个源领域和三个源领域的情况下,平均精度分别提高了9.8%和12.6%。这说明对源领域分组加权集成的方法,考虑了多个源领域与目标领域不同的相关性,使得目标领域的学习能充分利用所有源领域信息,可有效利用源领域数据,提高迁移准确性。同时,EnDTL较EnSVM方法平均精度分别提高了7.4%和6.9%,这表明字符向量增强的深度卷积神经网络模型较传统SVM模型有很好的适应性。
表1 五种不同迁移方法在两个源领域情况下跨领域分类精度(%)
表2 五种不同迁移方法在三个源领域情况下跨领域分类精度(%)
(2)EnDTL较TaskTr和CRA方法,在两个源领域和三个源领域的情况下,平均精度分别提高了8.1%、2.2%和9.9%、0.3%,验证了本框架的有效性。本文使用字符向量增强的CNNs作为特征提取器,可以更加有效地提取情感特征,采用集成学习方法集成迁移学习模型可以提高泛化性。
(3)三个领域作为源领域的分类精度要明显高于两个领域的情况,五种迁移方法分别提高了6.5%、9.8%、7.5%、11.2%和9.3%。这表明更充分的源领域信息可以提高目标领域分类的准确率。
(4)源领域与目标领域的相关性对于迁移效率具有较大的影响,与目标领域有较高相关度的源领域数据集通常具有较高的迁移率。例如,在迁移到领域D的情感分类预测中,B+K→D和E+K→D任务相比较B+E→D任务性能提升较小,这是因为领域K对于领域D的弱相关性。
4 结束语
本文综合运用卷积神经网络、迁移学习和集成学习等策略,利用预训练的字符向量和词向量、卷积神经网络的卷积、池化等操作提取评论文本的情感语义信息,通过迁移学习实现源领域到目标领域的模型迁移,最终通过集成学习方法联合各基分类器输出。通过跨领域情感分类实验,验证了我们提出的框架较已有方法有较好的分类精度和较强的鲁棒性。
本文仅从迁移学习中模型迁移的角度进行了研究,下一步将考虑实例迁移和参数迁移相融合的方法。即在训练基分类器时,应考虑挑选更有效的带标记数据进行模型迁移。此外,如何更好地进行各种基分类器的融合也是下一步需要研究的问题。