一种基于多任务学习的方面级别文本情感转换方法与流程

文档序号:18319282发布日期:2019-08-03 10:18阅读:330来源:国知局
一种基于多任务学习的方面级别文本情感转换方法与流程

本发明涉及自然语言处理技术领域,尤其涉及一种基于多任务学习的方面级别文本情感转换方法。



背景技术:

文本情感转换是指将整个文本的情感转换为相反的情感,例如,将积极的情感转换为消极的情感,同时保持情感无关部分不改变。文本情感转换具有十分广泛的应用场景,例如新闻重写、评论态度转变等。

在实际情况中,一段文本往往拥有多个方面表述,对每个方面表述的情感都不尽相同,因此进行方面级别文本情感转换显得尤为重要。然而,现有技术通常仅有例如文档级别的情感转换、还无法做到有效地进行方面级别文本情感转换,此外,现有的文本情感转换方法仅关注情感转换成功率,而在内容保存上效果还很不理想。

因此,需要对现有技术进行改进,以实现方面级别的情感转换,在提高文本转换率的同时改善内容保存的效果。



技术实现要素:

本发明的目的在于克服上述现有技术的缺陷,提供一种基于多任务学习的方面级别文本情感转换方法。

根据本发明的一个方面,提供了一种基于多任务学习的方面级别文本情感转换方法包括以下步骤:

对于包含多个方面情感表述的文本,构建方面级别的文本转换学习任务并构建方面级别的情感分类学习任务;

以所述方面级别的文本转换学习任务作为主任务,以所述方面级别的情感分类学习任务作为辅助任务,通过联合训练所述主任务和所述辅助任务实现方面级别的文本情感转换。

在一个实施例中,对于文本的一个句子,所述联合训练包括:

将该句子和该句子的给定方面表述用词嵌入表示;

将该句子的词嵌入表示和所述给定方面表述的词嵌入表示输入到由长短期记忆网络和注意力层构成的模型进行学习,获得注意力权重分布,其中所述注意力权重分布反映不同词在所述方面级别的文本情感分类学习任务中的重要性;

在所述辅助任务中,将基于所述注意力权重分布得到的文档建模后的句子,利用分类器获得给定方面的情感分类标签;

在所述主任务中,基于所述注意力权重分布实现方面级别的文本情感转换。

在一个实施例中,所述主任务执行以下子步骤:

基于所述注意力权重分布检测给定方面的情感词并且对于所检测出的情感词执行掩码操作,获得转换后的句子;

以所述转换后的句子作为输入,利用序列到序列模型实现方面级别的文本情感转换。

在一个实施例中,对于一个词i,所述掩码操作包括:

计算该词被掩掉的概率pi,表示为:

其中是所述注意力权重分布的平均值,μ是控制sigmoid输出结果的超参数;

通过线性变换计算修改后的句子的词嵌入表示e′(xi):

e′(xi)=(1-pi)e(xi)+pie(s)

其中,e(s)是句子x中基于给定方面表述的情感标签s的词嵌入表示。

在一个实施例中,所述序列到序列模型包括编码器、上下文注意力模块、情感注意力模块、情感记忆模块、门控模块和解码器,其中:

所述编码器用于对修改后的句子的词嵌入表示进行编码;

所述上下文注意力模块用于计算修改的句子的内容向量,获得上下表示;

所述情感注意力模块用于从所述情感记忆模块抽取上下文相关的情感信息,获得情感表示;

所述门控模块用于基于所述上下文表示和所述情感表示,预测下一词时动态选择内容信息和情感信息,并且所述门控模块的输出向量用于生成预测词并更新所述解码器在下一时间步的隐层状态向量。

在一个实施例中,所述编码器和解码器是长短时记忆网络。

在一个实施例中,在所述联合训练中,优化目标是最小化所述主任务和所述辅助任务的总交叉熵:

l=λ1l1+λ2l2

其中,l1是辅助任务的交叉熵,l2是主任务的交叉熵,λ1和λ2是超参数。

在一个实施例中,所述注意力权重分布表示为:

其中,l表示长短期记忆网络的层数,{u1,u2,...,ul}是可学习的参数。

与现有技术相比,本发明的优点在于:提出了基于多任务学习框架的方面级别的文本情感转换方法,以方面级别文本情感转换作为主任务,方面级别文本情感分类作为辅助任务,通过端到端的联合训练这两个任务,能够高效准确地实现方面级别文本情感转换,并同时改善了内容保存的效果。

附图说明

以下附图仅对本发明作示意性的说明和解释,并不用于限定本发明的范围,其中:

图1示出了根据本发明一个实施例的基于多任务学习的方面级别文本情感转换模型的框架图;

图2示出了根据本发明一个实施例的基于多任务学习的方面级别文本情感转换方法的流程图;

图3示出了根据本发明一个实施例的电子设备的示意图。

具体实施方式

为了使本发明的目的、技术方案、设计方法及优点更加清楚明了,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。

在本文示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

本发明实施例提供方面级别的文本情感转换方法,针对有多个方面表述的句子,将其中给定的某个或某些方面表述的情感进行转换,而保持其他内容部分不变,其中,文本情感转换基于多任务学习模型框架实现,将方面级别文本情感转换作为主任务,方面级别文本情感分类作为辅助任务,通过端到端的联合训练这两个任务,最终实现方面级别的文本情感转换任务。

在本文中,方面级别情感是指以表达一个方面为粒度分析其包含的情感,例如评论产品的某一组成部分或者某一性质时体现的情感(如手机的屏幕、价格或性能等)。

图1示出了根据本发明一个实施例的基于多任务学习的方面级别文本情感转换模型的框架图,从整体上看,该模型包含两个过程,即方面级别文本情感分类和方面级别文本情感转换,其中,方面级别情感分类过程用于获得情感分类,例如,获得正/负(positive/negative)二分类、正面/负面/中立三分类,或乐观/悲伤/惊讶/愤怒等多元分类;方面级别文本情感转换用于基于获得给定方面的情感分类完成文本情感转换任务。图1示意的具体模块或单元将在下文结合文本情感转换方法进行具体介绍。

图2示出了根据本发明一个实施例的基于多任务学习的方面级别文本情感转换方法的流程图,包括以下步骤:

步骤s210,用词嵌入表示句子和方面级别情感表述。

本发明实施例的目的是,针对有多个方面表述的句子,在每个方面表述的情感都不尽相同的情况下,将某个给定方面表述的情感进行转换,同时保持其他内容部分不变。

例如,形式化定义方面级别文本情感转换任务,给定一个句子x={x1,x2,...,xn},一个方面表述a={a1,a2,...,ak}以及基于这个方面表述的情感标签s,方面级别文本情感转换的目标是生成一个新句子y={y1,y2,...,ym},其中对于给定方面表述a的情感部分进行转换,同时保持其他内容部分不变,n、k和m分别表示原句子x、方面表述a和生成的新句子y的长度。

结合图1所示,在此步骤s210中,将原句子x和给定方面表述a用词嵌入表示。例如,利用通用的预训练词向量glove模型分别对原句子x和给定方面表述a进行词嵌入表示,e(xi)和e(ai)分别表示原句子中的词xi(i取值为1,2,…,n)和给定方面表述a中的词ai(i取值1,2,…,k)的词嵌入表示。

步骤s220,通过lstm和注意力层,获得注意力权重和文本建模表示。

将句子表示x和方面级别情感表述a的词嵌入表示通过长短期记忆网络(lstm)和注意力层,得到注意力权重和文本建模表示。在此实施例中,使用多层注意力机制构建方面级别文本情感分类器。

具体地,首先用原句子x和给定方面表述a的词嵌入表示作为lstm第0层的输入表示,分别为以及上标表示lstm的层索引。

接下来,利用长短期记忆网络(lstm)来计算原句子x以及给定方面表述a的第l层表示,分别为:

然后,利用第l层的平均方面表述与句子中的第i个词计算第l层的注意力权重表示为:

其中wl是一个可学习的参数。

基于一系列可学习的参数{u1,u2,...,ul}来控制lstm不同层的权重,通过加权求和来获得总体权重分布表示为:

其中,l表示lstm的层数。

经过上述处理,可获得注意力权重分布和基于注意力权重分布的文本建模表示,其中,总体权重分布反映不同词在方面级别文本情感分类任务中的重要性。

步骤s230,将文本建模后的句子进行分类,获得方面级别的情感分类。

在本发明实施例中,联合训练主任务(方面级别文本情感转换任务)及辅助任务(方面级别文本情感分类任务),在方面级别文本情感分类任务中,将文本建模后的句子表示通过一个softmax分类器,以完成方面级别文本情感分类。

具体地,利用获得的注意力权重,对句子的词嵌入表示进行加权求和,得到句子表示

将句子表示输入到一个softmax分类器用于预测句子x中对给定方面表述a的情感标签,表示为:

其中,ws和bs是要学习的参数。

在一个实施例中,通过最小化交叉熵l1来优化方面级别文本情感分类器:

其中n为训练集中的样本实例数量。

步骤s240,利用注意力权重检测情感词将其用情感掩码掩掉,获得修改后的句子。

在联合训练中,对于方面级别文本情感转换任务,利用学习到的注意力权重来检测给定方面表述的情感词,然后将检测出的情感词用相应的情感掩码替换,产生修改后的句子,最后使用一种带情感记忆模块以及门控机制的序列到序列(seq2seq)模型,以修改后的句子为输入解码得到情感转换后的句子,从而完成方面级别情感转换任务。

具体地,为了完成方面级别文本情感转换任务,首先需要检测出给定方面表述的情感词。例如,使用权重分布来检测给定方面表述的情感词,由于权重分布可以反映不同词在方面级别文本情感分类任务中的重要性,如果某个词的权重大于权重平均值,则可以认定该词为给定方面表述的情感词。

检测出给定方面表述的所有情感词之后,用特殊的情感掩码,例如<positive>和<negative>,来掩掉这些情感词,而保持句子其它部分不变,从而得到一个修改后的句子。由于这一操作是不可微分的,为了使模型可以端到端训练,在又一个实施例中,用一种近似的方式来进行掩词操作。

具体地,首先,计算某个词被掩掉的概率pi:

其中是注意力权重分布的平均值,μ是一个控制sigmoid输出结果的超参数,使输出结果尽可能接近0或1。

然后,通过一个线性变换计算修改后的句子的词嵌入表示e′(xi):

e′(xi)=(1-pi)e(xi)+pie(s)(8)

其中e(s)是句子x中基于给定方面表述的情感标签s的词嵌入表示,pi根据公式(7)计算获得。

步骤s250,对修改后的句子进行文本转换。

在图1的实施例中,方面级别文本情感转换过程是一个序列到序列(seq2seq)模型,包括编码器、解码器、上下文注意力模块、情感注意力模块、情感记忆模块、门控等模块。

在一个实施例中,编码器可以是一个长短期记忆网络(lstm),以修改后的句子的词嵌入表示为输入,用于编码修改后的句子,生成隐层状态向量。在时间步i,隐层状态向量hi可以由先前时间步i-1的隐层状态向量hi-1以及当前输入e′(xi)得到,表示为:

hi=lstm(hi-1,e′(xi))(9)

因此,可以获得修改后的句子对应的隐层状态向量h=[h1,h2,...,hn]。

在一个实施例中,解码器也是长短期记忆网络(lstm),并通过情感记忆模块和门控机制的辅助以实现解码,其中情感记忆模块表示为m∈rc×γ×d,用于存储情感信息,c是情感类别数目,γ是情感记忆模块大小,d是隐层状态向量的维度。

具体地,在解码的每一个时间步t,首先通过上下文注意力机制计算一个内容向量ct:

其中wc是一个可学习的参数,st是解码器在时间步t的隐层状态向量。

然后,通过情感注意力机制从情感记忆模块抽取上下文相关的情感信息zt:

其中wz是一个可学习的参数,a是给定方面表述的表示,ms,i表示情感记忆模块中的情感相关信息,即在训练过程中学习到的情感相关信息。

例如,情感记忆模块包括两个情感矩阵,一个positive的,一个negative的,这些矩阵是在训练过程中学习获得,此处,下标s表示是哪个情感记忆矩阵,positive的还是negative的,i表示情感矩阵中的某一个具体组成。

在该实施例中,在解码时还设计了一种门控机制,用于在预测下一个词时动态选择内容信息和情感信息。

gt=sigmoid(wg[ct;zt;st])

ot=wo[st;(1-gt)ct+gtzt](12)

其中wg和wo是可学习的参数,输出向量ot用于在时间步t时生成预测词,以及更新解码器在下一时间步的隐层状态向量st+1:

st+1=lstm(st,[e(yt);ot])

p(yt|y<t;x,a,s)=softmax(wpot+bp)(13)

其中,wp和bp是可学习的参数。

因为没有成对的数据可用于方面级别文本情感转换任务,通过重建回原来的句子来训练这个模型,在一个实施例中,通过最小化交叉熵来优化方面级别文本情感转换模型:

其中yi,j表示训练集中第i个句子的第j个词。

为了促进共享文本建模模块的学习,同时训练这两个任务,基于多任务学习的文本情感转换模型的总交叉熵表示为:

l=λ1l1+λ2l2(15)

其中λ1和λ2是超参数,优选地,当λ1=0.1以及λ2=0.9时能获得最佳效果。

上述步骤s230、s240和s250是联合训练过程,通过训练可优化模型中的可学习参数。

在测试阶段,检测出的给定方面表述情感词被相反情感的掩码替换,从和原来情感相反的情感记忆模块中抽取情感信息,用于生成方面级别文本情感转换后的句子。

需要说明的是,在不违背本发明精神和范围的前提下,本领域的技术人员可对上述实施例进行适当的变型,例如,将softmax分类器替换为logistic分类器,将lstm替换为gru(gatedrecurrentunit)等。此外,根据本发明实施例获得联合训练后的模型之后(即优化了可学习参数),训练后的模型可用于新文本的情感转换。

为了进一步验证本发明的有效性和先进性,利用提出的基于多任务学习的方面级别文本情感转换方法,对semevalabsa任务中的restaurant和laptop这两个广泛使用的现实评论数据集进行了大量实验。实验结果表明,本发明实施例能够得到方面级别文本情感转换的最好结果,在考虑情感转换成功率的同时兼顾内容保存效果,展现出巨大优越性,具有十分广阔的应用前景。

综上所述,本发明提出的基于多任务学习的方面级别文本情感转换方法,有效地解决了针对方面级别的文本情感转换任务,具有十分重要的现实意义。本发明提出的多任务学习框架,以方面级别文本情感转换作为主任务,以方面级别文本情感分类作为辅助任务,两个任务相互协调,相辅相成,通过端到端的联合训练这两个任务,高效准确地实现方面级别文本情感转换。此外,在方面级别文本情感转换任务利用情感记忆模块和门控机制来解码时动态选择内容信息以及情感信息,保证了较高的情感转换成功率以及较好的内容保存效果。

图3是根据本发明一个实施例的电子设备300,包括存储器310、处理器320及存储在存储器310上并可在处理器320上运行的计算机程序311,处理器320执行计算机程序311时实现本发明实施例的基于多任务的方面级别的文本情感转换方法,例如包括:对于包含多个方面情感表述的文本,构建方面级别的文本转换学习任务并构建方面级别的情感分类学习任务;以所述方面级别的文本转换学习任务作为主任务,以所述方面级别的情感分类学习任务作为辅助任务,通过联合训练所述主任务和所述辅助任务实现方面级别的文本情感转换。

由于本发明描述的电子设备是实施本发明实施例中一种基于多任务的方面级别的文本情感转换方法所采用的设备,故而基于本发明实施例中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本发明实施例中的方法不再详细介绍,只要本领域所属技术人员实施本发明实施例中的方法所采用的设备,都属于本发明所欲保护的范围。

需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。

本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。

计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1