当前位置: 首页 > 专利查询>中山大学专利>正文

基于知识检索图和预训练模型的中文对话知识检索方法技术

技术编号:27742143 阅读:75 留言:0更新日期:2021-03-19 13:35
本发明专利技术针对现有技术处理多轮对话之间的话题切换时性能不佳的技术问题,提出了一种基于知识检索图和预训练模型的中文对话知识检索方法,通过利用预训练模型建模了文本语义信息以及利用知识检索图结构信息建模了知识之间的联系,可以更加准确地检索出与当前对话后续回复相关的知识三元组,从而让后续生成的知识对话可以更好的满足多轮对话之间的话题切换,得到更好的对话效果。

【技术实现步骤摘要】
基于知识检索图和预训练模型的中文对话知识检索方法
本专利技术涉及自然语言处理的
,具体涉及自然语言处理在人机对话上的应用,更具体地,涉及一种基于知识检索图和预训练模型的中文对话知识检索方法、系统、储存介质及计算机设备。
技术介绍
自然语言处理技术一直都致力于让机器可以做到像人一样流畅、自如地沟通,这也是市面上的许多语音助手,如Siri、小度等产品设计出来的初衷;然而,人们也希望机器在流畅对话的同时,其产出的对话回复能够带有知识的丰富性,而不仅仅是单纯地响应对话内容。所以,在为机器提供训练语料时,除了提供相应的历史对话信息,同时也需要提供相应的对话知识,让机器在获取知识的前提下生成富有知识性的对话回复。公开时间为2020-07-28,公开号为CN111462749A的中国申请专利:基于对话状态导向和知识库检索的端到端对话系统及方法,其具有对话状态与知识库两步检索机制结合的知识库访问结构,以期通过知识库库间检索的方式维护知识库一致性,从而减少知识库检索错误的问题。但上述专利在内的现有技术在处理多轮对话之间的话题切换时,由于对话和知识的语义信息变得更加复杂,对话效果并不好。
技术实现思路
针对现有技术的局限,本专利技术提出一种基于知识检索图和预训练模型的中文对话知识检索方法、系统、储存介质及计算机设备,本专利技术采用的技术方案是:一种基于知识检索图和预训练模型的中文对话知识检索方法,包括以下步骤:创建知识检索数据集;所述知识检索数据集包括样本对数据集以及知识检索图;所述样本对数据集包括正样本对,所述正样本对由样本对话内容以及与所述样本对话内容对应的知识三元组构成;所述知识检索图根据所述样本对数据集的知识三元组构建;以知识增强语义理解模型构建用于获取特征表示的预训练模型;通过按预设的批尺寸在所述样本对数据集内抽取正样本对以及随机构造负样本对,构建训练数据包,根据所述训练数据包中出现的知识三元组在所述知识检索图基础上分别构建正、负知识子图;运用所述训练数据包以及正、负知识子图对所述预训练模型进行训练;运用训练后的预训练模型获取所述样本对数据集的各知识三元组的特征表示;获取待处理对话内容,运用训练后的预训练模型获取所述待处理对话内容的特征表示;根据所述正检索项的特征表示以及所述待处理对话内容的特征表示检索出所述待处理对话内容对应的知识三元组。相较于现有技术,本专利技术通过利用预训练模型建模了文本语义信息以及利用知识检索图结构信息建模了知识之间的联系,可以更加准确地检索出与当前对话后续回复相关的知识三元组,从而让后续生成的知识对话可以更好的满足多轮对话之间的话题切换,得到更好的对话效果。作为一种优选方案,创建知识检索数据集包括以下步骤:以由样本对话内容以及与所述样本对话内容对应的知识三元组构成的正样本对构建样本对数据集;根据所述样本对数据集的知识三元组构建知识检索图;对所述样本对数据集以及知识检索图的数据进行字符级切分,并将切分得到的字符分别映射为对应的字典ID;按预设的句子长度阈值对所述样本对数据集以及知识检索图的数据进行截断;以经过所述切分、映射以及截断操作的所述样本对数据集以及知识检索图作为知识检索数据集。作为一种优选方案,所述预训练模型按以下公式获取样本对话内容或者待处理对话内容的特征表示:queryfeature=ERNIE_cls_embedding(query);其中,query为由样本对话内容或者待处理对话内容构成的查询项,feature为特征表示,ERNIE_cls_embedding表示利用知识增强语义理解模型获取分类Token对应的特征表示;所述预训练模型按以下公式获取知识三元组的特征表示:itemcls=ERNIE_cls_embedding(item);itemfeature=[itemcls|Sum(Neighbor(item)];其中,item为知识三元组构成的检索项;Neighbor(item)为所述检索项在所述知识检索图或正知识子图或负知识子图中的邻居节点的分类Token对应的特征表示,Sum为加法聚合操作,[A|B]为“|”将两侧向量相连接的操作。进一步的,所述预训练模型在所述预训练模型的训练过程中通过预设的优化器计算、更新所述预训练模型的网络参数,使训练过程中产生的合页损失函数的值最小化。更进一步的,所述合页损失函数的值按以下公式计算:HingeLoss=max(0,Δ-negscore+posscore);其中,Δ为需要人工调整的超参数,posscore为正样本匹配得分,negscore为负样本匹配得分;posscore=∑queryfeature*posfeature;其中,posfeature为所述训练数据包的正样本对的知识三元组的特征表示,negfeature为所述训练数据包的负样本对的知识三元组的特征表示,T表示矩阵的转置。作为一种可选方案,所述步骤S03中根据所述训练数据包中出现的知识三元组在所述知识检索图基础上分别构建正、负知识子图,采用GraphSage采样方法或PinSage采样方法实现。作为一种优选方案,所述步骤S04中根据所述正检索项的特征表示以及所述待处理对话内容的特征表示检索出所述待处理对话内容对应的知识三元组,采用ANN算法实现。本专利技术还提供以下内容:一种基于知识检索图和预训练模型的中文对话知识检索系统,包括知识检索数据集创建模块、预训练模型构建模块、预训练模型训练模块以及待处理对话内容获取检索模块;所述预训练模型训练模块连接所述知识检索数据集创建模块以及预训练模型构建模块,所述待处理对话内容获取检索模块连接所述检索库创建模块以及预训练模型训练模块,其中:所述知识检索数据集创建模块用于创建知识检索数据集;所述知识检索数据集包括样本对数据集以及知识检索图;所述样本对数据集包括正样本对,所述正样本对由样本对话内容以及与所述样本对话内容对应的知识三元组构成;所述知识检索图根据所述样本对数据集的知识三元组构建;所述预训练模型构建模块用于以知识增强语义理解模型构建用于获取特征表示的;所述预训练模型训练模块用于通过按预设的批尺寸在所述样本对数据集内抽取正样本对以及随机构造负样本对,构建训练数据包,根据所述训练数据包中出现的知识三元组在所述知识检索图基础上分别构建正、负知识子图;运用所述训练数据包以及正、负知识子图对所述预训练模型进行训练;所述待处理对话内容获取检索模块用于运用训练后的预训练模型获取所述样本对数据集的各知识三元组的特征表示;获取待处理对话内容,运用训练后的预训练模型获取所述待处理对话内容的特征表示;根据所述正检索项的特征表示以及所述待处理对话内容的特征表示检索出所述待处理对话内容对应的知识三元组。一种储存介质,其上储存有计算机程序,所述计算机程序被处理器执行时实现前述的基于知识检索图和预训练模型的中文对本文档来自技高网...

【技术保护点】
1.一种基于知识检索图和预训练模型的中文对话知识检索方法,其特征在于,包括以下步骤:/nS01,创建知识检索数据集;所述知识检索数据集包括样本对数据集以及知识检索图;所述样本对数据集包括正样本对,所述正样本对由样本对话内容以及与所述样本对话内容对应的知识三元组构成;所述知识检索图根据所述样本对数据集的知识三元组构建;/nS02,以知识增强语义理解模型构建用于获取特征表示的预训练模型;/nS03,通过按预设的批尺寸在所述样本对数据集内抽取正样本对以及随机构造负样本对,构建训练数据包,根据所述训练数据包中出现的知识三元组在所述知识检索图基础上分别构建正、负知识子图;运用所述训练数据包以及正、负知识子图对所述预训练模型进行训练;/nS04,运用训练后的预训练模型获取所述样本对数据集的各知识三元组的特征表示;获取待处理对话内容,运用训练后的预训练模型获取所述待处理对话内容的特征表示;根据所述正检索项的特征表示以及所述待处理对话内容的特征表示检索出所述待处理对话内容对应的知识三元组。/n

【技术特征摘要】
1.一种基于知识检索图和预训练模型的中文对话知识检索方法,其特征在于,包括以下步骤:
S01,创建知识检索数据集;所述知识检索数据集包括样本对数据集以及知识检索图;所述样本对数据集包括正样本对,所述正样本对由样本对话内容以及与所述样本对话内容对应的知识三元组构成;所述知识检索图根据所述样本对数据集的知识三元组构建;
S02,以知识增强语义理解模型构建用于获取特征表示的预训练模型;
S03,通过按预设的批尺寸在所述样本对数据集内抽取正样本对以及随机构造负样本对,构建训练数据包,根据所述训练数据包中出现的知识三元组在所述知识检索图基础上分别构建正、负知识子图;运用所述训练数据包以及正、负知识子图对所述预训练模型进行训练;
S04,运用训练后的预训练模型获取所述样本对数据集的各知识三元组的特征表示;获取待处理对话内容,运用训练后的预训练模型获取所述待处理对话内容的特征表示;根据所述正检索项的特征表示以及所述待处理对话内容的特征表示检索出所述待处理对话内容对应的知识三元组。


2.根据权利要求1所述的基于知识检索图和预训练模型的中文对话知识检索方法,其特征在于,所述步骤S01包括以下步骤:
S011,以由样本对话内容以及与所述样本对话内容对应的知识三元组构成的正样本对构建样本对数据集;
S012,根据所述样本对数据集的知识三元组构建知识检索图;
S013,对所述样本对数据集以及知识检索图的数据进行字符级切分,并将切分得到的字符分别映射为对应的字典ID;
S014,按预设的句子长度阈值对所述样本对数据集以及知识检索图的数据进行截断;
S015,以经过所述切分、映射以及截断操作的所述样本对数据集以及知识检索图作为知识检索数据集。


3.根据权利要求1所述的基于知识检索图和预训练模型的中文对话知识检索方法,其特征在于,所述预训练模型按以下公式获取样本对话内容或者待处理对话内容的特征表示:
queryfeature=ERNIE_cls_embedding(query);
其中,query为由样本对话内容或者待处理对话内容构成的查询项,feature为特征表示,ERNIE_cls_embedding表示利用知识增强语义理解模型获取分类Token对应的特征表示;
所述预训练模型按以下公式获取知识三元组的特征表示:
itemcls=ERNIE_cls_embedding(item);
itemfeature=[itemcls|Sum(Neighbor(item)];
其中,item为知识三元组构成的检索项;Neighbor(item)为所述检索项在所述知识检索图或正知识子图或负知识子图中的邻居节点的分类Token对应的特征表示,Sum为加法聚合操作,[A|B]为“|”将两侧向量相连接的操作。


4.根据权利要求3所述的基于知识检索图和预训练模型的中文对话知识检索方法,其特征在于,所述预训练模型在所述步骤S04的训练过程中通过预设的优化器计算、更新所述预训练模型的网络参数,使训练过程中产生的合页损失函数的值最小化。


5.根据权利要求4所述的基于知识检索图和预训练模型的中文对话知识检索方法,其特...

【专利技术属性】
技术研发人员:戴斯铭潘嵘毛明志
申请(专利权)人:中山大学
类型:发明
国别省市:广东;44

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

1