一种基于知识驱动的多路筛选融合对话生成方法技术

技术编号:35813780 阅读:32 留言:0更新日期:2022-12-03 13:36
本发明专利技术公开了一种知识驱动的多路筛选融合对话生成方法,包括:对当前对话的上下文进行预处理,由双向GRU组成的话语编码器中对上下文信息进行编码,获取相应的语义向量;基于多路知识筛选机制,通过计算语义向量信息与知识集合中每条知识的相似度,选择与当前对话最相关的知识信息,融合得到筛选后的知识信息;采用知识融合模块将知识信息与上下文的语义信息融合,借助注意力机制计算得到中间语义向量;将中间语义向量和知识信息一同送入解码器中进行响应的生成。本发明专利技术能充分利用上下文的语义信息,筛选与之高度相关的背景知识信息,将所筛选的知识信息融入对话生成的过程,提高了对话生成的质量。了对话生成的质量。了对话生成的质量。

【技术实现步骤摘要】
一种基于知识驱动的多路筛选融合对话生成方法


[0001]本专利技术属于自然语言处理中对话生成领域,具体涉及一种基于知识驱动的多路筛选融合对话生成方法。

技术介绍

[0002]对话生成的作用是将机器的语言转化为用户能够理解的自然语言。随着社交媒体的迅速普及积累了海量的对话语料以及计算机算力的迅速提升,引发了深度学习技术的热潮,深度学习技术近年来在人工智能多个领域都取得了非常好的成绩,利用深度学习技术让模型从海量的对话语料中自动学习语言特征,掌握语言能力成为当前对话生成技术研究的热门方向。基于深度学习的对话生成方法不需要提前准备模板或者语料库,而是从大量的对话语料中自动归纳总结对话信息,学习语言能力来生成回复。
[0003]近年来,许多研究致力于在对话系统中引入外部知识改善生成效果。该任务分为两个重要的子任务:知识选择以及响应生成,恰当的知识对响应生成起到推动作用,不恰当的知识不仅不会提高响应生成的质量甚至会对响应生成起到反作用,因此,如何选择合适的知识是至关重要的一步。Zhou等人在2018年提出一种图注意力机制将结构化三元组知识与生成式对话模型结合,通过静态注意力机制融合知识增强编码器语义向量,通过动态注意力机制增强解码器生成效果。Lian等人在2019年提出了利用后验知识帮助指导选择合适的知识。Zhang 等人在2019年提出一种基于上下文感知的知识预选模型(CaKe),该模型引入了动态双向注意预选过程,利用历史上下文作为先验信息来选择最相关的背景材料。Liu等人在2019年提出了一种知识发散网络,通过事实匹配和事实发散机制来选择知识。
[0004]专利号为CN113656569A的专利技术中提及一种基于上下文信息推理的生成式对话方法,首先对获取的输入信息进行数据清洗,并处理为后续模型需要的输入格式,然后引入自注意力机制分别对历史上下文中的重要单词和重要句子进行关注权重计算,得到相应的语义向量表示,并使用该语义向量表示选取与历史上下文相关的外部知识,在解码过程中通过两步解码,分别将筛选的历史上下文信息和选取的外部知识融入回复的成过程中,得到更加准确的高质量回复。然而该专利技术是根据历史上下文中的重要单词和重要句子来得到外部知识,知识筛选的准确度不高,另外,无法将知识信息与语义信息直接融合。

技术实现思路

[0005]解决的技术问题:本专利技术提出一种基于知识驱动的多路筛选融合对话生成方法,通过设计多路知识筛选模块选择与对话上下文更相关知识使得响应包含更多的信息;另外,利用双向GRU将知识信息与语义信息融合,以一种更高效的方式进行响应生成。
[0006]技术方案:。
[0007]一种基于知识驱动的多路筛选融合对话生成方法,所述生成方法包括以下步骤:
[0008]S10,对当前对话的上下文进行包括分词、词嵌入在内的预处理,将预处理结果送入由双向GRU组成的话语编码器中对上下文信息进行编码,获取相应的语义向量{h
i
};i=
1,2,

,n;
[0009]S20,基于多路知识筛选机制,通过计算步骤S10得到的语义向量信息与知识集合{k
i
}中每条知识的相似度,从知识集合中选择与当前对话最相关的知识信息k
a
和k
b
,融合得到筛选后的知识信息k

i

[0010]S30,基于双向GRU神经网络构建知识融合模块,采用知识融合模块将步骤S20得到的知识信息k

i
与步骤S10中获取的上下文的语义信息{h
i
}融合,借助注意力机制计算得到中间语义向量c
t

[0011]S40,将步骤S30得到的中间语义向量c
t
和步骤S20中得到的知识信息k

i
一同送入解码器中进行响应的生成。
[0012]进一步地,步骤S10中,获取相应的语义向量{h
i
}的过程包括以下步骤:
[0013]S11,利用NLTK工具将包含上下文信息的相关数据进行分词后,借助Glove转换成固定维度的词向量;
[0014]S12,基于双向GRU单元构成源句子编码器,将步骤S11的转换结果输送到源句子编码器中,将对话上下文编码成固定维度向量,编码的每一步输出该时间步的隐藏状态,最后一时刻时间步用以表示该上下文的语义信息,将输入上下文编码成一固定长度的语义向量,得到上下文的隐层状态h={h1,h2,

,h
n
}。
[0015]进一步地,步骤S20中,从知识集合中选择与当前对话最相关的知识信息k
a
和k
b
的过程包括以下步骤:
[0016]S21,利用余弦相似度,获取上下文信息对应的语义向量与知识集合中每条知识的相似度得分,获取得分最高的知识信息记为k
a

[0017]S22,根据后验知识信息获取后验知识分布,利用后验知识分布与先验知识分布进行知识的筛选;采用KL散度拉近先验知识分布与后验分布之间的距离,使先验分布不断逼近后验分布,借助先验分布获取相关的知识,将该知识记为k
b
;其中,根据如下公式获取先验知识分布和后验知识分布:
[0018][0019][0020]其中,k
i
为知识集合中的每条知识,x为输入的上下文信息,y为数据集中真实响应信息, k
j
代表知识集合中的全部知识,j为知识的序列号,N代表知识集合中知识的条数。
[0021]进一步地,步骤S30中,计算得到中间语义向量c
t
的过程包括以下步骤:
[0022]S31,根据每条知识信息的相关系数,加权求和获取最终的知识信息表达形式;
[0023]S32,采用双向GRU神经网络对步骤S31获取的知识信息和步骤S10获取的上下文的语义信息{h
i
}共同进行编码,将筛选后的知识表示k

i
作为双向GRU神经网络的初始状态,同时将每一时刻的隐藏状态h
i
作为双向GRU神经网络的每一步输入,得到双向GRU的最终状态作为中间语义向量c
t

[0024]进一步地,步骤S40中,将步骤S30得到的中间语义向量c
t
和步骤S20中得到的知识
信息k

i
一同送入解码器中进行响应的生成的过程包括以下步骤:
[0025]基于知识语义表达k

i
和中间语义向量c
t
,将每一时间步的解码状态通过全连接网络映射到词表大小的维度,并通过softmax函数计算出候选回复词的概率分布,选择概率最大的词作为当前时间步的回复y
t
,将所有时间步的预测回复联合起来得到最终的预测回复序列Y。
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于知识驱动的多路筛选融合对话生成方法,其特征在于,所述生成方法包括以下步骤:S10,对当前对话的上下文进行包括分词、词嵌入在内的预处理,将预处理结果送入由双向GRU组成的话语编码器中对上下文信息进行编码,获取相应的语义向量{h
i
};i=1,2,

,n;S20,基于多路知识筛选机制,通过计算步骤S10得到的语义向量信息与知识集合{k
i
}中每条知识的相似度,从知识集合中选择与当前对话最相关的知识信息k
a
和k
b
,融合得到筛选后的知识信息k

i
;S30,基于双向GRU神经网络构建知识融合模块,采用知识融合模块将步骤S20得到的知识信息k

i
与步骤S10中获取的上下文的语义信息{h
i
}融合,借助注意力机制计算得到中间语义向量c
t
;S40,将步骤S30得到的中间语义向量c
t
和步骤S20中得到的知识信息k

i
一同送入解码器中进行响应的生成。2.根据权利要求1所述的基于知识驱动的多路筛选融合对话生成方法,其特征在于,步骤S10中,获取相应的语义向量{h
i
}的过程包括以下步骤:S11,利用NLTK工具将包含上下文信息的相关数据进行分词后,借助Glove转换成固定维度的词向量;S12,基于双向GRU单元构成源句子编码器,将步骤S11的转换结果输送到源句子编码器中,将对话上下文编码成固定维度向量,编码的每一步输出该时间步的隐藏状态,最后一时刻时间步用以表示该上下文的语义信息,将输入上下文编码成一固定长度的语义向量,得到上下文的隐层状态h={h1,h2,

,h
n
}。3.根据权利要求1所述的基于知识驱动的多路筛选融合对话生成方法,其特征在于,步骤S20中,从知识集合中选择与当前对话最相关的知识信息k
a
和k
b
的过程包括以下步骤:S21,利用余弦相似...

【专利技术属性】
技术研发人员:马廷淮张峥
申请(专利权)人:南京信息工程大学
类型:发明
国别省市:

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

1