CN115062123A - 一种对话生成系统的知识库问答对生成方法 - Google Patents

一种对话生成系统的知识库问答对生成方法 Download PDF

Info

Publication number
CN115062123A
CN115062123A CN202210583071.3A CN202210583071A CN115062123A CN 115062123 A CN115062123 A CN 115062123A CN 202210583071 A CN202210583071 A CN 202210583071A CN 115062123 A CN115062123 A CN 115062123A
Authority
CN
China
Prior art keywords
representation
word
node
information
sequence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210583071.3A
Other languages
English (en)
Inventor
荣文戈
李晨
白骏
欧阳元新
熊璋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN202210583071.3A priority Critical patent/CN115062123A/zh
Publication of CN115062123A publication Critical patent/CN115062123A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Abstract

本发明公开了一种对话生成系统的知识库问答对生成方法,提出图谱问题相关性提取网络,然后基于知识蒸馏技术令知识库问答对生成网络学习图谱问题相关性提取网络提取到的图谱问题交互信息,从而有效提升知识库问答对生成效果。本发明的贡献主要有两个方面:(1)提出一种融合目标问句知识的图谱问题相关性提取网络,该网络能够准确捕捉图谱问题交互信息;(2)提出一种给知识库问答对生成网络增强图谱问题交互信息的方法,通过同时最小化知识库问答对生成网络与图谱问题相关性提取网络之间中间状态和单词预测概率的差异,令知识库问答对生成网络学习到图谱问题相关性提取网络提取到的图谱问题交互信息,从而改善问句生成表现。

Description

一种对话生成系统的知识库问答对生成方法
技术领域
本发明涉及一种对话生成系统的知识库问答对生成方法,属于自然语言处理领域中的对话系统技术领域。
背景技术
近些年来,随着科学技术的不断发展与互联网的迅速壮大,人们对互联网的使用不断增多,并由此产生了海量的资源,其中包括大量的文本数据。这些数据包含了很多隐藏信息,而由于庞大的数据量,通过人工的方法对其的分析需要很大的成本。由此,通过计算机来处理这些文本数据的需求逐渐增加。自然语言处理技术,即为通过计算机对人们日常沟通交流中使用的语言进行处理并理解的技术,它可以设计多种应用产品便利人们的日常生活。自然语言处理包括很多具有挑战性的任务,问答对生成任务正是其中一个新兴的自然语言生成任务。问答对生成系统可以对输入的数据进行分析并针对答案信息提出相应的问题。相较于海量的未标注的无结构化文本而言,用于自然语言处理的人工标注数据集十分珍贵。对于问答系统,在一些特定的领域,数据集常常只含有几百到几千个问答对,神经网络模型在使用这样轻量化的数据集进行训练时往往不能取得很好的效果。问答对生成系统可以极大程度的减少生成人工标注数据集时的工作量,数据集匮乏的问题便可得到缓解。因此,研究问答对生成任务具有重要意义。
目前,问答对生成任务可以根据输入数据的类型进行分类,包括文本,图片,视频,知识图谱,结构化的SQL语言等。其中,输入数据为知识图谱的问答对生成任务通常被称为知识库问答对生成任务。知识图谱随着认知智能技术的不断发展,逐渐成为一种重要的知识表现形式。由于知识图谱领域的特殊性,其结构与文本信息有显著的差异,这使得在进行问答对生成时,输入知识图谱与目标问句之间存在不匹配的情况,使得知识库问答对生成的精度达不到要求。
发明内容
本发明技术问题为:克服现有技术的不足,提供一种对话生成系统的知识库问答对生成方法,有效地从给定的输入数据中提取知识图谱与目标问句之间的交互信息,从而提升知识库问答对生成的精度,提升生成问句的准确性。
本发明技术解决方案:一种对话生成系统的知识库问答对生成方法,包括以下步骤:
步骤1:对知识图谱中的实体与关系以及目标问句进行分词及标注处理,以构建图谱问题相关性提取网络和知识库问答对生成网络的输入序列,具体如下:
知识图谱包括实体与关系,答案信息为知识图谱中的一部分实体,给定输入的知识图谱,将知识图谱转化为图结构信息,在图结构信息的基础上,将知识图谱中的所有实体与关系整理为节点集V={v1,…,v|V|},其中|V|代表节点的个数,每个节点v是一个实体或者关系;实体与关系的连接整理为边集E;同时对答案信息进行标注A={a1,…,a|V|},其中ai表示第i个节点的答案信息的标注,若此节点为答案信息,则其为1,反之若此节点不为答案信息,则其为0;然后对节点集中的每个节点以及目标问句进行分词处理,得到节点的文本序列和目标问句的文本序列,并作为输入序列;
步骤2:根据输入序列,构建图谱问题相关性提取网络,步骤如下:
(1)使用Glove词嵌入技术与LSTM神经网络提取输入序列中的节点分词和目标问句分词中各单词的上下文特征,同时利用嵌入表示技术融合答案信息,得到嵌入表示的答案信息;基于各单词的上下文特征和嵌入表示的答案信息,得到节点和目标问句的表示;
具体步骤如下:
将节点的文本序列v和目标问句的文本序列y转换为单词的编号序列token_id,利用预训练好的Glove词嵌入参数将token_id转换为单词的嵌入表示序列;然后,利用双向LSTM网络对嵌入表示序列进行更新,得到词向量表示序列:
Figure BDA0003664915520000021
Figure BDA0003664915520000022
其中,
Figure BDA0003664915520000023
Figure BDA0003664915520000024
分别表示第i个单词的嵌入表示,
Figure BDA0003664915520000025
Figure BDA0003664915520000026
分别表示第i个单词经过双向LSTM网络更新后的词向量表示,n和m分别表示节点和目标问句的文本长度;
对于节点,将词向量表示序列的首尾词向量与嵌入表示的答案信息进行拼接,得到节点的整体表示xv
Figure BDA0003664915520000027
其中,ea为节点的嵌入表示的答案信息;
对于目标问句,将词向量表示序列进行池化操作,得到目标问句的整体表示xy
Figure BDA0003664915520000028
(2)基于得到节点和目标问句的表示,使用图神经网络提取各节点间的特征,并融合目标问句表示得到输入序列的表示;
具体步骤如下:
利用知识图谱中的边集E中的信息,使用图神经网络来提取各节点间的特征:
首先利用连接节点的有向边,分别计算节点在每一次更新中的传入与传出信息:
Figure BDA0003664915520000031
Figure BDA0003664915520000032
其中,
Figure BDA0003664915520000033
Figure BDA0003664915520000034
分别表示节点v在第t次更新后的传入与传出信息,Nin(v)与Nout(c)分别表示节点v传入与传出节点集合,
Figure BDA0003664915520000035
表示节点v在第t次更新后节点表示,更新前的表示由文本处理得到:
Figure BDA0003664915520000036
然后,利用门控机制融合传入与传出信息,得到节点聚合信息
Figure BDA0003664915520000037
Figure BDA0003664915520000038
其中,α表示门控权重,通过计算输入和输出信息的逐元素操作和得到:
Figure BDA0003664915520000039
其中,σ表示Sigmoid激活函数;
再利用GRU神经网络更新节点表示:
Figure BDA00036649155200000310
经过多轮更新后,将所有节点的表示进行池化操作,得到知识图谱的整体表示xg:
Figure BDA00036649155200000311
将知识图谱的表示与目标问句的表示进行拼接,经过映射层,得到图谱问题相关性提取网络的输入序列的表示:
Figure BDA00036649155200000312
(3)根据输入序列的表示,使用LSTM神经网络预测生成目标问句中每一个单词概率,具体步骤如下:
首先利用输入数据的表示初始化LSTM神经网络的隐藏状态hdec与细胞状态cdec
Figure BDA00036649155200000313
然后利用输入的单词,更新隐藏状态与细胞状态,并得到预测下一个单词的输出向量
Figure BDA00036649155200000314
Figure BDA0003664915520000041
其中,
Figure BDA0003664915520000042
为输入的单词,在预测第一个单词时输入单词为序列开始符[SOS];
同时,利用注意力机制,计算当前状态与输入节点信息的相关性
Figure BDA0003664915520000043
Figure BDA0003664915520000044
Figure BDA0003664915520000045
将LSTM网络和注意力机制的输出向量拼接后映射到生成词典空间之上,并利用Softmax归一化计算单词的概率分布
Figure BDA0003664915520000046
Figure BDA0003664915520000047
(4)定义图谱问题相关性提取网络的损失函数,损失函数
Figure BDA0003664915520000048
如下:
Figure BDA0003664915520000049
其中,CE表示交叉熵损失函数,yt表示正确的目标问句中第t个单词;
步骤3:根据输入序列,构建知识库问答对生成网络,步骤如下:
(1)使用Glove词嵌入技术与LSTM神经网络提取输入序列中的节点分词中各单词的上下文特征,同时利用嵌入表示技术融合答案信息,得到嵌入表示的答案信息;基于各单词的上下文特征和嵌入表示的答案信息,得到节点的表示;
具体步骤如下:
将节点的文本序列v转换为单词的编号序列token_id,利用预训练好的Glove词嵌入参数将token_id转换为单词的嵌入表示序列;然后,利用双向LSTM网络对嵌入表示序列进行更新,得到词向量表示序列:
Figure BDA00036649155200000410
其中,
Figure BDA00036649155200000411
表示第i个单词的嵌入表示,
Figure BDA00036649155200000412
表示第i个单词经过双向LSTM网络更新后的词向量表示,n表示节点的文本长度;
然后,将词向量表示序列的首尾词向量与嵌入表示的答案信息进行拼接,得到节点的整体表示xv
Figure BDA00036649155200000413
其中,ea为节点的嵌入表示的答案信息;
(2)基于得到的节点表示,使用图神经网络提取各节点间的特征,获得输入序列的表示,具体步骤如下:
利用知识图谱中的边集E中的信息,使用图神经网络来提取各节点间的特征,
首先利用连接节点的有向边,分别计算节点在每一次更新中的传入与传出信息:
Figure BDA0003664915520000051
Figure BDA0003664915520000052
其中,
Figure BDA0003664915520000053
Figure BDA0003664915520000054
分别表示节点v在第t次更新后的传入与传出信息,Nin(v)与Nout(v)分别表示节点v传入与传出节点集合,
Figure BDA0003664915520000055
表示节点v在第t次更新后节点表示,更新前的表示由文本处理得到:
Figure BDA0003664915520000056
然后,利用门控机制融合传入与传出信息,得到节点聚合信息
Figure BDA0003664915520000057
Figure BDA0003664915520000058
其中,α表示门控权重,通过计算输入和输出信息的逐元素操作和得到:
Figure BDA0003664915520000059
其中,σ表示Sigmoid激活函数。
之后,利用GRU神经网络更新节点表示:
Figure BDA00036649155200000510
经过多轮更新后,将所有节点的表示进行池化操作,得到知识图谱的整体表示xg
Figure BDA00036649155200000511
将知识图谱的表示映射到对应的隐藏状态与细胞状态的空间中,得到知识库问答对生成网络的输入序列的表示:
Figure BDA00036649155200000512
(3)根据输入序列的表示,使用LSTM神经网络预测生成目标问句中每一个单词概率,具体步骤如下:
首先利用输入序列的表示初始化LSTM神经网络的隐藏状态hdec与细胞状态cdec
Figure BDA00036649155200000513
然后利用输入的单词,更新隐藏状态与细胞状态,并得到预测下一个单词的输出向量
Figure BDA00036649155200000514
Figure BDA00036649155200000515
其中,
Figure BDA00036649155200000516
为输入的单词,在预测第一个单词时输入单词为序列开始符[SOS]。
同时,利用注意力机制,计算当前状态与输入节点信息的相关性
Figure BDA00036649155200000517
Figure BDA00036649155200000518
Figure BDA00036649155200000519
将LSTM网络和注意力机制的输出向量拼接后映射到生成词典空间之上,并利用Softmax归一化计算单词的概率分布
Figure BDA0003664915520000061
Figure BDA0003664915520000062
(4)定义知识库问答对生成网络的损失函数,损失函数
Figure BDA0003664915520000063
如下:
最后,训练知识库问答对生成网络的完整损失函数定义为:
Figure BDA0003664915520000064
其中,λ1与λ2为调节不同损失比重的超参数;
Figure BDA0003664915520000065
为单词预测损失函数:
Figure BDA0003664915520000066
其中,CE表示交叉熵损失函数,yt表示正确的目标问句中第t个单词;
Figure BDA0003664915520000067
为预测概率蒸馏损失函数:
Figure BDA0003664915520000068
其中,KLDiv为Kullback-Leibler散度;
Figure BDA0003664915520000069
为中间状态蒸馏损失函数:
Figure BDA00036649155200000610
其中,cos_sim为余弦相似度,B表示一批样本的总数量,i表示第i个样本,k表示第k个输入序列的表示;
步骤4:利用知识库问答对生成网络,对输入序列进行处理,生成对应的问答对,用于对话生成系统。
本发明与现有技术相比的优点在于:
(1)本发明的方法提出了一个图谱问题相关性提取网络,该网络通过融合目标问句知识来准确提取图谱问句交互信息。图谱问题交互信息,即知识图谱与目标问句之间的关联,对于知识库问答对生成任务来说至关重要。但知识库问答对生成网络的输入编码过程往往只利用知识图谱和答案信息,而没有其它与目标问句相关的信息,这会导致生成的问答对与知识图谱相关性不足。本发明方法中的图谱问题相关性提取网络,旨在通过将目标问句的表示合并到知识图谱的编码中来准确地提取图谱问题交互信息,因此图谱问题相关性提取网络可以作为一个知识源,将学习捕捉到的图谱问题交互信息蒸馏至知识库问答对生成网络从而达到增强的目的,从而提升知识库问答对生成的精度。
(2)本发明的方法,使用了预测概率蒸馏损失函数和中间状态蒸馏损失函数,将图谱问句交互信息融入到知识库问答对生成网络中。图谱问题相关性提取网络提取到的图谱问题交互信息由于融合了目标问句信息,在推理过程中属于后验信息,只能在训练阶段使用。为此,需要使用知识蒸馏技术,使目标模型能够具备源模型的知识。本发明同时进行预测概率蒸馏与中间状态蒸馏,令知识库问答对生成网络去模仿图谱问题相关性提取网络的单词预测概率分布与输入数据表示,从而学习到图谱问题交互信息,有效提升知识库问答对生成的准确性。
附图说明
图1为本发明方法的实现流程图。
具体实施方式
下面结合附图和实例对本发明进一步说明。
如图1所示,本发明方法分为以下步骤。
步骤1:对知识图谱中的实体与关系以及目标问句进行分词及标注处理,以构建图谱问题相关性提取网络和知识库问答对生成网络的输入序列,具体如下:
知识图谱包括实体与关系,答案信息为知识图谱中的一部分实体,给定输入的知识图谱,将知识图谱转化为图结构信息,在图结构信息的基础上,将知识图谱中的所有实体与关系整理为节点集V={v1,…,v|V|},其中|V|代表节点的个数,每个节点v是一个实体或者关系;实体与关系的连接整理为边集E;同时对答案信息进行标注A={a1,…,a|V|},其中ai表示第i个节点的答案信息的标注,若此节点为答案信息,则其为1,反之若此节点不为答案信息,则其为0;然后对节点集中的每个节点以及目标问句进行分词处理,得到节点的文本序列和目标问句的文本序列,并作为输入序列;
步骤2:根据输入序列,构建图谱问题相关性提取网络,步骤如下:
(1)使用Glove词嵌入技术与LSTM神经网络提取输入序列中的节点分词和目标问句分词中各单词的上下文特征,同时利用嵌入表示技术融合答案信息,得到嵌入表示的答案信息;基于各单词的上下文特征和嵌入表示的答案信息,得到节点和目标问句的表示;
具体步骤如下:
将节点的文本序列v和目标问句的文本序列y转换为单词的编号序列token_id,利用预训练好的Glove词嵌入参数将token_id转换为单词的嵌入表示序列;然后,利用双向LSTM网络对嵌入表示序列进行更新,得到词向量表示序列:
Figure BDA0003664915520000081
Figure BDA0003664915520000082
其中,
Figure BDA0003664915520000083
Figure BDA0003664915520000084
分别表示第i个单词的嵌入表示,
Figure BDA0003664915520000085
Figure BDA0003664915520000086
分别表示第i个单词经过双向LSTM网络更新后的词向量表示,n和m分别表示节点和目标问句的文本长度;
对于节点,将词向量表示序列的首尾词向量与嵌入表示的答案信息进行拼接,得到节点的整体表示xv
Figure BDA0003664915520000087
其中,ea为节点的嵌入表示的答案信息;
对于目标问句,将词向量表示序列进行池化操作,得到目标问句的整体表示xy
Figure BDA0003664915520000088
(2)基于得到节点和目标问句的表示,使用图神经网络提取各节点间的特征,并融合目标问句表示得到输入序列的表示;
具体步骤如下:
利用知识图谱中的边集E中的信息,使用图神经网络来提取各节点间的特征:
首先利用连接节点的有向边,分别计算节点在每一次更新中的传入与传出信息:
Figure BDA0003664915520000089
Figure BDA00036649155200000810
其中,
Figure BDA00036649155200000811
Figure BDA00036649155200000812
分别表示节点v在第t次更新后的传入与传出信息,Nin(v)与Nout(v)分别表示节点v传入与传出节点集合,
Figure BDA00036649155200000813
表示节点v在第t次更新后节点表示,更新前的表示由文本处理得到:
Figure BDA00036649155200000814
然后,利用门控机制融合传入与传出信息,得到节点聚合信息
Figure BDA00036649155200000815
Figure BDA00036649155200000816
其中,α表示门控权重,通过计算输入和输出信息的逐元素操作和得到:
Figure BDA00036649155200000817
其中,σ表示Sigmoid激活函数;
再利用GRU神经网络更新节点表示:
Figure BDA00036649155200000818
经过多轮更新后,将所有节点的表示进行池化操作,得到知识图谱的整体表示xg
Figure BDA0003664915520000091
将知识图谱的表示与目标问句的表示进行拼接,经过映射层,得到图谱问题相关性提取网络的输入序列的表示:
Figure BDA0003664915520000092
(3)根据输入序列的表示,使用LSTM神经网络预测生成目标问句中每一个单词概率,具体步骤如下:
首先利用输入数据的表示初始化LSTM神经网络的隐藏状态hdec与细胞状态cdec
Figure BDA0003664915520000093
然后利用输入的单词,更新隐藏状态与细胞状态,并得到预测下一个单词的输出向量
Figure BDA0003664915520000094
Figure BDA0003664915520000095
其中,
Figure BDA0003664915520000096
为输入的单词,在预测第一个单词时输入单词为序列开始符[SOS];
同时,利用注意力机制,计算当前状态与输入节点信息的相关性
Figure BDA0003664915520000097
Figure BDA0003664915520000098
Figure BDA0003664915520000099
将LSTM网络和注意力机制的输出向量拼接后映射到生成词典空间之上,并利用Softmax归一化计算单词的概率分布
Figure BDA00036649155200000910
Figure BDA00036649155200000911
(4)定义图谱问题相关性提取网络的损失函数,损失函数
Figure BDA00036649155200000912
如下:
Figure BDA00036649155200000913
其中,CE表示交叉熵损失函数,yt表示正确的目标问句中第t个单词;
步骤3:根据输入序列,构建知识库问答对生成网络,步骤如下:
(1)使用Glove词嵌入技术与LSTM神经网络提取输入序列中的节点分词中各单词的上下文特征,同时利用嵌入表示技术融合答案信息,得到嵌入表示的答案信息;基于各单词的上下文特征和嵌入表示的答案信息,得到节点的表示;
具体步骤如下:
将节点的文本序列v转换为单词的编号序列token_id,利用预训练好的Glove词嵌入参数将token_id转换为单词的嵌入表示序列;然后,利用双向LSTM网络对嵌入表示序列进行更新,得到词向量表示序列:
Figure BDA0003664915520000101
其中,
Figure BDA0003664915520000102
表示第i个单词的嵌入表示,
Figure BDA0003664915520000103
表示第i个单词经过双向LSTM网络更新后的词向量表示,n表示节点的文本长度;
然后,将词向量表示序列的首尾词向量与嵌入表示的答案信息进行拼接,得到节点的整体表示xv
Figure BDA0003664915520000104
其中,ea为节点的嵌入表示的答案信息;
(2)基于得到的节点表示,使用图神经网络提取各节点间的特征,获得输入序列的表示,具体步骤如下:
利用知识图谱中的边集E中的信息,使用图神经网络来提取各节点间的特征,
首先利用连接节点的有向边,分别计算节点在每一次更新中的传入与传出信息:
Figure BDA0003664915520000105
Figure BDA0003664915520000106
其中,
Figure BDA0003664915520000107
Figure BDA0003664915520000108
分别表示节点v在第t次更新后的传入与传出信息,Nin(v)与Nout(v)分别表示节点v传入与传出节点集合,
Figure BDA0003664915520000109
表示节点v在第t次更新后节点表示,更新前的表示由文本处理得到:
Figure BDA00036649155200001010
然后,利用门控机制融合传入与传出信息,得到节点聚合信息
Figure BDA00036649155200001011
Figure BDA00036649155200001012
其中,α表示门控权重,通过计算输入和输出信息的逐元素操作和得到:
Figure BDA00036649155200001013
其中,σ表示Sigmoid激活函数。
之后,利用GRU神经网络更新节点表示:
Figure BDA00036649155200001014
经过多轮更新后,将所有节点的表示进行池化操作,得到知识图谱的整体表示xg
Figure BDA00036649155200001015
将知识图谱的表示映射到对应的隐藏状态与细胞状态的空间中,得到知识库问答对生成网络的输入序列的表示:
Figure BDA0003664915520000111
(3)根据输入序列的表示,使用LSTM神经网络预测生成目标问句中每一个单词概率,具体步骤如下:
首先利用输入序列的表示初始化LSTM神经网络的隐藏状态hdec与细胞状态cdec
Figure BDA0003664915520000112
然后利用输入的单词,更新隐藏状态与细胞状态,并得到预测下一个单词的输出向量
Figure BDA0003664915520000113
Figure BDA0003664915520000114
其中,
Figure BDA0003664915520000115
为输入的单词,在预测第一个单词时输入单词为序列开始符[SOS]。
同时,利用注意力机制,计算当前状态与输入节点信息的相关性
Figure BDA0003664915520000116
Figure BDA0003664915520000117
Figure BDA0003664915520000118
将LSTM网络和注意力机制的输出向量拼接后映射到生成词典空间之上,并利用Softmax归一化计算单词的概率分布
Figure BDA0003664915520000119
Figure BDA00036649155200001110
(4)定义知识库问答对生成网络的损失函数,损失函数
Figure BDA00036649155200001111
如下:
最后,训练知识库问答对生成网络的完整损失函数定义为:
Figure BDA00036649155200001112
其中,λ1与λ2为调节不同损失比重的超参数;
Figure BDA00036649155200001113
为单词预测损失函数:
Figure BDA00036649155200001114
其中,CE表示交叉熵损失函数,yt表示正确的目标问句中第t个单词;
Figure BDA00036649155200001115
为预测概率蒸馏损失函数:
Figure BDA00036649155200001116
其中,KLDiv为Kullback-Leibler散度;
Figure BDA00036649155200001117
为中间状态蒸馏损失函数:
Figure BDA0003664915520000121
其中,cos_sim为余弦相似度,B表示一批样本的总数量,i表示第i个样本,k表示第k个输入序列的表示;
步骤4:利用知识库问答对生成网络,对输入序列进行处理,生成对应的问答对,用于对话生成系统。
将本发明方法在知名知识库问答对生成数据集WebQuestions上进行实验,并与相应数据集上的顶尖方法进行了对比。
BLEU-4、METEOR以及ROUGE-L均为生成任务自动评价指标,主要考虑生成问句和正确答案之间词的重合程度。BLEU主要计算生成问句的准确率,考虑生成的问句中有多少连续的字符在正确答案中出现;ROUGE-L则主要考虑生成问句的召回率,利用生成问句和正确答案之间的最长公共子序列进行计算;METEOR方法应用WordNet知识库扩充同义词词集,并通过对齐生成问句和正确答案之间连续有序的单词块评估生成效果。
表1展示了各方法在WebQuestions上的实验结果,可以看到本发明方法相比于基础模型Graph2Seq在BLEU-4、METEOR以及ROUGE-L三项指标上都有了大幅度提升,并且对比其他方法生成结果更接近于正确答案,具有更高的生成精度。
表1各方法在WebQuestions上的表现
Figure BDA0003664915520000122
以上虽然描述了本发明的具体实施方法,但是本领域的技术人员应当理解,这些仅是举例说明,在不背离本发明原理和实现的前提下,可以对这些实施方案做出多种变更或修改,因此,本发明的保护范围由所附权利要求书限定。

Claims (2)

1.一种对话生成系统的知识库问答对生成方法,其特征在于,包括以下步骤:
步骤1:对知识图谱中的实体与关系以及目标问句进行分词及标注处理,以构建图谱问题相关性提取网络和知识库问答对生成网络的输入序列,具体如下:
步骤2:根据输入序列,构建图谱问题相关性提取网络,步骤如下:
(1)使用Glove词嵌入技术与LSTM神经网络提取输入序列中的节点分词和目标问句分词中各单词的上下文特征,同时利用嵌入表示技术融合答案信息,得到嵌入表示的答案信息;基于各单词的上下文特征和嵌入表示的答案信息,得到节点和目标问句的表示;
具体步骤如下:
将节点的文本序列v和目标问句的文本序列y转换为单词的编号序列token_id,利用预训练好的Glove词嵌入参数将token_id转换为单词的嵌入表示序列;然后,利用双向LSTM网络对嵌入表示序列进行更新,得到词向量表示序列:
Figure FDA0003664915510000011
Figure FDA0003664915510000012
其中,
Figure FDA0003664915510000013
Figure FDA0003664915510000014
分别表示第i个单词的嵌入表示,
Figure FDA0003664915510000015
Figure FDA0003664915510000016
分别表示第i个单词经过双向LSTM网络更新后的词向量表示,n和m分别表示节点和目标问句的文本长度;
对于节点,将词向量表示序列的首尾词向量与嵌入表示的答案信息进行拼接,得到节点的整体表示xv
Figure FDA0003664915510000017
其中,ea为节点的嵌入表示的答案信息;
对于目标问句,将词向量表示序列进行池化操作,得到目标问句的整体表示xy
Figure FDA0003664915510000018
(2)基于得到节点和目标问句的表示,使用图神经网络提取各节点间的特征,并融合目标问句表示得到输入序列的表示;
具体步骤如下:
利用知识图谱中的边集E中的信息,使用图神经网络来提取各节点间的特征:
首先利用连接节点的有向边,分别计算节点在每一次更新中的传入与传出信息:
Figure FDA0003664915510000019
Figure FDA00036649155100000110
其中,
Figure FDA0003664915510000021
Figure FDA0003664915510000022
分别表示节点v在第t次更新后的传入与传出信息,Nin(v)与Nout(v)分别表示节点v传入与传出节点集合,
Figure FDA0003664915510000023
表示节点v在第t次更新后节点表示,更新前的表示由文本处理得到:
Figure FDA0003664915510000024
然后,利用门控机制融合传入与传出信息,得到节点聚合信息
Figure FDA0003664915510000025
Figure FDA0003664915510000026
其中,α表示门控权重,通过计算输入和输出信息的逐元素操作和得到:
Figure FDA0003664915510000027
其中,σ表示Sigmoid激活函数;
再利用GRU神经网络更新节点表示:
Figure FDA0003664915510000028
经过多轮更新后,将所有节点的表示进行池化操作,得到知识图谱的整体表示xg
Figure FDA0003664915510000029
将知识图谱的表示与目标问句的表示进行拼接,经过映射层,得到图谱问题相关性提取网络的输入序列的表示:
Figure FDA00036649155100000210
(3)根据输入序列的表示,使用LSTM神经网络预测生成目标问句中每一个单词概率,具体步骤如下:
首先利用输入数据的表示初始化LSTM神经网络的隐藏状态hdec与细胞状态cdec
Figure FDA00036649155100000211
然后利用输入的单词,更新隐藏状态与细胞状态,并得到预测下一个单词的输出向量
Figure FDA00036649155100000212
Figure FDA00036649155100000213
其中,
Figure FDA00036649155100000214
为输入的单词,在预测第一个单词时输入单词为序列开始符[SOS];
同时,利用注意力机制,计算当前状态与输入节点信息的相关性
Figure FDA00036649155100000215
Figure FDA00036649155100000216
Figure FDA00036649155100000217
将LSTM网络和注意力机制的输出向量拼接后映射到生成词典空间之上,并利用Softmax归一化计算单词的概率分布
Figure FDA00036649155100000218
Figure FDA0003664915510000031
(4)定义图谱问题相关性提取网络的损失函数,损失函数
Figure FDA0003664915510000032
如下:
Figure FDA0003664915510000033
其中,CE表示交叉熵损失函数,yt表示正确的目标问句中第t个单词;
步骤3:根据输入序列,构建知识库问答对生成网络,步骤如下:
(1)使用Glove词嵌入技术与LSTM神经网络提取输入序列中的节点分词中各单词的上下文特征,同时利用嵌入表示技术融合答案信息,得到嵌入表示的答案信息;基于各单词的上下文特征和嵌入表示的答案信息,得到节点的表示;
具体步骤如下:
将节点的文本序列v转换为单词的编号序列token_id,利用预训练好的Glove词嵌入参数将token_id转换为单词的嵌入表示序列;然后,利用双向LSTM网络对嵌入表示序列进行更新,得到词向量表示序列:
Figure FDA0003664915510000034
其中,
Figure FDA0003664915510000035
表示第i个单词的嵌入表示,
Figure FDA0003664915510000036
表示第i个单词经过双向LSTM网络更新后的词向量表示,n表示节点的文本长度;
然后,将词向量表示序列的首尾词向量与嵌入表示的答案信息进行拼接,得到节点的整体表示xv
Figure FDA0003664915510000037
其中,ea为节点的嵌入表示的答案信息;
(2)基于得到的节点表示,使用图神经网络提取各节点间的特征,获得输入序列的表示,具体步骤如下:
利用知识图谱中的边集E中的信息,使用图神经网络来提取各节点间的特征:
首先利用连接节点的有向边,分别计算节点在每一次更新中的传入与传出信息:
Figure FDA0003664915510000038
Figure FDA0003664915510000039
其中,
Figure FDA00036649155100000310
Figure FDA00036649155100000311
分别表示节点v在第t次更新后的传入与传出信息,Nin(v)与Nout(v)分别表示节点v传入与传出节点集合,
Figure FDA00036649155100000312
表示节点v在第t次更新后节点表示,更新前的表示由文本处理得到:
Figure FDA00036649155100000313
然后,利用门控机制融合传入与传出信息,得到节点聚合信息
Figure FDA00036649155100000314
Figure FDA0003664915510000041
其中,α表示门控权重,通过计算输入和输出信息的逐元素操作和得到:
Figure FDA0003664915510000042
其中,σ表示Sigmoid激活函数。
之后,利用GRU神经网络更新节点表示:
Figure FDA0003664915510000043
经过多轮更新后,将所有节点的表示进行池化操作,得到知识图谱的整体表示xg
Figure FDA0003664915510000044
将知识图谱的表示映射到对应的隐藏状态与细胞状态的空间中,得到知识库问答对生成网络的输入序列的表示:
Figure FDA0003664915510000045
(3)根据输入序列的表示,使用LSTM神经网络预测生成目标问句中每一个单词概率,具体步骤如下:
首先利用输入序列的表示初始化LSTM神经网络的隐藏状态hdec与细胞状态cdec
Figure FDA0003664915510000046
然后利用输入的单词,更新隐藏状态与细胞状态,并得到预测下一个单词的输出向量
Figure FDA0003664915510000047
Figure FDA0003664915510000048
其中,
Figure FDA0003664915510000049
为输入的单词,在预测第一个单词时输入单词为序列开始符[SOS]。
同时,利用注意力机制,计算当前状态与输入节点信息的相关性
Figure FDA00036649155100000410
Figure FDA00036649155100000411
Figure FDA00036649155100000412
将LSTM网络和注意力机制的输出向量拼接后映射到生成词典空间之上,并利用Softmax归一化计算单词的概率分布
Figure FDA00036649155100000413
Figure FDA00036649155100000414
(4)定义知识库问答对生成网络的损失函数,损失函数
Figure FDA00036649155100000417
如下:
最后,训练知识库问答对生成网络的完整损失函数定义为:
Figure FDA00036649155100000415
其中,λ1与λ2为调节不同损失比重的超参数;
Figure FDA00036649155100000416
为单词预测损失函数:
Figure FDA0003664915510000051
其中,CE表示交叉熵损失函数,yt表示正确的目标问句中第t个单词;
Figure FDA0003664915510000052
为预测概率蒸馏损失函数:
Figure FDA0003664915510000053
其中,KLDiv为Kullback-Leibler散度;
Figure FDA0003664915510000054
为中间状态蒸馏损失函数:
Figure FDA0003664915510000055
其中,cos_sim为余弦相似度,B表示一批样本的总数量,i表示第i个样本,k表示第k个输入序列的表示;
步骤4:利用知识库问答对生成网络,对输入序列进行处理,生成对应的问答对,用于对话生成系统。
2.根据权利要求1所述的对话生成系统的知识库问答对生成方法,其特征在于:所述步骤1具体如下:
知识图谱包括实体与关系,答案信息为知识图谱中的一部分实体,给定输入的知识图谱,将知识图谱转化为图结构信息,在图结构信息的基础上,将知识图谱中的所有实体与关系整理为节点集V={v1,…,v|V|},其中|V|代表节点的个数,每个节点v是一个实体或者关系;实体与关系的连接整理为边集E;同时对答案信息进行标注A={a1,…,a|V|},其中ai表示第i个节点的答案信息的标注,若此节点为答案信息,则其为1,反之若此节点不为答案信息,则其为0;然后对节点集中的每个节点以及目标问句进行分词处理,得到节点的文本序列和目标问句的文本序列,并作为输入序列。
CN202210583071.3A 2022-05-26 2022-05-26 一种对话生成系统的知识库问答对生成方法 Pending CN115062123A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210583071.3A CN115062123A (zh) 2022-05-26 2022-05-26 一种对话生成系统的知识库问答对生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210583071.3A CN115062123A (zh) 2022-05-26 2022-05-26 一种对话生成系统的知识库问答对生成方法

Publications (1)

Publication Number Publication Date
CN115062123A true CN115062123A (zh) 2022-09-16

Family

ID=83197701

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210583071.3A Pending CN115062123A (zh) 2022-05-26 2022-05-26 一种对话生成系统的知识库问答对生成方法

Country Status (1)

Country Link
CN (1) CN115062123A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117151228A (zh) * 2023-10-31 2023-12-01 深圳大数信科技术有限公司 一种基于大模型与知识库生成的智能客服系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117151228A (zh) * 2023-10-31 2023-12-01 深圳大数信科技术有限公司 一种基于大模型与知识库生成的智能客服系统
CN117151228B (zh) * 2023-10-31 2024-02-02 深圳大数信科技术有限公司 一种基于大模型与知识库生成的智能客服系统

Similar Documents

Publication Publication Date Title
CN110609891B (zh) 一种基于上下文感知图神经网络的视觉对话生成方法
CN110298037B (zh) 基于增强注意力机制的卷积神经网络匹配的文本识别方法
CN108536679B (zh) 命名实体识别方法、装置、设备及计算机可读存储介质
CN111444340B (zh) 文本分类方法、装置、设备及存储介质
CN109934261B (zh) 一种知识驱动参数传播模型及其少样本学习方法
CN114298158A (zh) 一种基于图文线性组合的多模态预训练方法
CN110134946B (zh) 一种针对复杂数据的机器阅读理解方法
CN112100332A (zh) 词嵌入表示学习方法及装置、文本召回方法及装置
CN113255366B (zh) 一种基于异构图神经网络的方面级文本情感分析方法
CN111966812A (zh) 一种基于动态词向量的自动问答方法和存储介质
CN110427616A (zh) 一种基于深度学习的文本情感分析方法
CN111368542A (zh) 一种基于递归神经网络的文本语言关联抽取方法和系统
CN115495555A (zh) 一种基于深度学习的文献检索方法和系统
Zhang et al. A BERT fine-tuning model for targeted sentiment analysis of Chinese online course reviews
CN115130538A (zh) 文本分类模型的训练方法、文本处理的方法、设备及介质
CN112163089A (zh) 一种融合命名实体识别的军事高技术文本分类方法及系统
CN114417851A (zh) 一种基于关键词加权信息的情感分析方法
CN113094502A (zh) 一种多粒度外卖用户评论情感分析方法
CN112925904A (zh) 一种基于Tucker分解的轻量级文本分类方法
CN111597816A (zh) 一种自注意力命名实体识别方法、装置、设备及存储介质
CN115062123A (zh) 一种对话生成系统的知识库问答对生成方法
CN116522165B (zh) 一种基于孪生结构的舆情文本匹配系统及方法
CN116955644A (zh) 基于知识图谱的知识融合方法、系统及存储介质
CN115600595A (zh) 一种实体关系抽取方法、系统、设备及可读存储介质
CN116227486A (zh) 一种基于检索和对比学习的情感分析方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination