【技术实现步骤摘要】
一种基于多分辨率情感和多类型知识的情感对话生成方法
[0001]本专利技术属于自然语言处理领域,具体涉及一种基于多分辨率情感和多类型知识的情感对话生成方法。
技术介绍
[0002]对话系统大致可分为两类,一类为任务型对话系统,主要针对某一特定领域帮助用户完成特定的任务,另一类为开放域对话系统,也称为聊天机器人,特征为无目的、无领域约束的进行闲聊。随着对智能对话系统需求的增加,需要应对的问题也越来越多。尽管这些年来对话系统作为人机交互的重要方式应用场景非常广泛,发展也十分迅速,但是现有的对话系统专注于解决语义一致性和内容丰富性,而忽略了情感状态对响应生成的影响,情感对话有利于提高用户的满意度,但是当前对于提高人机交互和人机共鸣方向的研究关注度不高。
[0003]情感对话是人类对话的重要组成部分之一,人类具有丰富的情感,喜怒哀乐等情绪都很容易在对话中表现出来,情感作为人类行为最重要的表现形式,对人类日常交流具有重大意义,情感智能同样是开放域对话系统成功的关键要素。然而现有的相关技术仍存在以下问题:(1)现有的情感对话模型 ...
【技术保护点】
【技术特征摘要】
1.一种基于多分辨率情感和多类型知识的情感对话生成方法,其特征在于包括如下步骤:S1.接收对话中的语句文本,并进行标记;S2.建立多分辨率情感模块;多分辨率情感模块使用词嵌入层、位置嵌入层和情感状态嵌入层,将对话语句文本中提取出的情感词转换为向量表示,生成最终多分辨率情感上下文;S3.建立多类型知识交互模块;多类型知识交互模块使用多类型知识丰富对话语句文本,通过对话上下文和多类型知识之间的联合交互构建情感增强的上下文;S4.将多分辨率情感模块生成的最终多分辨率情感上下文,与多类型知识交互模块生成的最终情感知识增强的对话上下文融合,生成交互式向量;S5.利用交互式向量提取情感信号;S6.解码器依据情感信号进行响应,并通过联合损失函数生成情感响应;生成的情感响应与用户输入共同构成情感对话。2.根据权利要求1所述的基于多分辨率情感和多类型知识的情感对话生成方法,其特征在于所述的步骤S1,包括输入对话上下文X=[X1,X2,...,X
I
,...,X
M
]、常识知识库ConceptNet及情感词典NRC_VAD,一个对话上下文包括两个对话者之间的M个语句,其中X
I
表示标记之前第I个语句;将对话上下文X中的M个语句按顺序拼接,采用Glove词向量对其中的每个单词和符号进行表示,得到标记序列X=[x1,x2,...,x
i
,...,x
m
],x
i
∈X,x
i
表示标记后第i个单词的词向量,m表示整个对话上下文单词和符号的总数量。3.根据权利要求2所述的基于多分辨率情感和多类型知识的情感对话生成方法,其特征在于所述的步骤S2,建立多分辨率情感模块,包括如下步骤:A1.使用情感词典NRC_VAD提取对话上下文X的细粒度情感词,生成情感上下文μ;将情感上下文μ表示为情感上下文嵌入[w1,w2,...,w
f
,...,w
F
],其中w
f
表示第f个情感词的情感嵌入,f∈1,2,...,F,F表示对话上下文X中包含的情感词的总数量;A2.使用词嵌入层、位置嵌入层和情感状态嵌入层,将情感上下文μ中的每个情感词用向量表示,情感上下文嵌入[w1,w2,...,w
f
,...,w
F
]包括词嵌入、位置嵌入和情感状态嵌入,则w
f
表示为:其中,[;]表示向量拼接;表示第f个情感词w
f
的词嵌入;表示第f个情感词w
f
的位置嵌入;表示第f个情感词w
f
的情感状态嵌入;d表示嵌入维数;R表示实数;A3.使用Transformer编码器对多分辨率情感上下文μ进行编码:A3.使用Transformer编码器对多分辨率情感上下文μ进行编码:其中,LayerNorm(
·
)表示层归一化操作;MHAtt(
·
)表示F个注意力头组成的多头自注意力层;FFH(
·
)表示以ReLU作为隐藏激活函数的双层前馈网络;表示第l
‑
1层输出的
第f个情感词w
f
的情感嵌入;l∈1,2,...,L,L表示Transformer编码器堆叠总层数;表示第l层的隐藏状态;表示第l层输出的第f个情感词w
f
的情感嵌入;Transformer编码器堆叠L次将最终多分辨率情感上下文表示为:计算注意力输出Attention(Φ,K,V):其中,Φ表示查询矩阵;K表示键矩阵,V表示值矩阵;d
k
为键矩阵K的维数;多头注意力层包括若干个自适应的点积注意力,具体为通过若干个不同的线性变换对查询矩阵Φ、键矩阵K、值矩阵V进行映射并拼接,再经过一个线性层得到多头注意力输出MultiHead(Φ,K,V):MultiHead(Φ,K,V)=Concat(head1,head2,...,head
f
,...,head
F
)W
O
其中,Φ表示查询矩阵;K表示键矩阵,V表示值矩阵;Concat(
·
)表示拼接函数;W
O
表示线性映射权重矩阵;head
f
表示经第f个注意力头的模块得到加权后的矩阵;表示查询矩阵Φ对应的权重矩阵;表示键矩阵K对应的权重矩阵;表示值矩阵V对应的权重矩阵。4.根据权利要求3所述的基于多分辨率情感和多类型知识的情感对话生成方法,其特征在于所述的步骤S3,建立多类型知识交互模块,包括如下步骤:B1.使用常识知识库ConceptNet和情感词典NRC_VAD丰富对话上下文;具体包括:将常识知识库ConceptNet每个元组表示为τ=(x,r,c,s),τ表示元组;x表示开始结点;r表示关系;c表示结束结点,s表示置信度分数,s∈[1,10];使用min
‑
max标准化将特征缩放为标准化后的置信度分数(min
‑
max)(s),(min
‑
max)(s)的取值在0和1之间:其中,(min
‑
max)(
·
)表示min
‑
max标准化;min(s)表示最低置信度分数,min(s)=1;max(s)表示最高置信度分数,max(s)=10;采用情感词典NRC_VAD计算查询的单词和相关概念的情感强度值:其中,||
·
||2表示L2范数;V'(x
i
)表示标记后第i个单词的词向量x
i
的VAD向量中Valence维度的值;A'(x
i
)表示标记后第i个单词的词向量x
i
的VAD向量中Arousal维度的值;B2.从标记序列X=[x1,x2,...,x
i
,...,x
m
]中筛选出标记后为非停用词的标记序列X=[x1,x2,...,x
i
,...,x
m'
],对第i个单词的词向量x
i
,选出概念是情感词且情感强度值不低于设定情感
强度阈值的概念,构建标记后第i个单词的词向量x
i
的候选元组采用置信度值过滤、关系过滤和概念排序过滤提炼出情感相关知识;x
i
∈X,i∈1,2,...,m',m'表示整个对话标记后为非停用词的总数量;表示标记后第i个单词的词向量x
i
和第k个概念组成的候选元组;表示标记后第i个单词的词向量x
i
和第k个概念之间的关系;表示标记后第i个单词x
i
的第k个概念;表示标记后第i个单词的词向量x
i
的第k个概念的置信度值;B3.利用概念排序过滤后的元组丰富对话上下文,生成最终情感知识增强的对话上下文C
Q
,求得情感知识增强的情感语境图G。5.根据权利要求4所述的基于多分辨率情感和多类型知识的情感对话生成方法,其特征在于步骤B2中:置信度值过滤,包括对标记后第i个单词的词向量x
i
的第k个概念进行置信度值过滤,过滤掉标记后第i个单词的词向量x
i
的第k个概念的置信度值小于等于预设置信度阈值α的元组;关系过滤,包括对标记后第i个单词的词向量x
i
的第k个概念进行关系过滤,过滤掉无关关系的元组,具体包括过滤掉的元组,其中L
ir
表示无关关系列表;概念排序过滤,包括对标记后第i个单词的词向量x
i
的第k个概念进行概念排序过滤,根据标记后第i个单词的词向量x
i
的候选元组的情感、语义和置信度计算每个候选元组的综合得分的综合得分其中,表示标记后第i个单词的词向量x
i
的第k个概念的情感强度值;cos(
·
)表示余弦相似性函数,用于计算标记后第i个单词的词向量x
i
和标记后第i个单词的词向量x
i
的第k个概念的语义相似性;表示标记后第i个单词的词向量x
i
的第k个概念的置信度值;按照综合得分降序排列的方式,将前K'个候选元组作为标记后第i个单词的词向量x
i
的情感知识,获得概念排序过滤后的元组6.根据权利要求5所述的基于多分辨率情感和多类型知识的情感对话生成方法,其特征在于所述的步骤B3,包括如下步骤:C1.对话上下文的标记序列{x
i
}
i=1,2,...,m'
、概念和句子开始的标记符CLS构成情感语境图G的结点N={n
q
}
q=1,...,Q
,表示标记后的第i个单词的词向量x
i
的第k个概念;n
q
表示标记后的第i个单词的词向量x
i
的第q个结点;m'表示整个对话标记后为
非停用词的总数量;K'表示对话上下文标记后的第i个单词的词向量x
i
概念的总数量;Q表示结点的总数量;C2.使用词嵌入层、位置嵌入层和对话状态嵌入层,将第q个结点n
q
转换为第q个结点n
q
的词嵌入第q个结点n
q
的位置嵌入和第q个结点n
...
【专利技术属性】
技术研发人员:赵欢,陈恩思,李博,赵玉青,李婷婷,查徐鹏,
申请(专利权)人:湖南大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。