一种方面级情感分析的预训练语义组合细化方法技术

技术编号:38263052 阅读:15 留言:0更新日期:2023-07-27 10:22
本发明专利技术公开了一种方面级情感分析的预训练语义组合细化方法,涉及人工智能中的自然语言识别处理领域。首先,提出了一种改进的预训练语义全局细化方法,使用串行的多层逐点卷积对预训练语义进行全局细化。其次,在全局语义细化中,使用门机制将输出的池化向量与分类符的输出向量相结合,以产生更具表现力的情感分类向量。再者,在语义细化层中添加了三个不同窗口尺寸的并行卷积神经网络,进行多粒度局部语义细化,从而进一步加深模型对情感句子的理解。最后,将逐点卷积层数与并行卷积神经网络的窗口尺寸设置为动态超参数,采用联动测试的方式在不同语料中分别进行设置,从而使得模型在不同的语料中都有最佳表现。在不同的语料中都有最佳表现。在不同的语料中都有最佳表现。

【技术实现步骤摘要】
一种方面级情感分析的预训练语义组合细化方法


[0001]本专利技术涉及自然语言识别处理领域中的情感分析,具体是一种方面级情感分析的预训练语义组合细化方法,可广泛应用于各个领域的方面级情感分析任务中。

技术介绍

[0002]方面级情感分类的目的是预测方面词在句子或者文档中的极性,它是一项细粒度情感分析的任务,与传统的情感分析任务不同,它是在方面词上做情感极性分析(一般为积极、消极、中性三个分类)。方面级情感分类常用在评论人的评论句子中,如:商场购物评论、餐饮评论、电影评论等。方面级情感分类,通常在一个句子中有多个方面词及其相关的情感极性。
[0003]随着人工神经网络技术的不断发展,各种神经网络如Long Short

Term Memory(LSTM)、Deep Memory Network和Google AI Language提出的Bidirectional Encoder Representations from Transformers(BERT)预训练神经网络语言模型被应用于方面极性分类,从而为其提供端到端的分类方法,而无需任何特征工程工作。当句子中有多个目标时,方面极性分类任务需要区分不同方面的情绪。因此,与句子级情感分析中只有一个整体情感类别相比,方面极性分类任务需要更细腻的情感分析,虽然可以通过预训练神经网络语言模型BERT对评语进行深入理解,但实验表明BERT对两极化的小语料,如SemEval 2015task 12与SemEval 2016task 5,有较大的改进,而在包含大量中性评论的情感模糊的场景,如ACL14任务的Tweet语料,基于BERT的性能改进却是有限的。因此,目前出现了在BERT之上增加并行多通道逐点卷积,对BERT输出的情感分析语义进一步细化。然而,多通道逐点卷积仅能进行全局语义的细化,无法进行短语级的语义抽取,而评语句中经常使用一些短语来表达方面目标的情绪,如“热情的氛围(warm vibe)”和“友好的服务(friendly service)”。为改进对方面级情感分析的预训练语义的细化,本专利技术提出一种方面级情感分析的预训练语义组合细化方法。首先,与使用并行多通道逐点卷积的现有全局细化方法不同,本专利技术使用串行的多层逐点卷积对BERT语义进行全局细化。更重要的是,与现有模型中仅使用细化输出的池向量作为分类向量不同,本专利技术使用门机制将池化向量与分类符的输出向量相结合,从而产生更具表现力的分类向量。其次,本专利技术提出多粒度短语抽取在方面级情感分析任务中也非常重要,并在语义细化层中添加了三个不同窗口尺寸的并行卷积神经网络(CNNs),进行多粒度局部语义细化。

技术实现思路

[0004]本专利技术公开了一种方面级情感分析的预训练语义组合细化方法,包括以下步骤:
[0005]S1.将评语句子X与其待评测的方面目标A组成一个句子对,送入一个预训练神经网络语言模型BERT中,得到方面级情感分析的预训练语义H,然后分别将H送入步骤S2的全局语义细化模块与步骤S3的多粒度局部语义细化模块;
[0006]S2.将预训练语义H送入一个串行的多层逐点卷积层,进行逐点语义细化,得到全
局语义细化的初级语义H
g
,并将H
g
和预训练语义H进行组合,得到组合全局细化语义然后将的平均池化向量与中分类符的隐藏状态相连接,通过一个门控机制组合成全局语义细化的输出向量Z
g
,最后转步骤S4;
[0007]S3.将预训练语义H分别送入三个窗口尺寸不相同且连续的并行卷积神经网络,进行多粒度局部语义细化,并将三个并行卷积神经网络的输出进行最大化池化,然后将三个并行卷积神经网络的最大化池化向量连接起来,得到多粒度局部语义细化的输出向量Z
l

[0008]S4.将全局语义细化的输出向量Z
g
与多粒度局部语义细化的输出向量Z
l
组合起来,得到待评测的方面目标A的最终情感分类向量Z,然后将Z送入一个全连接的分类层,对待评测的方面目标A进行情感预测;
[0009]S5.使用步骤S1到步骤S4,在方面级情感分析数据集Ψ的训练集上,对预训练神经网络语言模型BERT进行微调;
[0010]S6.使用步骤S5微调的BERT模型,并采用步骤S1到步骤S4,对方面级情感分析数据集Ψ的测试集中的方面目标进行情感极性分类;
[0011]所述BERT模型是指GoogleAILanguage提出的BidirectionalEncoderRepresentationsfromTransformers(BERT,基于Transformers的双向编码器表示)预训练神经网络语言模型。
[0012]进一步的,所述步骤S1具体包括:
[0013]S1.1将评语句子X与其待评测的方面目标A组成一个如下形式的BERT句子对输入序列S:
[0014][0015]其中,w
[cls]为BERT模型的分类符,w
[sep]为BERT模型的分隔符,为评语句子X在BERT中的词序列,为方面目标A在BERT中的词序列,n为句子对输入序列S中词的个数,d
w
为BERT中词编码的维度;
[0016]S1.2将S送入BERT模型进行处理,得到方面级情感分析的预训练语义H:
[0017]H=BERT(S)={h1,h2,h3,...,h
n
}∈R
n
×
d
(2)
[0018]其中,{h1,h2,h3,...,h
n
}为S在BERT中的隐藏状态序列,BERT(
·
)表示一个BERT模型,d为BERT模型的隐藏状态的维度。
[0019]进一步的,所述步骤S2具体包括:
[0020]S2.1将预训练语义H送入一个串行的多层逐点卷积层MPC(Multi

layerPoint

wiseConvolutions)中,进行逐点语义细化,得到全局语义细化的初级语义H
g
,计算过程如下:
[0021][0022]其中,MPC中的卷积窗口大小为1,MPC中的卷积核数量设置为与BERT中隐藏状态的维数d相同,σ1(
·
)表示整流线性单元(ReLU)激活函数,符号“*”表示卷积层中所有卷积核的卷积运算,与分别是第i个卷积层的权重矩阵与偏置向量,分别为第i个与第i

1个逐点卷积层的输出;当i等于1时:即MPC的初始输入
是BERT输出的预训练语义H;当i等于m时,得到全局语义细化的初级语义H
g
,即m是MPC中逐点卷积的层数,它是一个可学习的动态超参数,所述动态超参数是指对于不同的数据集可以取不同值的超参数;
[0023]S2.2将H
g
和预训练语义H进行组合,得到组合全局细化语义计算过程如下:
...

【技术保护点】

【技术特征摘要】
1.一种方面级情感分析的预训练语义组合细化方法,其特征在于包括以下步骤:S1.将评语句子X与其待评测的方面目标A组成一个句子对,送入一个预训练神经网络语言模型BERT中,得到方面级情感分析的预训练语义H,然后分别将H送入步骤S2的全局语义细化模块与步骤S3的多粒度局部语义细化模块;S2.将预训练语义H送入一个串行的多层逐点卷积层,进行逐点语义细化,得到全局语义细化的初级语义H
g
,并将H
g
和预训练语义H进行组合,得到组合全局细化语义然后将的平均池化向量与中分类符的隐藏状态相连接,通过一个门控机制组合成全局语义细化的输出向量Z
g
,最后转步骤S4;S3.将预训练语义H分别送入三个窗口尺寸不相同且连续的并行卷积神经网络,进行多粒度局部语义细化,并将三个并行卷积神经网络的输出进行最大化池化,然后将三个并行卷积神经网络的最大化池化向量连接起来,得到多粒度局部语义细化的输出向量Z
l
;S4.将全局语义细化的输出向量Z
g
与多粒度局部语义细化的输出向量Z
l
组合起来,得到待评测的方面目标A的最终情感分类向量Z,然后将Z送入一个全连接的分类层,对待评测的方面目标A进行情感预测;S5.使用步骤S1到步骤S4,在方面级情感分析数据集Ψ的训练集上,对预训练神经网络语言模型BERT进行微调;S6.使用步骤S5微调的BERT模型,并采用步骤S1到步骤S4,对方面级情感分析数据集Ψ的测试集中的方面目标进行情感极性分类;所述BERT模型是指GoogleAILanguage提出的BidirectionalEncoderRepresentationsfromTransformers预训练神经网络语言模型;所述步骤S1具体包括:S1.1将评语句子X与其待评测的方面目标A组成一个如下形式的BERT句子对输入序列S:其中,w
[cls]
为BERT模型的分类符,w
[sep]
为BERT模型的分隔符,为评语句子X在BERT中的词序列,为方面目标A在BERT中的词序列,n为句子对输入序列S中词的个数,d
w
为BERT中词编码的维度;S1.2将S送入BERT模型进行处理,得到方面级情感分析的预训练语义H:H=BERT(S)={h1,h2,h3,...,h
n
}∈R
n
×
d
(2)其中,{h1,h2,h3,

,h
n
}为S在BERT中的隐藏状态序列,BERT(
·
)表示一个BERT模型,d为BERT模型的隐藏状态的维度;所述步骤S2具体包括:S2.1将预训练语义H送入一个串行的多层逐点卷积层MPC(Multi

layerPoint

wiseConvolutions)中,进行逐点语义细化,得到全局语义细化的初级语义H
g
,计算过程如下:其中,MPC中的卷积窗口大小为1,MPC中的卷积核数量设置为与BERT中隐藏状态的维数d相同,σ1(
·
)表示整流线性单元(ReLU)激活函数,符号“*”表示卷积层中所有卷积核的卷
积运算,与分别是第i个卷积层的权重矩阵与偏置向量,分别是第i个卷积层的权重矩阵与偏置向量,分别为第i个与第i

1个逐点卷积层的输出;当i等于1时:即MPC的初始输入是BERT输出的预训练语义H;当i等于m时,得到全局语义细化的初级语义H
g
,即m是MPC中逐点卷积的层数,它是一个可学习的动态超参数,所述动态超参数是指对于不同的数据集可以取不同值的超参数;S2.2将H
g
和预训练语义H进行组合,得到组合全局细化语义计算过程如下:设置一个组合选择的动态超参数choice,如果choice为连接运算connection_operation,则由公式(4)进行组合,如果choice为残差网络residual_network,则由公式(5)进行组合:(5)进行组合:其中,Residual(
·
)表示一个残差网络,MHSA(
·
)表示一个多头自注意力(Multi

HeadSelf

Attention),linear(
·
)表示一个将维度从n
×
2d变换为n
×
d的线性变换层(LinearTransformLayer),公式(4)中的"+"表示逐点相加,公式(5)中的";"表示连接运算;S2.3将的平均池化向量与中分类符的隐藏状态相连接,通过一个门控机制组合成全局语义细化的输出向...

【专利技术属性】
技术研发人员:朱新华旷中洁提平彭琦
申请(专利权)人:广西师范大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1