CN109815323B - 一种人机交互训练问答生成算法 - Google Patents
一种人机交互训练问答生成算法 Download PDFInfo
- Publication number
- CN109815323B CN109815323B CN201910016929.6A CN201910016929A CN109815323B CN 109815323 B CN109815323 B CN 109815323B CN 201910016929 A CN201910016929 A CN 201910016929A CN 109815323 B CN109815323 B CN 109815323B
- Authority
- CN
- China
- Prior art keywords
- question
- sentence
- keywords
- model
- answer
- 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.)
- Expired - Fee Related
Links
Images
Abstract
本发明提供了一种人机交互训练问答生成算法,属于人工智能问答系统领域。本发明首先利用分词,将一个问题分成以问题类型为根节点、关键词为叶子结点、关键词之间的联系为隐节点的带权有向图结构,通过训练优化使整棵树的信息最多且关键词子树更精简有效,即最优模型,然后根据该图模型得到规则序列;将规则序列结合LSTM进行训练,从而生成最终的问答匹配规则,实现问答生成。
Description
技术领域
本发明属于人工智能问答系统领域,特别涉及一种人机交互训练问答生成算法。
背景技术
2011年10月14日,苹果公司在其iPhone 4S发布会上隆重推出新一代智能个人助理Siri。Siri通过自然语言的交互形式实现问答、结果推荐、手机操作等功能,并集成进iOS5及之后版本。2012年7月9日,谷歌发布智能个人助理Google Now,通过自然语言交互的方式提供页面搜索、自动指令等功能。2014年4月2日,微软发布同类产品Cortana,2014年10月,亚马逊发布同类产品Alexa。在此之前的2011年9月,由IBM研发的Watson机器人参加智力问答节目“Jeopardy!”,并战胜该节目的前冠军Brad Rut-ter和Ken Jennings,豪取一百万美金大奖。
人工智能问答系统是一种允许用户以自然语言进行查询,不需要把问题划分为关键词词组,系统结合相关自然与语言处理技术,通过对问题的理解检索到相应答案的新型智能检索系统。
智能时代,人类期望有更简单自然的方式与机器进行交互。因此以自然语言为交互方式的智能机器人广受青睐,受到各大IT厂家追捧。而其底层核心技术之一,即为自然语言问答系统。问答系统提供了自然语言形式的人与产品交互,降低了产品使用门槛,大幅提成用户体验。同时,问答系统可以帮助企业极大节省呼叫中心的投入。这些应用已经印证了问答系统的商业价值和社会价值。
优秀的问答系统有两个关键点:精确的问题理解和高质量的知识来源。近年来随着大数据的发展,这两点纷纷迎来了数据层面的发展契机。在数据发展的契机下,如何设定恰当模型学习并使用这一批数据就显得尤为重要。传统的基于规则的模型无法合理利用海量语料;基于关键词的模型则没有进行深入的语义理解。而一些复杂的图模型等,则由于时间复杂度很难直接应用在如此大规模的语料中。
发明内容
为了解决这一问题,本发明提供了一种人机交互训练问答生成算法,构建并优化问答图模型,并将基于图模型的规则序列结合LSTM进行训练,是一种创新性的问答系统表示和学习模型。
一种人机交互训练问答生成算法,其特征在于,包括以下步骤:
S1、根据输入的问题和对应的答案候选句子,通过分词和量化处理,提取句子的关键词及所述关键词在句子中的权重向量,得到以问题类型为根节点、关键词为叶子结点、关键词之间的联系为隐节点的带权有向图模型,优化所述图模型;
S2、根据优化后的图模型,得到规则序列,并对所述规则序列进行向量化;
S3、将向量化后的规则序列输入至长短期记忆网络(Long Short-Term Memory,LSTM)模型中进行训练,将训练得到的模型参数代入LSTM模型中,得到训练后的LSTM模型,输入问题至训练后的LSTM模型得到对应的答案句子。
进一步地,所述步骤S1包括以下流程:
S11、获取问题Q和对应的答案候选句子S,通过分词和量化处理,提取得到句子的关键词,以及所述关键词在句子中的权重向量,并得到关键词和句子之间的关系序列ANS={KS(i,j)},其中,KS(i,j)=(Ki,Sj),Ki表示提取的关键词集合中的第i个关键词,Sj表示与该关键词对应的第j个句子;
每个问题生成以问题类型为根节点、关键词为叶子结点、关键词之间的联系为隐节点的带权有向图模型,为Q=(T,K,R),其中,T表示问题类型,K表示对应关键词的节点,R表示关键词间关联关系的序列集,bi表示关键词Ki子树所占的权重,βi,k表示关键词Ki与句子Sk的关联程度;
S12、构造目标函数;
构造的两个目标函数为
其中,
G(Ri,j)=bi·GRi 2+bj·GRj 2
其中,bi、bj为待求参数,表示关键词子树的权重;βi,k为关键词Ki关联的句子Sk的权重向量;Mi为关键词Ki的关联句子的个数;f(sk)表示句子Sk中含有的关键词对应的特征向量;Z为归一化系数;E(*)表示取期望值;两个目标函数采用交替优化来实现;
S13、优化目标函数,确定所述图模型的边权重;
根据maxScore(T)求得bi
先赋予b、β初始值,通过所述步骤S13更新b、β的值;
S14,判断迭代次数是否超过预设迭代次数阈值,若没超过所述预设迭代次数阈值,流程返回所述步骤S13继续进行迭代更新;若超过所述预设迭代次数阈值,得到优化后的图模型。
进一步地,所述步骤S3包括以下流程:
S31、将向量化后的规则序列输入至LSTM模型,进行训练;
S32、前向计算每个神经元的输出值,即ft、it、ct、ot、ht五个向量的值;
S33、反向计算每个神经元的误差项δ值;
S34、根据相应的误差项,计算每个权重的梯度;
S35、判断损失函数值是否达到预设阈值,若没有达到,流程返回所述步骤S32;若达到,得到训练后的LSTM模型;
S36、输入问题至训练后的LSTM模型得到对应的答案句子,得到问答对。
本发明的有益效果:本发明提供了一种人机交互训练问答生成算法,利用分词,将一个问题分成以问题类型为根节点、关键词为叶子结点、关键词之间的联系为隐节点的带权有向图结构,通过训练优化使整棵树的信息最多且关键词子树更精简有效,即最优模型,然后根据该图模型得到规则序列;将规则序列结合LSTM进行训练,从而生成最终的问答匹配规则,实现问答生成。
附图说明
图1为本发明实施例提供的流程图。
图2为本发明实施例提供的带权有向图模型图。
图3为本发明实施例提供的规则序列图。
图4为本发明实施例提供的LSTM模型输出门图。
图5为本发明实施例提供的LSTM模型最终输出图。
具体实施方式
下面结合附图对本发明的实施例做进一步的说明。
请参阅图1,本发明提出了一种人机交互训练问答生成算法,通过以下步骤实现:
S1、根据输入的问题和对应的答案候选句子,通过分词和量化处理,提取句子的关键词及所述关键词在句子中的权重向量,得到以问题类型为根节点、关键词为叶子结点、关键词之间的联系为隐节点的带权有向图模型,优化图模型。
本实施例中,Answer selection是QA中的一个重要任务。基本定义是:给出问题Q和该问题的答案候选池(S是池大小),目标是从答案池中找到可以准确回答问题最佳答案候选。
本实施例中,问答知识库中,一个问题的答案通常是一段文字,我们将所有句子的集合称为S。
本实施例中,步骤S1通过以下流程实现:
S11、获取问题Q和对应的答案候选句子S,通过分词和量化处理,提取得到句子的关键词,以及所述关键词在句子中的权重向量,并得到关键词和句子之间的关系序列ANS={KS(i,j)},其中,KS(i,j)=(Ki,Sj),Ki表示提取的关键词集合中的第i个关键词,Sj表示与该关键词对应的第j个句子;
每个问题生成以问题类型为根节点、关键词为叶子结点、关键词之间的联系为隐节点的带权有向图模型,为Q=(T,K,R),其中,T表示问题类型,K表示对应关键词的节点,R表示关键词间关联关系的序列集,bi表示关键词Ki子树所占的权重,βi,k表示关键词Ki与句子Sk的关联程度。构建的图模型如图2所示。
S12、构造目标函数。
本实施例中,该图模型主要是确定相关的边权重,通过优化如下两个目标函数来实现:
其中,
G(Ri,j)=bi·GRi 2+bj·GRj 2 (5)
其中,bi、bj为待求参数,表示关键词子树的权重;βi,k为关键词Ki关联的句子Sk的权重向量;Mi为关键词Ki的关联句子的个数;f(sk)表示句子Sk中含有的关键词对应的特征向量;Z为归一化系数;E(*)表示取期望值;两个目标函数采用交替优化来实现;
S13、优化目标函数,确定图模型的边权重;
本实施例中,优化过程中,根据式(2)求导得到
根据式(1)求得bi
先赋予b、β初始值,通过求得的偏导公式(7)和求值公式(8)不断更新b、β的值,直到达到迭代上限。
S14,判断迭代次数是否超过预设迭代次数阈值,若没超过预设迭代次数阈值,流程返回步骤S13继续进行迭代更新;若超过预设迭代次数阈值,得到优化后的图模型。
S2、根据优化后的图模型,得到规则序列,并对规则序列进行向量化。
本实施例中,根据优化后的图模型,可得到最佳的规则序列。
本实施例中,采用的图模型为:关键词K1关联句子S1到S2,关键词K2关联句子S3到S4,关键词K1和K2之间的相关关系为R1,将图模型和答案相结合,得到的规则序列如图3所示。
因此,对应的用于训练LSTM的规则集为
RS={K1→S1,S1→S2,S2→R1,R1→K2,K2→S3,S3→S4}
经过向量化后,规则集就成为具有类时序功能的数据。
S3、将向量化后的规则序列输入至长短期记忆网络(Long Short-Term Memory,LSTM)模型中进行训练,将训练得到的模型参数代入LSTM模型中,得到训练后的LSTM模型,输入问题至训练后的LSTM模型得到对应的答案句子。
本实施例中,步骤S3通过以下流程实现:
S31、将向量化后的规则序列输入至LSTM模型,进行训练。
本实施例中,根据S2中的序列,LSTM模型的输入为X、Y
X:(K1,S1,S2,R1,K2,S3),Y:(S1,S2,R1,K2,S3,S4)
由于原始RNN只对短期输入非常敏感,我们利用LSTM可以存储长期记忆的特点进行训练。LSTM对于长期记忆的处理如下。
请参阅图4,图4的输出门控制了长期记忆对当前输出的影响:
ot=σ(Wo·[ht-1,xt]+bo)
请参阅图5,LSTM模型最终的输出为
ht=ot*tanh(ct)
S32、前向计算每个神经元的输出值,即ft、it、ct、ot、ht五个向量的值。
S33、反向计算每个神经元的误差项δ值。
本实施例中,该步骤包括两个方向:一个是沿时间的反向传播,即从当前t时刻开始,计算每个时刻的误差项;一个是将误差项向上一层传播。
S34、根据相应的误差项,计算每个权重的梯度。
S35、判断损失函数值是否达到预设阈值,若没有达到,流程返回步骤S32;若达到,得到训练后的LSTM模型。
S36、输入问题至训练后的LSTM模型得到对应的答案句子,得到问答对。
本领域的普通技术人员将会意识到,这里的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (2)
1.一种人机交互训练问答生成方法,其特征在于,包括以下步骤:
S1、根据输入的问题和对应的答案候选句子,通过分词和量化处理,提取句子的关键词及所述关键词在句子中的权重向量,得到以问题类型为根节点、关键词为叶子结点、关键词之间的联系为隐节点的带权有向图模型,优化所述图模型;步骤S1包括以下流程:
S11、获取问题Q和对应的答案候选句子S,通过分词和量化处理,提取得到句子的关键词,以及所述关键词在句子中的权重向量,并得到关键词和句子之间的关系序列ANS={KS(i,j)},其中,KS(i,j)=(Ki,Sj),Ki表示提取的关键词集合中的第i个关键词,Sj表示与该关键词对应的第j个句子;
每个问题生成以问题类型为根节点、关键词为叶子结点、关键词之间的联系为隐节点的带权有向图模型,为Q=(T,K,R),其中,T表示问题类型,K表示对应关键词的节点,R表示关键词间关联关系的序列集,bi表示关键词Ki子树所占的权重,βi,k表示关键词Ki与句子Sk的关联程度;
S12、构造目标函数;
构造的两个目标函数为
其中,
G(Ri,j)=bi·GRi 2+bj·GRj 2
其中,bi、bj为待求参数,表示关键词子树的权重;βi,k为关键词Ki关联的句子Sk的权重向量;Mi为关键词Ki的关联句子的个数;f(sk)表示句子Sk中含有的关键词对应的特征向量;Z为归一化系数;E(*)表示取期望值;两个目标函数采用交替优化来实现;
S13、优化目标函数,确定所述图模型的边权重;
根据maxScore(T)求得bi
先赋予b、β初始值,通过所述步骤S13更新b、β的值;
S14,判断迭代次数是否超过预设迭代次数阈值,若没超过所述预设迭代次数阈值,流程返回所述步骤S13继续进行迭代更新;若超过所述预设迭代次数阈值,得到优化后的图模型;
S2、根据优化后的图模型,得到规则序列,并对所述规则序列进行向量化;
S3、将向量化后的规则序列输入至长短期记忆网络(Long Short-Term Memory,LSTM)模型中进行训练,将训练得到的模型参数代入LSTM模型中,得到训练后的LSTM模型,输入问题至训练后的LSTM模型得到对应的答案句子。
2.如权利要求1所述的人机交互训练问答生成方法,其特征在于,所述步骤S3包括以下流程:
S31、将向量化后的规则序列输入至LSTM模型,进行训练;
S32、前向计算每个神经元的输出值,即ft、it、ct、ot、ht五个向量的值;ct表示单元状态,ot表示长期记忆对当前输出的影响,ht表示LSTM模型最终的输出;
S33、反向计算每个神经元的误差项δ值;
S34、根据相应的误差项,计算每个权重的梯度;
S35、判断损失函数值是否达到预设阈值,若没有达到,流程返回所述步骤S32;若达到,得到训练后的LSTM模型;
S36、输入问题至训练后的LSTM模型得到对应的答案句子,得到问答对。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910016929.6A CN109815323B (zh) | 2019-01-08 | 2019-01-08 | 一种人机交互训练问答生成算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910016929.6A CN109815323B (zh) | 2019-01-08 | 2019-01-08 | 一种人机交互训练问答生成算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109815323A CN109815323A (zh) | 2019-05-28 |
CN109815323B true CN109815323B (zh) | 2021-02-12 |
Family
ID=66603114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910016929.6A Expired - Fee Related CN109815323B (zh) | 2019-01-08 | 2019-01-08 | 一种人机交互训练问答生成算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109815323B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309282B (zh) * | 2019-06-14 | 2021-08-27 | 北京奇艺世纪科技有限公司 | 一种答案确定方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844741A (zh) * | 2017-02-13 | 2017-06-13 | 哈尔滨工业大学 | 一种面向特定领域的问题解答方法 |
WO2018236674A1 (en) * | 2017-06-23 | 2018-12-27 | Bonsai Al, Inc. | HIERARCHICAL DECOMPOSITION DEEPENING REINFORCEMENT LEARNING FOR A MODEL OF ARTIFICIAL INTELLIGENCE |
CN107844533A (zh) * | 2017-10-19 | 2018-03-27 | 云南大学 | 一种智能问答系统及分析方法 |
CN107977236B (zh) * | 2017-12-21 | 2020-11-13 | 上海智臻智能网络科技股份有限公司 | 问答系统的生成方法、终端设备、存储介质及问答系统 |
CN108509519B (zh) * | 2018-03-09 | 2021-03-09 | 北京邮电大学 | 基于深度学习的通用知识图谱增强问答交互系统及方法 |
-
2019
- 2019-01-08 CN CN201910016929.6A patent/CN109815323B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN109815323A (zh) | 2019-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110222163B (zh) | 一种融合cnn与双向lstm的智能问答方法及系统 | |
CN109840287B (zh) | 一种基于神经网络的跨模态信息检索方法和装置 | |
CN108733792B (zh) | 一种实体关系抽取方法 | |
CN110110062B (zh) | 机器智能问答方法、装置与电子设备 | |
CN109614471B (zh) | 一种基于生成式对抗网络的开放式问题自动生成方法 | |
CN110390397B (zh) | 一种文本蕴含识别方法及装置 | |
CN112270193A (zh) | 基于bert-flat的中文命名实体识别方法 | |
CN104598611B (zh) | 对搜索条目进行排序的方法及系统 | |
CN106126507A (zh) | 一种基于字符编码的深度神经翻译方法及系统 | |
CN108427665A (zh) | 一种基于lstm型rnn模型的文本自动生成方法 | |
CN111400461B (zh) | 智能客服问题匹配方法及装置 | |
CN111191002A (zh) | 一种基于分层嵌入的神经代码搜索方法及装置 | |
CN110457661B (zh) | 自然语言生成方法、装置、设备及存储介质 | |
CN111027292B (zh) | 一种限定采样文本序列生成方法及其系统 | |
CN110334196B (zh) | 基于笔画和自注意力机制的神经网络中文问题生成系统 | |
CN111125333B (zh) | 一种基于表示学习与多层覆盖机制的生成式知识问答方法 | |
CN112559706B (zh) | 对话生成模型的训练方法、对话方法、设备以及存储介质 | |
CN107679225A (zh) | 一种基于关键词的回复生成方法 | |
CN110597968A (zh) | 一种回复选择方法及装置 | |
Lin | Reinforcement learning and bandits for speech and language processing: Tutorial, review and outlook | |
CN111949762B (zh) | 基于上下文情感对话的方法和系统、存储介质 | |
CN109815323B (zh) | 一种人机交互训练问答生成算法 | |
CN111046157B (zh) | 一种基于平衡分布的通用英文人机对话生成方法和系统 | |
CN116662502A (zh) | 基于检索增强的金融问答文本生成方法、设备及存储介质 | |
CN116225525A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210212 Termination date: 20220108 |