1.一种融合主题预测和情感推理的共情对话生成方法,其特征在于,构建融合主题预测和情感推理的共情对话生成模型,该模型包括主题预测模块、情感推理模块以及对话生成模块,利用主题预测模块进行受上下文控制的对话主题预测,得到预测的主题;使用情感推理模块预测上下文情感标签和进行情感原因词识别,得到相应的情感信息;将获得主题信息和情感信息输入到对话生成模块中,得到与用户情感共鸣的共情回复,对融合主题预测和情感推理的共情对话生成模型的训练过程具体包括以下步骤:S1:获取共情对话数据,对数据进行处理,生成训练数据集、验证数据集和测试数据集;
S2:采用词嵌入将共情对话数据集中的输入序列转换成相应的词向量表示;
S3:将词向量表示分别输入主题预测模块和情感推理模块,;
S4:利用可训练的情感嵌入获取每个词向量表示的上下文情感标签;
S5:将词向量表示、词向量的情感标签和词向量的位置向量表示相加输入对话生成模块获取主题词和情感原因词;
S6:计算在给定对话上下文U<m的条件下生成回复Um的概率p(Um|U<m)并将该概率最大值对应的生成回复作为最终回复,根据最终回复计算模型的损失函数,并将测试样本中的数据输入到模型中,通过方向传播调整模型的参数,当模型的损失函数值小于设定阈值时,完成模型的训练。
2.根据权利要求1所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,主题预测模块包括层次上下文编码、上下文相关主题表示和上下文控制主题预测,层次上下文编码用于获取话语的上下文表示;上下文相关主题表示用于根据话语的上下文表示获取话语的主题表示;上下文控制主题预测用于根据话语的主题表示对主题进行预测。
3.根据权利要求2所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,层次上下文编码由两层BiGRU网络组成,层次上下文编码的第一层BiGRU能够对上下文中每个话语 进行编码,得到话语级表示 是话语Ui的话语级表示的最后一个隐藏层向量,表示为:层次上下文编码的第二层BiGRU能够对话第一层编码得到的话语级表示 进行编码得到上下文级表示,包括:
其中,U<m表示对话上下文,Ni为话语Ui词的数量,m为整个对话过程中话语数量; 为wn,i隐藏向量, 是wn,i的初始词嵌入,wn,i表示话语Ui的第n个词;BiGRU()表示BiGRU网络;
是Ui的上下文级表示。
4.根据权利要求2所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,上下文相关主题表示由主题词提取、主题内注意力、上下文主题注意力、话语内主题表示和话语间主题表示构成,其中:
s
进行主题词抽取时,利用LDA主题模型从上下文U<m中抽取出一个唯一的主题词序列Ts
={t1,…tk},并从T 中为每个话语Ui挑选主题词 得到上下文主题为T<m={T1,…,Tm‑1};
主题内注意力为利用注意力机制计算每个话语中不同主题词相互重要权重,并利用权重更新每个主题词的表示,该过程表示为:上下文主题注意力是利用注意力机制将话语表示融入主题表示过程,该过程表示为:话语内主题表示利用softmax函数计算出主题词与其相关话语之间的相关性,得到综合的话语内主题表示,包括:
话语间主题表示用GRU网络对话语内主题表示进行编码,捕捉不同话语间的关系,得到话语间主题表示,包括:
其中,αj,l表示相互重要权重,f()表示点乘操作, 分别为主题词tj,i、tl,i的词嵌入表示,grelu()为单层全连接网络,ReLU是激活函数,zj,i为词级主题表示,glinear为单层线性全连接网络,Ki为每个话语挑选的主题词数量;βj,n为zj,i和 之间的相关性, 为主题词tj,i的上下文相关主题表示,Ni为话语Ui词的数量;ξj,i是主题tj,i与Ui之间的相关性,是话语Ui综合的话语内主题表示; 是话语Ui整合后的具有话语感知的主题表示。
5.根据权利要求2所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,进行上下文控制主题预测时,利用H层前馈网络进行预测出对话主题转移到回复中的转移概率,并从中选择转移概率最大的L个主题词,包括以下过程:
1 H 1 H
其中,Concat[;]表示连接操作,W ,…,W 、b ,…,b表示模型中可训练的参数, 是H层前馈网络的输出,K表示上下文相关的主题词个数, 表示主题词的转移权重, 表s
示主题词tk转移到回复Um中的概率,t表示从T={t1,…tk}中挑选的 在前L的主题词,TopL()表示选择最大的L个参数, 表示预测的转移主题 的词嵌入表示,Gt是主题门序列, 表示选择 作为预测转移主题词的概率。
6.根据权利要求1所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,情感推理模块由transformer模型构成,该模型根据对话上下文预测出上下文情感标签ε,包括:
X={x0,x1,…,xN}
其中,X是给定对话上下文M={U1,…,Um‑1}连接起来后的输入序列,x0表示序列的开始符号,V为X的词表示,We和be表示模型中可训练参数;p(ε|X)表示根据对话上下文预测情感标签ε的概率。
7.根据权利要求6所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,进行情感原因词识别包括:
其中, 表示第i个词与情感原因相关的概率,ci为第i个词情感原因相关的标签,Wc和bc为可训练参数,C表示从输入中选择的 时的前k个主题词, 表示从输入中选择的 时的第k个主题词; 是一个[0,1]中取值连续的软门, 表示在输入中选择 作为情感原因词的概率; 表示第一个特殊字符[CLS]的向量表示,Ni为话语Ui词的数量。
8.根据权利要求1所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,对话生成模块中包括编码器、解码器,将词向量表示Ew、对话上下文的情感标签嵌入Eε和词向量的位置嵌入表示Ep相加输入到对话生成模块的编码器中进行编码得到上下文化的词表示;在解码器中利用一个交叉注意力机制对上下文化的词表示进行关注,在交叉注意力层上添加一个主题门注意力和情感原因词门注意力,对主题预测模块得到主题门序列进行关注,动态选择预测的转移主题序列中出现在回复中主题词,对情感推理模块得到的门序列进行关注,动态控制输入中情感原因相关词的选择,包括:其中, 的值表示选择预测主题序列中的 作为出现在回复中的主题词的概率;
的值表示在输入中选择 作为情感原因词的概率,ql表示问询向量,为多头注意力层的输出; 表示 的嵌入表示, 表示 的嵌入表示, 表示在输入中选择 作为情感原因词的概率,⊙表示点积操作, 表示解码器第l块注意力层第i个位置的主题门注意力权重,表示解码器第l块注意力层第i个位置的情感原因词门注意力权重。
9.根据权利要求8所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,通过最大化在给定对话上下文U<m的条件下,生成回复Um的概率P(Um|U<m)得到共情回复,表示为:
其中,p(wn,m|w<n,m,U
话上下文,t表示从T={t1,…tk}中挑选的 在前L的主题词, 表示主题词的转移权重,C表示从输入中选择的 时的前k个主题词,ε表示对话上下文情感标签。
10.根据权利要求1所述的一种融合主题预测和情感推理的共情对话生成方法,其特征在于,模型的损失函数由主题预测模块、情感推理模块和对话生成模块三者损失函数之和,其中:
主题预测模块损失函数为:
情感推理模块的损失函数为:
对话生成模块的损失函数为:
其中,Ltran表示转移主题词预测损失,K表示上下文相关的主题词个数;Ltran(k)表示焦2
点损失函数,ψ∈[0,1]是一个权重控制因子,γ≥0是调节因子, 表示主题词转移权重;τk表示预测的转移主题词 是否出现在回复中,当τk=1表示预测的转移主题词 出现在回复Um中,当τk=0表示预测的转移主题词 不出现在回复Um中;Lε表示上下文情感标签预测损失, 表示上下文情感标签的预测概率, 表示第i个词与情感原因相关的概率,Ni为话语Ui词的数量,Lc表示情感原因词检测损失;Lg表示解码器的生成损失,Nm表示生成回复中的词的个数;p(wn,m|w<n,m,U