一种对话系统回答生成方法及系统技术方案

技术编号:21629639 阅读:19 留言:0更新日期:2019-07-17 11:19
本发明专利技术涉及一种对话系统回答生成方法及系统,包括以下步骤:步骤S1)将多轮对话数据按照每一轮进行切割,每一轮对话表示为(U,Y);步骤S2)对U中的每个词进行词性标注和命名实体识别,找到词序列中的关键词序列;步骤S3)使用数据库查询或者神经网络自动生成的方法,得到目标关键词序列。然后对每个目标关键词,查找得到该关键词的词向量;步骤S4)模型训练,对训练集中所有轮次的对话,使用seq2seq模型获得预测的词序列Y’;步骤S5)训练完成后,对测试样本中的任意一个用户输入样本,进行步骤S4)的操作,获得预测的词序列Y’。本发明专利技术不仅可有效控制生成的回答的内容,还提高了回答的质量。

A Method and System of Answer Generation in Dialogue System

【技术实现步骤摘要】
一种对话系统回答生成方法及系统
本专利技术涉及计算机网络领域,尤其涉及一种对话系统回答生成方法及系统。
技术介绍
随着科学技术的发展以及人工智能产业的兴起,以自然语言进行交互的口语对话系统在社会的方方面面有着极大需求。个人助理如苹果公司的Siri、微软的小娜、亚马逊的Echo等应运而生,给人们的日常生活带来便利;智能客服也应用在各大服务行业的龙头企业,减少人工客服的数量,并提升服务质量;在健康医疗领域,医疗对话系统和辅助诊断吸引着众多创业公司,百度医生等简化的医疗对话系统也逐步成型,为常见疾病导诊并提供初步诊断方案。目前市面上的这些对话系统多基于检索,即从多个候选回答中选取最佳答案,或者从互联网上检索相关答案,无法生成新的回答。为了能依据不同的问题,可以得到候选答案集合中没有的句子,基于生成的对话系统成为当前的挑战难题。给定一个用户输入文本和对话历史文本,如何生成合理、正确的回答是生成式对话系统的主要研究内容。由于深度学习和神经网络的兴起,目前的文本生成主要使用基于循环神经网络(RecurrentNeuralNetwork,以下简称RNN)的序列到序列(Sequencetosequence,以下简称Seq2seq模型)的生成方式。已有的方法是直接对输入文本的词序列和输出文本的词序列,使用循环神经网络建模。然而这些方法生成的词序列,没有考虑外部知识,完全由数据驱动,自由度过大,质量欠佳,而且过程不可控。
技术实现思路
本专利技术针对现有技术存在的不足,提出了一种对话系统回答生成方法,不仅可有效控制生成的回答的内容,还提高了回答的质量。本专利技术的一种对话系统回答生成方法,包括以下步骤:步骤S1)将多轮对话数据切割成单轮对话,每一轮对话表示为(U,Y),U={u1,u2,…,uT-1,uT}为该轮用户输入的词序列,Y={y1,y2,…,yn-1,yn}为该轮中回答的词序列;T表示用户输入的词序列的长度,n表示实际回答的词序列的长度;步骤S2)对U中的每个词进行词性标注和命名实体识别,找到词序列中的关键词序列G={g1,…,gL-1,gL},L为关键词序列的长度;步骤S3)使用数据库查询或者神经网络自动生成的方法,从关键词序列G得到目标关键词序列C={c1,…,ct-1,gt},然后对每个目标关键词,查找得到目标关键词的词向量序列X={x1,…,xt-1,xt},t为目标关键词序列的长度;步骤S4)模型训练,对训练集中所有轮次的对话,将每一轮的关键词词向量序列X输入Seq2seq模型,获得预测的词序列Y’;步骤S5)训练完成后,对测试样本中的任意一个用户输入样本,进行步骤S4)的操作,获得预测的词序列Y’。进一步,所述模型训练将每一轮的目标关键词词向量序列X输入Seq2seq模型,以该轮的回答Y作为正确的标签,与预测的词序列Y’求误差并进行梯度回传,多次迭代并用随机梯度下降法训练模型。进一步,所述步骤S4)中若对词序列Y’中含有句子结束符,则进行截断,只保留结束符之前的序列作为对话系统的回答;否则预测的词序列Y’直接作为对话系统的回答。一种对话系统回答生成系统,包括存储器、处理器和存储在存储器上的并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述方法的步骤。本专利技术的优点在于:有效地使用了词性、命名实体标注等外部知识,从句子提取出细粒度的更加准确的信息,再通过输入关键词到输出关键词的映射,限定了需要生成的文本的信息,生成的句子,是在输入文本和输出关键词的共同约束下得到的,包含了需要表达的信息,减小了生成的自由度,使得过程更加可控。从输出关键词再到句子,使得生成的句子能包含必须的有效信息。这一过程也符合了人脑先有需要表达的信息,再组织语言进行表达的过程。生成的句子合理、正确。本专利技术的回答生成方法不仅可有效控制生成的回答的内容,还提高了回答的质量。附图说明图1为本专利技术的方法的流程图;图2为本专利技术的Seq2seq模型示意图。具体实施方式下面结合附图对本专利技术进一步的描述。在对话系统中,本专利技术对用户输入文本进行处理,使用词性标注、命名实体识别等方式提取输入文本中的关键词,使用数据库查询或者神经网络自动生成的方法,得到期望回答中包含关键词的序列,根据这些关键词使用神经网络模型造句,生成回答文本。如图1所示,本专利技术的方法包括以下步骤:步骤S1)、将多轮对话数据切割成单轮对话,每轮表示为“用户输入-回答”的形式。并将数据分为训练集、开发集和测试集,用于训练,校验参数和测试。对于每一轮对话(U,Y),U={u1,u2,…,uT-1,uT}为该轮用户输入的词序列,Y={y1,y2,…,yn-1,yn}为该轮中回答的词序列;其中,T表示用户输入的词序列的长度,n表示实际回答的词序列的长度。步骤S2)、对U中的每个词进行词性标注和命名实体识别,找到词序列中的关键词序列G={g1,…,gL-1,gL};L为关键词序列的长度。步骤S3)、使用数据库查询或者神经网络自动生成的方法,从关键词序列G得到目标关键词序列C={c1,…,ct-1,gt},t为目标关键词序列的长度。然后对每个目标关键词,查找得到目标关键词的词向量序列X={x1,…,xt-1,xt};词向量将各个词表示为一个固定长度的向量,可提前使用语料训练得到,也可随机初始化,在模型中与其他参数同时进行训练。步骤S4)对训练集中所有轮次的对话,使用数据库查询或者神经网络自动生成的方法,将每一轮的关键词词向量序列X输入Seq2seq模型,以该轮的回答Y作为正确的标签,与预测的词序列Y’求误差并进行梯度回传。多次迭代并用随机梯度下降法训练模型。其中,Seq2seq模型包括编码器(Encoder)和解码器(Decoder),如图2所示,其中xi表示目标关键词序列中的第i个关键词的词向量(1≤i≤t),输入到编码器中的RNN中,编码得到各个关键词的隐层(Hiddenstate)。Cj表示从编码器的注意力(Attention)机制得到的第j时刻的上下文表示,输入到解码器中的RNN中,然后根据RNN该时刻的隐层或输出(Output),预测该时刻输出的词语yj。解码器一直重复从注意力读取C并预测该时刻的y直到达到设定的最大句子长度或句子结束符。步骤S5)训练完成后,对测试样本中的任意一个用户输入样本,进行与上述同样的操作,从解码器获得预测的词序列Y’。若对词序列Y’中含有句子结束符,则进行截断,只保留结束符之前的序列;否则预测的词序列Y’直接作为对话系统的回答。最后所应说明的是,以上实施例仅用以说明本专利技术的技术方案而非限制。尽管参照实施例对本专利技术进行了详细说明,本领域的普通技术人员应当理解,对本专利技术的技术方案进行修改或者等同替换,都不脱离本专利技术技术方案的精神和范围,其均应涵盖在本专利技术的权利要求范围当中。本文档来自技高网...

【技术保护点】
1.一种对话系统回答生成方法,其特征在于,包括以下步骤:步骤S1)将多轮对话数据切割成单轮对话,每一轮对话表示为(U,Y),U={u1,u2,…,uT‑1,uT}为该轮用户输入的词序列,Y={y1,y2,…,yn‑1,yn}为该轮中回答的词序列;T表示用户输入的词序列的长度,n表示实际回答的词序列的长度;步骤S2)对U中的每个词进行词性标注和命名实体识别,找到词序列中的关键词序列G={g1,…,gL‑1,gL},L为关键词序列的长度;步骤S3)使用数据库查询或者神经网络自动生成的方法,从关键词序列G得到目标关键词序列C={c1,…,ct‑1,gt},然后对每个目标关键词,查找得到目标关键词的词向量序列X={x1,…,xt‑1,xt},t为目标关键词序列的长度;步骤S4)模型训练,对训练集中所有轮次的对话,将每一轮的关键词词向量序列X输入Seq2seq模型,获得预测的词序列Y’;步骤S5)训练完成后,对测试样本中的任意一个用户输入样本,进行步骤S4)的操作,获得预测的词序列Y’。

【技术特征摘要】
1.一种对话系统回答生成方法,其特征在于,包括以下步骤:步骤S1)将多轮对话数据切割成单轮对话,每一轮对话表示为(U,Y),U={u1,u2,…,uT-1,uT}为该轮用户输入的词序列,Y={y1,y2,…,yn-1,yn}为该轮中回答的词序列;T表示用户输入的词序列的长度,n表示实际回答的词序列的长度;步骤S2)对U中的每个词进行词性标注和命名实体识别,找到词序列中的关键词序列G={g1,…,gL-1,gL},L为关键词序列的长度;步骤S3)使用数据库查询或者神经网络自动生成的方法,从关键词序列G得到目标关键词序列C={c1,…,ct-1,gt},然后对每个目标关键词,查找得到目标关键词的词向量序列X={x1,…,xt-1,xt},t为目标关键词序列的长度;步骤S4)模型训练,对训练集中所有轮次的对话,将每一轮的关键词词向量序列X输入Se...

【专利技术属性】
技术研发人员:何峻青赵学敏颜永红
申请(专利权)人:中国科学院声学研究所
类型:发明
国别省市:北京,11

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

1