CN113761149A - 对话信息处理方法、装置、计算机设备及存储介质 - Google Patents
对话信息处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN113761149A CN113761149A CN202110425179.5A CN202110425179A CN113761149A CN 113761149 A CN113761149 A CN 113761149A CN 202110425179 A CN202110425179 A CN 202110425179A CN 113761149 A CN113761149 A CN 113761149A
- Authority
- CN
- China
- Prior art keywords
- dialogue
- information
- dialog
- model
- input
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3343—Query execution using phonetics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本申请关于一种对话信息处理方法、装置、计算机设备及存储介质,涉及人工智能技术领域。所述方法包括:通过对话模型对一轮对话中的目标输入对话信息进行处理,得到预测应答对话信息,然后再通过判别器,对目标输入对话信息、预测应答信息、以及通过目标输入对话信息查询到的目标查询信息进行处理得到指示预测应答对话信息是否为对话模型的输出的判别结果,最后通过判别结果执行对上述对话模型和判别器的对抗训练,从而实现了通过每一轮对话过程的预测结果,对上述对话模型进行参数更新,由于单次对话过程中的每一轮对话都会参与训练中,提高了对话模型的训练效率和训练效果,进而提高了训练获得的对话模型的准确性。
Description
技术领域
本申请涉及人工智能技术领域,特别涉及一种对话信息处理方法、装置、计算机设备及存储介质。
背景技术
智能对话是接收到用户输入的对话信息,并通过人工智能进行处理,以实现对用户输入的对话信息进行应答的一系列相关技术。
在相关技术中,面向任务导向型的对话系统通常通过强化学习的方式进行训练。在通过强化学习的方式对任务导向型的对话系统进行训练的过程中,当每一次对话(包含多轮对话)完成后,可以根据本次对话的对话轮数以及对话成功与否确定奖励数值,并基于奖励数值对用于对话系统的模型进行参数更新。
上述技术方案中,通过强化学习的方法对用于对话系统的模型进行训练时,每一次对话完成后才获取对话的奖励,训练过程中的奖励较为稀疏,导致训练效率和训练效果较差。
发明内容
本申请实施例提供了一种对话信息处理方法、装置、计算机设备及存储介质,可以提高对话模型的训练效率和训练效果,该技术方案如下:
一方面,提供了一种对话信息处理方法,所述方法包括:
获取目标输入对话信息,所述目标输入对话信息是单次对话过程中的第k轮对话的输入对话信息;k大于等于1,且k为整数;
通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息;
通过所述对抗网络中的判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的判别结果;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的相关信息;所述判别结果用于指示所述预测应答对话信息是否为所述对话模型的输出;
基于所述第k轮对话的判别结果,通过对抗训练的方式对所述对抗网络进行训练;
其中,训练后的所述对抗网络中的所述对话模型,用于基于第一输入对话信息,获得所述第一输入对话信息的第一应答对话信息。
又一方面,提供了一种对话信息处理方法,所述方法包括:
接收第一输入对话信息;
通过目标对话模型对所述第一输入对话信息进行处理,获得所述第一输入对话信息的第一应答对话信息;
输出所述第一应答对话信息;
其中,所述目标对话模型是对抗网络中的对话模型;所述对抗网络时基于单次对话过程中的第k轮对话的判别结果,通过对抗训练的方式训练的网络;所述第k轮对话的判别结果是所述对抗网络中的判别器对目标输入对话信息、预测应答对话信息、以及目标查询信息进行处理得到的;所述目标输入对话信息是所述单次对话过程中的第k轮对话的输入对话信息;所述预测应答对话信息是所述对抗网络中的对话模型对所述目标输入对话信息进行处理得到的;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的;k大于等于1,且k为整数。
再一方面,提供了一种对话信息处理装置,所述装置包括:
输入对话获取模块,用于获取目标输入对话信息,所述目标输入对话信息是单次对话过程中的第k轮对话的输入对话信息;k大于等于1,且k为整数;
应答预测模块,用于通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息;
判别预测模块,用于通过所述对抗网络中的判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的判别结果;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的相关信息;所述判别结果用于指示所述预测应答对话信息是否为所述对话模型的输出;
对抗训练模块,用于基于所述第k轮对话的判别结果,通过对抗训练的方式对所述对抗网络进行训练;
其中,训练后的所述对抗网络中的所述对话模型,用于基于第一输入对话信息,获得所述第一输入对话信息的第一应答对话信息。
在一种可能的实现方式中,所述判别预测模块,包括:
隐向量获取子模块,用于通过所述判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的隐向量;
判别结果获取子模块,用于基于所述单次对话过程中的前k轮对话的隐向量,获取所述第k轮对话的判别结果。
在一种可能的实现方式中,所述判别结果获取子模块,用于,
基于所述单次对话过程中的前k轮对话的隐向量进行最大池化处理,获得最大池化结果;
基于所述最大池化结果,输出所述第k轮对话的判别结果。
在一种可能的实现方式中,所述判别器为双向长短期记忆神经网络。
在一种可能的实现方式中,所述对抗训练模块,用于,
响应于对所述对话模型进行训练,基于所述第k轮对话的判别结果,获取所述第k轮对话的奖励数值;
基于所述第k轮对话的奖励数值,对所述对话模型进行参数更新。
在一种可能的实现方式中,所述对抗训练模块,用于,
响应于对所述判别器进行训练,基于所述第k轮对话的判别结果,获取所述第k轮对话的损失函数值;
基于所述第k轮对话的损失函数值,对所述判别器进行参数更新。
在一种可能的实现方式中,所述对抗训练模块,还用于,
响应于对所述判别器进行训练,获取样本对话信息,所述样本对话信息包含样本输入对话信息以及样本应答对话信息;所述样本对话信息是第一样本对话过程中的一轮对话信息;
基于所述样本输入对话信息,从所述指定数据库中查询获得样本查询信息;
通过所述对抗网络中的判别器对所述样本输入对话信息、所述样本应答对话信息、以及所述样本查询信息进行处理,获得样本判别结果;
基于所述样本判别结果,获取样本损失函数值;
基于所述样本损失函数值,对所述判别器进行参数更新。
在一种可能的实现方式中,所述应答预测模块,用于通过所述对话模型对所述目标输入对话信息、所述对话模型对所述单次对话过程中的第k-1轮对话输出的应答对话信息、以及所述目标查询信息进行处理,获得所述预测应答对话信息。
在一种可能的实现方式中,所述装置还包括:
预训练模块,用于在应答预测模块通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息之前,基于第二样本对话过程中的各轮对话信息,通过强化学习的方式,对所述对话模型进行预训练。
在一种可能的实现方式中,所述输入对话信息是医疗领域的输入对话,所述指定数据库是医疗领域的数据库。
又一方面,提供了一种对话信息处理装置,所述装置包括:
输入对话获取模块,用于接收第一输入对话信息;
应答对话获取模块,用于通过目标对话模型对所述第一输入对话信息进行处理,获得所述第一输入对话信息的第一应答对话信息;
应答对话输出模块,用于输出所述第一应答对话信息;
其中,所述目标对话模型是对抗网络中的对话模型;所述对抗网络时基于单次对话过程中的第k轮对话的判别结果,通过对抗训练的方式训练的网络;所述第k轮对话的判别结果是所述对抗网络中的判别器对目标输入对话信息、预测应答对话信息、以及目标查询信息进行处理得到的;所述目标输入对话信息是所述单次对话过程中的第k轮对话的输入对话信息;所述预测应答对话信息是所述对抗网络中的对话模型对所述目标输入对话信息进行处理得到的;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的;k大于等于1,且k为整数。
再一方面,提供了一种计算机设备,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条计算机指令,所述至少一条计算机指令由所述处理器加载并执行以实现上述的对话信息处理方法。
又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条计算机指令,所述至少一条计算机指令由处理器加载并执行以实现上述的对话信息处理方法。
又一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述对话信息处理方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过对话模型对一轮对话中的目标输入对话信息进行处理,得到预测应答对话信息,然后再通过判别器,对目标输入对话信息、预测应答信息、以及通过目标输入对话信息查询到的目标查询信息进行处理得到指示预测应答对话信息是否为对话模型的输出的判别结果,最后通过判别结果执行对上述对话模型和判别器的对抗训练,从而实现了通过每一轮对话过程的预测结果,对上述对话模型进行参数更新,由于单次对话过程中的每一轮对话都会参与训练中,能够解决相关技术中的强化学习方案产生奖励值的密度较低的问题,从而提高了对话模型的训练效率和训练效果,进而提高了训练获得的对话模型的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的一种对话信息处理系统的结构示意图;
图2是根据一示例性实施例示出的一种对话信息处理方法的流程示意图;
图3是根据一示例性实施例示出的一种对话信息处理方法的流程示意图;
图4是根据一示例性实施例示出的一种对话模型训练及应用框架图;
图5是根据一示例性实施例示出的一种对话信息处理方法的流程示意图;
图6是图4所示实施例涉及的一种对话模型的结构示意图;
图7是图4所示实施例涉及的判别器的模型结构图;
图8是根据一示例性实施例示出的一种对话模型训练及应用框架图;
图9是根据一示例性实施例示出的一种对话信息处理装置的结构方框图;
图10是根据一示例性实施例示出的一种对话信息处理装置的结构方框图;
图11是根据一示例性实施例示出的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在对本申请所示的各个实施例进行说明之前,首先对本申请涉及到的几个概念进行介绍:
1)AI(Artificial Intelligence,人工智能)
AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
2)NLP(Nature Language Processing,自然语言处理)
NLP是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
3)ML(Machine Learning,机器学习)
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
4)RL(Reinforcement Learning,强化学习)
强化学习,又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习的常见模型是标准的马尔可夫决策过程(MarkovDecision Process,MDP)。按给定条件,强化学习可分为基于模式的强化学习(model-basedRL)和无模式强化学习(model-free RL),以及主动强化学习(active RL)和被动强化学习(passive RL)。强化学习的变体包括逆向强化学习、阶层强化学习和部分可观测系统的强化学习。求解强化学习问题所使用的算法可分为策略搜索算法和值函数(value function)算法两类。深度学习模型可以在强化学习中得到使用,形成深度强化学习。
5)对抗学习
对抗学习一般指的是生成GANs(Generative Adversarial Networks,对抗网络)。对抗网络是通过模拟一种数据概率分布的生成器,使得概率分布与观测数据的概率统计分布一致或者尽可能接近。这个过程设计纳什均衡中的博弈机制,具体包括在训练中,判别模型尽可能提取特征正确率增加的米晓鸥,生成模型尽可能“伪造”让判别模型以为是真的结果。进一步的,对抗学习中包括条件生成对抗网络、深度卷积对抗网络等等,以解决对抗学习稳定性不高、训练数据还原度及质量水平等问题。
图1是根据一示例性实施例示出的一种对话信息处理系统的结构示意图。该系统包括:服务器120以及用户终端140。
服务器120是一台服务器,或者包括若干台服务器,或者是一个虚拟化平台,或者是一个云计算服务中心等,本申请不做限制。
用户终端140可以是具有数据处理功能的终端设备,比如,用户终端可以是手机、平板电脑、膝上型便携计算机和台式计算机等等。用户终端140的数量不做限定。
其中,用户终端140中可以安装有客户端,该客户端可以是办公类客户端、即时通信客户端、浏览器客户端、教育客户端等,具有语音输入功能或文字输入功能的客户端。本申请实施例不限定客户端的软件类型。
可选的,用户可以通过用户终端140中的客户端中的文字输入软件输入文字信息。
可选的,用户还可以通过用户终端140中的语音获取组件,通过语音的方式输入语音信息,用户终端140调用相应的语音识别功能,将用户输入的语音信息转换为文字信息。
可选的,该语音识别功能可以是该用户终端140调用该用户终端140中的语音识别模块实现的。
可选的,该语音识别功能可以是用户终端140调用该客户端对应的服务器中的语音识别模块实现的。
用户终端140与服务器120之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
可选的,该系统还可以包括管理设备(图1未示出),该管理设备与服务器120之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于LAN(Local Area Network,局域网)、MAN(Metropolitan Area Network,城域网)、WAN(Wide Area Network,广域网)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合。在一些实施例中,使用包括HTML(Hyper Text Mark-up Language,超文本标记语言)、XML(Extensible Markup Language,可扩展标记语言)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如SSL(Secure Socket Layer,安全套接字层)、TLS(Transport Layer Security,传输层安全)、VPN(Virtual Private Network,虚拟专用网络)、IPsec(Internet ProtocolSecurity,网际协议安全)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
可选的,本申请实施例涉及的系统可以是由客户端、多个节点(接入网络中的任意形式的计算设备,如服务器、终端)通过网络通信的形式连接形成的分布式系统。
可选的,该分布式系统可以是区块链系统。
可选的,如本申请所公开的对话信息获取方法,其中该对话信息获取方法中涉及到的数据均可保存于上述区块链系统上。
图2是根据一示例性实施例示出的一种对话信息处理方法的流程示意图。该方法可以由计算机设备执行,比如,该计算机设备可以是服务器,其中,该服务器可以是上述图1所示的实施例中的服务器120。如图2所示,该对话信息处理方法可以包括如下步骤:
步骤21,获取目标输入对话信息,该目标输入对话信息是单次对话过程中的第k轮对话的输入对话信息;k大于等于1,且k为整数。
可选的,该目标输入对话信息是预先存储在服务器中的数据存储组件中的。
可选的,该目标输入对话信息是通过服务器对应的终端设备上传的文本数据。
可选的,该目标输入对话信息也可以是通过服务器对应的终端设备上传的语音数据处理得到的。
在一种可能的实现方式中,服务器获取该终端设备上传的语音数据,通过语音识别模块对该语音数据进行识别,获得该语音数据对应的目标输入对话信息。
在本申请实施例中,单次对话过程包含一轮或者多轮对话,每轮对话包括一句输入对话信息以及一句应答对话信息,该应答对话信息是对前述的输入对话信息的应答。
例如,在对话系统中,一次对话过程包含多轮对话,每一轮对话包含用户输入的一句输入语句(即输入对话信息),以及对话系统对该对话信息输出的一句应答语句(即应答对话信息)。
步骤22,通过对抗网络中的对话模型对该目标输入对话信息进行处理,获得该对话模型输出的预测应答对话信息。
可选的,该对话模型是用于根据输入对话信息,生成与该输入对话信息对应的应答对话信息的神经网络模型。
在任务导向型对话系统中,当对话模型接收到输入对话信息后,可以根据输入对话信息生成应答对话信息并返回,此时输入对话信息与应答对话信息构成一轮对话,并且,在任务导向型对话系统中,通常一轮对话并不能达到帮助用户完成实际的任务的效果,因此该对话模型可能在完成该轮对话后,接收到新的输入对话信息,此时对话模型再根据新的输入对话信息,生成新的应答对话信息并返回,此时新的输入对话信息与新的应答对话信息也构成一轮对话。
可选的,该对话模型可以用于根据多条输入对话信息生成多轮对话。该多轮对话中的时序靠前的一轮对话,可以对时序靠后的一轮对话造成影响;相应的,时序靠后的一轮对话中,对话模型接收到输入对话信息后生成的应答对话信息,可以受到时序靠前的一轮对话的影响。
步骤23,通过该对抗网络中的判别器对该目标输入对话信息、该预测应答对话信息、以及目标查询信息进行处理,获得该第k轮对话的判别结果;该目标查询信息是通过该目标输入对话信息在指定数据库中查询到的相关信息;该判别结果用于指示该预测应答对话信息是否为该对话模型的输出。
在本申请实施例中,上述对话模型可以是针对某一应用领域进行训练以及应用的模型,相应的,该指定数据库是用于存储该应用领域中的各种信息以及语料的数据库。
比如,以上述应用领域是医疗领域为例,上述输入对话信息是医疗领域的输入对话信息,上述指定数据库是医疗领域的数据库,其中可以存储医疗相关的各种信息(比如医疗相关的新闻、资料、网址等等)以及语料(比如各种医疗名词)。
再比如,以上述应用领域是金融领域为例,上述输入对话信息是金融领域的输入对话信息,上述指定数据库是金融领域的数据库,其中可以存储金融相关的各种信息(比如金融相关的新闻、资料、网址等等)以及语料(比如各种金融名词)。
其中,上述指定数据库中的数据,可以由管理人员定期添加和更新,也可以通过爬虫程序从网络中爬取。
在本申请实施例中,在每一轮对话中,判别器的输入可以包含3部分,分别为本轮对话的输入对话信息、本轮对话输出的应答对话信息、以及,通过本轮对话的输入对话信息从指定数据库中查询到的相关信息。判别器通过输入的3部分信息,输出当前一轮对话的判别结果。
步骤24,基于该第k轮对话的判别结果,通过对抗训练的方式对该对抗网络进行训练。
在本申请实施例中,上述对抗网络进行对抗训练时,计算机设备以上述对话模块作为生成器,与上述对抗网络中的判别器轮流进行训练。
比如,若当前处于对上述对话模块进行训练的阶段,则可以保持判别器的参数不变,通过第k轮对话的判别结果,对上述对话模块的参数进行更新,直至判别器无法分辨出对话模块输出的预测应答对话信息;若当前处于对上述判别器进行训练的阶段,则可以保持对话模块的参数不变,通过第k轮对话的判别结果,对上述判别器的参数进行更新,直至判别器收敛。
其中,本申请实施例涉及的方案中,训练后的该对抗网络中的该对话模型,用于基于第一输入对话信息,获得该第一输入对话信息的第一应答对话信息。
综上所述,本申请实施例所示的方案,通过对话模型对一轮对话中的目标输入对话信息进行处理,得到预测应答对话信息,然后再通过判别器,对目标输入对话信息、预测应答信息、以及通过目标输入对话信息查询到的目标查询信息进行处理得到指示预测应答对话信息是否为对话模型的输出的判别结果,最后通过判别结果执行对上述对话模型和判别器的对抗训练,从而实现了通过每一轮对话过程的预测结果,对上述对话模型进行参数更新,由于单次对话过程中的每一轮对话都会参与训练中,能够解决相关技术中的强化学习方案产生奖励值的密度较低的问题,从而提高了对话模型的训练效率和训练效果,进而提高了训练获得的对话模型的准确性。
图3是根据一示例性实施例示出的一种对话信息处理方法的流程示意图。该方法可以由计算机设备执行,比如,该计算机设备可以是服务器或者用户终端,其中,该服务器可以是上述图1所示的实施例中的服务器120,用户终端可以是图1所示的实施例中的用户终端140。如图3所示,该对话信息处理方法可以包括如下步骤:
步骤31,接收第一输入对话信息。
步骤32,通过目标对话模型对该第一输入对话信息进行处理,获得该第一输入对话信息的第一应答对话信息。
步骤33,输出该第一应答对话信息。
其中,该目标对话模型是对抗网络中的对话模型;该对抗网络时基于单次对话过程中的第k轮对话的判别结果,通过对抗训练的方式训练的网络;该第k轮对话的判别结果是该对抗网络中的判别器对目标输入对话信息、预测应答对话信息、以及目标查询信息进行处理得到的;该目标输入对话信息是该单次对话过程中的第k轮对话的输入对话信息;该预测应答对话信息是该对抗网络中的对话模型对该目标输入对话信息进行处理得到的;该目标查询信息是通过该目标输入对话信息在指定数据库中查询到的;k大于等于1,且k为整数。
综上所述,本申请实施例所示的方案,通过对话模型对一轮对话中的目标输入对话信息进行处理,得到预测应答对话信息,然后再通过判别器,对目标输入对话信息、预测应答信息、以及通过目标输入对话信息查询到的目标查询信息进行处理得到指示预测应答对话信息是否为对话模型的输出的判别结果,最后通过判别结果执行对上述对话模型和判别器的对抗训练,从而实现了通过每一轮对话过程的预测结果,对上述对话模型进行参数更新,由于单次对话过程中的每一轮对话都会参与训练中,能够解决相关技术中的强化学习方案产生奖励值的密度较低的问题,从而提高了对话模型的训练效率和训练效果,进而提高了训练获得的对话模型的准确性。
以本申请上述实施例所示的方案,应用于医疗领域的任务导向型对话系统为例,请参考图4,其是根据一示例性实施例示出的一种对话模型训练及应用框架图。如图4所示,该对话模型训练及应用过程如图4所示。
S41,服务器将每次对话中的各轮对话的输入对话信息依次输入对抗网络中的对话模型,得到对话模型依次输出的各个预测应答对话信息。
S42,服务器将输入对话信息、预测应答对话信息以及通过输入对话信息向医疗领域数据库查询得到的查询信息输入对抗网络中的判别器,得到每一轮对话对应的判别结果。
S43,服务器基于每一轮对话对应的判别结果,通过对抗学习的方式,对上述对话模型和判别器轮流进行训练。
S44,当对抗网络训练完成后,将对话模型部署到医疗领域的任务导向型对话系统中。
S45,对话系统接收到用户终端发送的输入对话时,通过对话模型对输入对话进行处理,得到应答对话。
S46,对话系统将应答对话返回给用户终端进行展示。
图5是根据一示例性实施例示出的一种对话信息处理方法的流程示意图。该方法可以由计算机设备执行,比如,该计算机设备可以是服务器,其中,该服务器可以是上述图1所示的实施例中的服务器120。如图5所示,该对话信息处理方法可以包括如下步骤:
步骤501,获取目标输入对话信息,该目标输入对话信息是单次对话过程中的第k轮对话的输入对话信息;k大于等于1,且k为整数。
在本申请实施例的一种示例性方案中,上述目标输入对话信息可以是训练人员人工即时输入的对话信息。
在本申请实施例的一种示例性方案中,上述目标输入对话信息也可以是从预先设置的样本对话信息(也可以称为专家数据集)中提取的输入对话信息。
步骤502,通过该对话模型对该目标输入对话信息、该对话模型对该单次对话过程中的第k-1轮对话输出的应答对话信息、以及目标查询信息进行处理,获得预测应答对话信息。
其中,目标查询信息是通过该目标输入对话信息在指定数据库中查询到的相关信息。
比如,以上述目标输入对话信息为“腹痛”为例,计算机设备可以通过目标输入对话信息查询医疗领域的数据库,提取出数据库中所有与“腹痛”相关的信息,作为上述目标查询信息。
其中,当上述k的数值为1时,第k-1轮对话输出的应答对话信息可以是预设的默认值。
在每一轮对话当中,各部分(包括输入对话信息、应答对话信息、查询信息等)都可以通过特征向量来表示,而这个特征向量能够概括当前的对话信息,病对当前的对话做出合理的嵌入式表达。
上述特征向量主要通过两个部分表示:第一个部分是belief states(置信状态),这个部分主要是当前系统对于各个模块的一种猜想,里面包含了各个槽值(实体的属性)对应的概率数值;第二个部分是由系统、用户行为组成的one hot encoding(独热编码、有效编码);在用户以及系统的行为当中,由于状态数目是固定的,因此可以构建出这种编码形式。
请参考图6,其示出了本申请实施例涉及的一种对话模型的结构示意图。如图6所示,该对话模型输出应答对话信息的过程可以如下:
对话模型(即生成器)根据当前的用户输入61(即目标输入对话信息),以及上一轮的系统输出62(即预测应答对话信息),结合前一轮对话后的对话状态,获得当前一轮对话后的对话状态63;其中,当前一轮对话状态中包含各个槽值对应的概率数值。
在图6中,对话模型中的长短期记忆神经网络(Long Short-Term Memory,LSTM)处理的特征是由每一轮的用户输入(user input,也称为用户动作user action)、系统输出(system outputs,也称为系统动作system action)、以及当前的state(状态)组成的。其中,生成器是一个基于神经网络的,面向任务的对话代理(agent)。该代理使用LSTM递归神经网络来模拟对话中的回合顺序,在对话的每一个回合(即每一轮),代理都会对当前对话状态进行最佳的系统动作调节。LSTM对话管理的公式可以写成:
sk=LSTMG(sk-1,[Uk,Ak-1])
sk-1为是上一时刻(上一轮对话)的状态,Uk为当前的用户输入,Ak-1是上一个时刻的系统输出,通过LSTM网络可以输出当前的状态sk。
如图6所示,对话模型根据当前系统状态63,结合查询信息64,可以获得本轮的系统输出65(即预测应答对话信息)。
如图6所示,对话模型可以通过决策网络,根据当前的状态,以及通过Uk在数据库中查询得到的查询信息Ek做出动作Ak。
在图6所示的对话模型中,可以利用LSTM的时序机制,更好的捕捉到前面各轮对话的状态,已做出当前轮次的系统动作。也就是说,上述对话模型实质上是捕捉上一个时刻的信息,然后根据上一个时刻的信息以及本轮的信息来预测动作。
其中,上述对话模型的训练可以通过奖励机制来实现。
本申请实施例所示的方案中,对话模型的模型结构也可以不限于图6所示的模型结构,其中,该对话模型也可以替换为其它可以通过强化学习方式训练的对话管理模型。
在一种可能的实现方式中,该通过对抗网络中的对话模型对该目标输入对话信息进行处理,获得该对话模型输出的预测应答对话信息之前,还包括:
基于第二样本对话过程中的各轮对话信息,通过强化学习的方式,对该对话模型进行预训练。
在本申请实施例所示的方案中,在对上述对话模型以及后续的判别器进行对抗训练之前,计算机设备可以通过对话样本对上述对话模型进行预训练,以使得对话模型达到一个可用的状态,以便后续进行对抗训练时,减少对抗训练所需的时长和迭代次数,提高训练效率,同时提高训练准确性。
其中,计算机设备可以将第二样本对话过程中的各轮对话信息中的输入对话信息,依次输入对话模型中,获得对话模型输出的各轮预测应答对话信息,然后根据各轮预测应答对话信息的对应的对话结果(即本次对话是否成功),以及对话轮数,计算出奖励数值,然后通过奖励数值,对上述对话模型进行参数更新,上述过程可以持续一定的迭代次数,或者,可以持续到对话模型趋于收敛,得到预训练的对话模型,然后,将该预训练的对话模型应用到上述步骤502中,以对目标输入对话信息进行处理。
步骤503,通过该判别器对该目标输入对话信息、该预测应答对话信息、以及目标查询信息进行处理,获得该第k轮对话的隐向量。
在本申请实施例中,对于本次对话过程中的k轮对话,判别器可以获取k轮对话分别对应的隐向量。
步骤504,基于该单次对话过程中的前k轮对话的隐向量,获取该第k轮对话的判别结果。
在本申请实施例中,在第k轮对话过程中,判别器可以通过本次对话过程中的k轮对话分别对应的隐向量,获得本轮对话(即第k轮对话)的判别结果,也就是说,当前轮次的判别结果,可以结合本次对话过程已进行的各轮对话综合得出。
在一种可能的实现方式中,该基于该单次对话过程中的前k轮对话的隐向量,获取该第k轮对话的判别结果,包括:
基于该单次对话过程中的前k轮对话的隐向量进行最大池化处理,获得最大池化结果;
基于该最大池化结果,输出该第k轮对话的判别结果。
在本申请实施例中,第k轮对话过程中,判别器除了得到本轮对话的隐向量之外,本身还有前k-1轮对话的隐向量,此时,判别器可以对前k-1轮对话的隐向量,以及当前的第k轮对话的隐向量,进行最大池化处理,得到最大池化结果,然后再对最大池化结果进一步处理,得到判别结果。
可选的,上述判别结果可以是一个概率值(取值范围可以是0~1),该概率值可以表示本次输出的预测应答对话信息是对话模型输出的对话信息,还是专家数据集中的对话信息;比如,当上述概率值趋近于0,表示判别器判断本次输出的预测应答对话信息是对话模型输出的对话信息,反之,当上述概率值趋近于1,表示判别器判断本次输出的预测应答对话信息是专家数据集中的对话信息。
在一种可能的实现方式中,该判别器为双向长短期记忆神经网络。
在本申请实施例中,判别器的模型可以是一种二分类的分类器,它的输入是多轮对话的信息,它的输出是一个分数值,这个分数值表示当前对话真假(对话为真,表示输入的应答信息不是由对话模型输出,或者说,判别器的输入信息来源于专家数据集;如果对话为假,表示输入的应答信息由对话模型输出,或者说,判别器的输入信息来源于对话模型)的概率是多少。
请参考图7,其示出了本申请实施例涉及的判别器的模型结构图。如图7所示,本申请实施例所示的方案,使用了一种双向的LSTM(Bi-LSTM,即图7中的71部分)去编码轮数的序列。对于每一轮对话信息,输入72由以下几个部分组成:Uk(User input),Ek(查询的编码),Ak(对话模型输出的动作)。由于使用了双向的LSTM结构,所以在经过LSTM编码之后会生成隐向量:
其中,上标的箭头代表了方向的信息,一种是时序的顺序产生的隐向量,一种是逆时序而产生的隐向量。当获得到LSTM的输出之后,也即{h1,h2,h3...hk},即图7中的73部分,判别器将会使用最大池化(max pooling)的方式来获得最终的表达,也就是直接选定维度中最大的数值来形成最终的表达形式,在使用MLP线性网络来降维输出最终的预测数值D(d)。
其中,上述图7所示模型结构中的输出层可以为sigmoid函数,Sigmoid函数的公式如下所示,S(x)为sigmoid函数的输出结果,x为输入的数值。通过这种方式能够保证输出的值在0-1之间。
步骤505,基于该第k轮对话的判别结果,通过对抗训练的方式对该对抗网络进行训练。
其中,训练后的该对抗网络中的该对话模型,用于基于第一输入对话信息,获得该第一输入对话信息的第一应答对话信息。
在本申请实施例中,通过每一轮对话的判别结果,计算机设备都可以对上述对抗网络进行参数更新,以提高模型训练效果。
在一种可能的实现方式中,该基于该第k轮对话的判别结果,通过对抗训练的方式对该对抗网络进行训练,包括:
响应于对该对话模型进行训练,基于该第k轮对话的判别结果,获取该第k轮对话的奖励数值;
基于该第k轮对话的奖励数值,对该对话模型进行参数更新。
其中,当上述步骤505的训练过程处于对上述对话模型进行训练的阶段时,计算机设备可以基于该第k轮对话的判别结果(即预测应答对话信息是对话模型的输出信息的概率),计算出奖励数值。在一种可能的实现方式中,判别器输出的概率值越大,表示预测应答对话信息是对话模型的输出信息的概率越小,相应的奖励数值也越大;反之,判别器输出的概率值越小,表示预测应答对话信息是对话模型的输出信息的概率越大,相应的奖励数值越小;计算机设备保持判别器的参数不变,通过奖励数值更新对话模型的参数。
在一种可能的实现方式中,该基于该第k轮对话的判别结果,通过对抗训练的方式对该对抗网络进行训练,包括:
响应于对该判别器进行训练,基于该第k轮对话的判别结果,获取该第k轮对话的损失函数值;
基于该第k轮对话的损失函数值,对该判别器进行参数更新。
其中,当上述步骤505的训练过程处于对上述判别器进行训练的阶段时,计算机设备可以基于该第k轮对话的判别结果(即预测应答对话信息是对话模型的输出信息的概率),计算出一个损失函数值。在一种可能的实现方式中,判别器输出的概率值越大,表示预测应答对话信息是对话模型的输出信息的概率越小,判断结果越趋近于错误,相应的损失函数值越大;反之,判别器输出的概率值越小,表示预测应答对话信息是对话模型的输出信息的概率越大,判断结果越趋近于正确,相应的损失函数值越小;计算机设备保持对话模型的参数不变,通过损失函数值更新判别器的参数。
在一种可能的实现方式中,响应于对该判别器进行训练,获取样本对话信息,该样本对话信息包含样本输入对话信息以及样本应答对话信息;该样本对话信息是第一样本对话过程中的一轮对话信息;
基于该样本输入对话信息,从该指定数据库中查询获得样本查询信息;
通过该对抗网络中的判别器对该样本输入对话信息、该样本应答对话信息、以及该样本查询信息进行处理,获得样本判别结果;
基于该样本判别结果,获取样本损失函数值;
基于该样本损失函数值,对该判别器进行参数更新。
在本申请实施例中,上述判别器可以通过正样本和负样本进行训练,其中,正样本来自于对话系统的数据集(即上述样本对话信息,也称为专家数据集),负样本来自于对话系统产生的数据(即上述对话模型的输入和输出)。
在本申请实施例中,在设计好对话模型以及判别器(也可以称为奖励模型)之后,即可以根据对抗学习的思路,优化对话模型,本质上来说,对话模型可以看成是对抗学习中的生成器。
在一种可能的实现方式中,在每一轮对话中,对应用户输入都会产生一个奖励数值。在计算出这种奖励函数之后,计算机设备即可以通过这个奖励函数来更新对话模型。如此一来,当生成器以及判别器经过一轮对话处理完毕之后,判别器以及生成器会根据当前的状态输出一个概率值。判别器输出的是每一轮应答对话为真的概率,专家动作和当前动作越接近,这个奖励值会越大。更新的梯度公式如下所示,其中,D是奖励模型(即判别器),而d是对话(dialog)的代表,d有两个来源,第一种是来自于专家数据集(demo),第二种是来自于生成器(对话模型)。持续更新G,D的网络直到两个网络全部收敛。
传统方案和本申请提出的方案进行对比,使以下表1所示的两个指标来衡量模型的成熟度。第一个指标是最终的成功率,第二个指标是模型收敛所需要的数据数目。
表1
算法 | 成功率 | 对话数目 |
传统奖励 | 0.63 | 1200 |
奖励函数 | 0.88 | 612 |
从表1所示的实验结果来看,本申请实施例提出的方法能够使得模型收敛的更快,也能够使得模型最终的效果变好,这在实际运用的过程当中是很有意义的事情。其中,成功率的测试是基于Simulated User(模仿用户)的形式来测试的,用这种方法来测试,既能够省时间,也能够省资源。
在另一种可能的实现方式中,计算机设备也可以在一次对话过程中,通过单个奖励数值进行参数更新。比如,在单次对话过程中的多轮(假设为n轮)对话结束之后,判别器(即上述奖励函数)可以基于n轮对话分别对应的隐向量,通过最大池化处理,得到本次对话过程对应的最终概率值,然后通过该最终概率值,对上述对话模型或者判别器进行参数更新。
综上所述,本申请实施例所示的方案,通过对话模型对一轮对话中的目标输入对话信息进行处理,得到预测应答对话信息,然后再通过判别器,对目标输入对话信息、预测应答信息、以及通过目标输入对话信息查询到的目标查询信息进行处理得到指示预测应答对话信息是否为对话模型的输出的判别结果,最后通过判别结果执行对上述对话模型和判别器的对抗训练,从而实现了通过每一轮对话过程的预测结果,对上述对话模型进行参数更新,由于单次对话过程中的每一轮对话都会参与训练中,能够解决相关技术中的强化学习方案产生奖励值的密度较低的问题,从而提高了对话模型的训练效率和训练效果,进而提高了训练获得的对话模型的准确性。
通常情况下,对话系统主要分成四个部分,第一个部分是自然语言理解部分,第二个部分是对话状态追踪,第三个部分是对话管理,第四个部分是系统输出。而在其中,对话管理起到了核心的作用,因为它能够根据当前的状态去做出相应的动作。本申请上述实施例引用对抗学习的机制,将原有的对话管理部分(即对话模型)当做生成器,然后用判别器对上述对话管理的模块进行判别以及区分,从而外加了一种奖励函数机制,来使得对话管理训练效果更好。
在医疗对话系统领域,智能对话机器人来回答人们所提问的基本医疗问题成了一种减轻医生负担的方式。目前看来,医疗对话系统能够辅助医生的诊断,也能在一定程度上缓解医院的病人过多而带来的压力,因此需求量很大。基于本申请上述实施例所示的方案,能够高效且准确的训练出医疗领域的对话系统。
此外,本申请上述实施例所示的方案,也可以应用于训练其它领域(比如金融领域等)的对话系统。
以本申请上述实施例所示的方案,应用于医疗领域的任务导向型对话系统为例,请参考图8,其是根据一示例性实施例示出的一种对话模型训练及应用框架图。如图8所示,该对话模型训练及应用过程如图8所示。
S81,服务器将每次对话中的各轮对话的输入对话信息、以及输入对话信息向医疗领域数据库查询得到的查询信息依次输入对抗网络中的对话模型,得到对话模型依次输出的各个预测应答对话信息。
S82,服务器将输入对话信息、预测应答对话信息以及查询信息输入对抗网络中的判别器,得到每一轮对话对应的隐向量。
S83,服务器通过每一轮对话对应的隐向量,经过最大池化处理,得到每一轮对话的判别结果。
S84,服务器基于每一轮对话对应的判别结果,通过对抗学习的方式,对上述对话模型和判别器轮流进行训练。
S85,当对抗网络训练完成后,将对话模型部署到医疗领域的任务导向型对话系统中。
S86,对话系统接收到用户终端发送的输入对话时,通过对话模型对输入对话进行处理,得到应答对话。
S87,对话系统将应答对话返回给用户终端进行展示。
图9是根据一示例性实施例示出的一种对话信息处理装置的结构方框图。该对话信息处理装置可以实现图2或图5所示实施例提供的方法中的全部或部分步骤,该对话信息处理装置包括:
输入对话获取模块901,用于获取目标输入对话信息,所述目标输入对话信息是单次对话过程中的第k轮对话的输入对话信息;k大于等于1,且k为整数;
应答预测模块902,用于通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息;
判别预测模块903,用于通过所述对抗网络中的判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的判别结果;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的相关信息;所述判别结果用于指示所述预测应答对话信息是否为所述对话模型的输出;
对抗训练模块904,用于基于所述第k轮对话的判别结果,通过对抗训练的方式对所述对抗网络进行训练;
其中,训练后的所述对抗网络中的所述对话模型,用于基于第一输入对话信息,获得所述第一输入对话信息的第一应答对话信息。
在一种可能的实现方式中,所述判别预测模块903,包括:
隐向量获取子模块,用于通过所述判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的隐向量;
判别结果获取子模块,用于基于所述单次对话过程中的前k轮对话的隐向量,获取所述第k轮对话的判别结果。
在一种可能的实现方式中,所述判别结果获取子模块,用于,
基于所述单次对话过程中的前k轮对话的隐向量进行最大池化处理,获得最大池化结果;
基于所述最大池化结果,输出所述第k轮对话的判别结果。
在一种可能的实现方式中,所述判别器为双向长短期记忆神经网络。
在一种可能的实现方式中,所述对抗训练模块904,用于,
响应于对所述对话模型进行训练,基于所述第k轮对话的判别结果,获取所述第k轮对话的奖励数值;
基于所述第k轮对话的奖励数值,对所述对话模型进行参数更新。
在一种可能的实现方式中,所述对抗训练模块904,用于,
响应于对所述判别器进行训练,基于所述第k轮对话的判别结果,获取所述第k轮对话的损失函数值;
基于所述第k轮对话的损失函数值,对所述判别器进行参数更新。
在一种可能的实现方式中,所述对抗训练模块904,还用于,
响应于对所述判别器进行训练,获取样本对话信息,所述样本对话信息包含样本输入对话信息以及样本应答对话信息;所述样本对话信息是第一样本对话过程中的一轮对话信息;
基于所述样本输入对话信息,从所述指定数据库中查询获得样本查询信息;
通过所述对抗网络中的判别器对所述样本输入对话信息、所述样本应答对话信息、以及所述样本查询信息进行处理,获得样本判别结果;
基于所述样本判别结果,获取样本损失函数值;
基于所述样本损失函数值,对所述判别器进行参数更新。
在一种可能的实现方式中,所述应答预测模块902,用于通过所述对话模型对所述目标输入对话信息、所述对话模型对所述单次对话过程中的第k-1轮对话输出的应答对话信息、以及所述目标查询信息进行处理,获得所述预测应答对话信息。
在一种可能的实现方式中,所述装置还包括:
预训练模块,用于在应答预测模块902通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息之前,基于第二样本对话过程中的各轮对话信息,通过强化学习的方式,对所述对话模型进行预训练。
在一种可能的实现方式中,所述输入对话信息是医疗领域的输入对话,所述指定数据库是医疗领域的数据库。
综上所述,本申请实施例所示的方案,通过对话模型对一轮对话中的目标输入对话信息进行处理,得到预测应答对话信息,然后再通过判别器,对目标输入对话信息、预测应答信息、以及通过目标输入对话信息查询到的目标查询信息进行处理得到指示预测应答对话信息是否为对话模型的输出的判别结果,最后通过判别结果执行对上述对话模型和判别器的对抗训练,从而实现了通过每一轮对话过程的预测结果,对上述对话模型进行参数更新,由于单次对话过程中的每一轮对话都会参与训练中,能够解决相关技术中的强化学习方案产生奖励值的密度较低的问题,从而提高了对话模型的训练效率和训练效果,进而提高了训练获得的对话模型的准确性。
图10是根据一示例性实施例示出的一种对话信息处理装置的结构方框图。该对话信息处理装置可以实现图3所示实施例提供的方法中的全部或部分步骤,该对话信息处理装置包括:
输入对话获取模块1001,用于接收第一输入对话信息;
应答对话获取模块1002,用于通过目标对话模型对所述第一输入对话信息进行处理,获得所述第一输入对话信息的第一应答对话信息;
应答对话输出模块1003,用于输出所述第一应答对话信息;
其中,所述目标对话模型是对抗网络中的对话模型;所述对抗网络时基于单次对话过程中的第k轮对话的判别结果,通过对抗训练的方式训练的网络;所述第k轮对话的判别结果是所述对抗网络中的判别器对目标输入对话信息、预测应答对话信息、以及目标查询信息进行处理得到的;所述目标输入对话信息是所述单次对话过程中的第k轮对话的输入对话信息;所述预测应答对话信息是所述对抗网络中的对话模型对所述目标输入对话信息进行处理得到的;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的。
综上所述,本申请实施例所示的方案,通过对话模型对一轮对话中的目标输入对话信息进行处理,得到预测应答对话信息,然后再通过判别器,对目标输入对话信息、预测应答信息、以及通过目标输入对话信息查询到的目标查询信息进行处理得到指示预测应答对话信息是否为对话模型的输出的判别结果,最后通过判别结果执行对上述对话模型和判别器的对抗训练,从而实现了通过每一轮对话过程的预测结果,对上述对话模型进行参数更新,由于单次对话过程中的每一轮对话都会参与训练中,能够解决相关技术中的强化学习方案产生奖励值的密度较低的问题,从而提高了对话模型的训练效率和训练效果,进而提高了训练获得的对话模型的准确性。
图11是根据一示例性实施例示出的一种计算机设备的结构示意图。该计算机设备可以实现为上述各个方法实施例中的模型训练设备和/或信号处理设备。所述计算机设备1100包括中央处理单元(CPU,Central Processing Unit)1101、包括随机存取存储器(Random Access Memory,RAM)1102和只读存储器(Read-Only Memory,ROM)1103的系统存储器1104,以及连接系统存储器1104和中央处理单元1101的系统总线1105。所述计算机设备1100还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统1106,和用于存储操作系统1113、应用程序1114和其他程序模块1115的大容量存储设备1107。
所述大容量存储设备1107通过连接到系统总线1105的大容量存储控制器(未示出)连接到中央处理单元1101。所述大容量存储设备1107及其相关联的计算机可读介质为计算机设备1100提供非易失性存储。也就是说,所述大容量存储设备1107可以包括诸如硬盘或者光盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、闪存或其他固态存储其技术,CD-ROM、或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1104和大容量存储设备1107可以统称为存储器。
计算机设备1100可以通过连接在所述系统总线1105上的网络接口单元1111连接到互联网或者其它网络设备。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,中央处理器1101通过执行该一个或一个以上程序来实现图2、图2、图3或图5任一所示的方法的全部或者部分步骤。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括计算机程序(指令)的存储器,上述程序(指令)可由计算机设备的处理器执行以完成本申请各个实施例所示的方法。例如,所述非临时性计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例所示的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (15)
1.一种对话信息处理方法,其特征在于,所述方法包括:
获取目标输入对话信息,所述目标输入对话信息是单次对话过程中的第k轮对话的输入对话信息;k大于等于1,且k为整数;
通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息;
通过所述对抗网络中的判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的判别结果;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的相关信息;所述判别结果用于指示所述预测应答对话信息是否为所述对话模型的输出;
基于所述第k轮对话的判别结果,通过对抗训练的方式对所述对抗网络进行训练;
其中,训练后的所述对抗网络中的所述对话模型,用于基于第一输入对话信息,获得所述第一输入对话信息的第一应答对话信息。
2.根据权利要求1所述的方法,其特征在于,所述通过所述对抗网络中的判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的判别结果,包括:
通过所述判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的隐向量;
基于所述单次对话过程中的前k轮对话的隐向量,获取所述第k轮对话的判别结果。
3.根据权利要求2所述的方法,其特征在于,所述基于所述单次对话过程中的前k轮对话的隐向量,获取所述第k轮对话的判别结果,包括:
基于所述单次对话过程中的前k轮对话的隐向量进行最大池化处理,获得最大池化结果;
基于所述最大池化结果,输出所述第k轮对话的判别结果。
4.根据权利要求2所述的方法,其特征在于,所述判别器为双向长短期记忆神经网络。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第k轮对话的判别结果,通过对抗训练的方式对所述对抗网络进行训练,包括:
响应于对所述对话模型进行训练,基于所述第k轮对话的判别结果,获取所述第k轮对话的奖励数值;
基于所述第k轮对话的奖励数值,对所述对话模型进行参数更新。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第k轮对话的判别结果,通过对抗训练的方式对所述对抗网络进行训练,包括:
响应于对所述判别器进行训练,基于所述第k轮对话的判别结果,获取所述第k轮对话的损失函数值;
基于所述第k轮对话的损失函数值,对所述判别器进行参数更新。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
响应于对所述判别器进行训练,获取样本对话信息,所述样本对话信息包含样本输入对话信息以及样本应答对话信息;所述样本对话信息是第一样本对话过程中的一轮对话信息;
基于所述样本输入对话信息,从所述指定数据库中查询获得样本查询信息;
通过所述对抗网络中的判别器对所述样本输入对话信息、所述样本应答对话信息、以及所述样本查询信息进行处理,获得样本判别结果;
基于所述样本判别结果,获取样本损失函数值;
基于所述样本损失函数值,对所述判别器进行参数更新。
8.根据权利要求1所述的方法,其特征在于,所述通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息,包括:
通过所述对话模型对所述目标输入对话信息、所述对话模型对所述单次对话过程中的第k-1轮对话输出的应答对话信息、以及所述目标查询信息进行处理,获得所述预测应答对话信息。
9.根据权利要求1所述的方法,其特征在于,所述通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息之前,还包括:
基于第二样本对话过程中的各轮对话信息,通过强化学习的方式,对所述对话模型进行预训练。
10.根据权利要求1所述的方法,其特征在于,所述输入对话信息是医疗领域的输入对话,所述指定数据库是医疗领域的数据库。
11.一种对话信息处理方法,其特征在于,所述方法包括:
接收第一输入对话信息;
通过目标对话模型对所述第一输入对话信息进行处理,获得所述第一输入对话信息的第一应答对话信息;
输出所述第一应答对话信息;
其中,所述目标对话模型是对抗网络中的对话模型;所述对抗网络时基于单次对话过程中的第k轮对话的判别结果,通过对抗训练的方式训练的网络;所述第k轮对话的判别结果是所述对抗网络中的判别器对目标输入对话信息、预测应答对话信息、以及目标查询信息进行处理得到的;所述目标输入对话信息是所述单次对话过程中的第k轮对话的输入对话信息;所述预测应答对话信息是所述对抗网络中的对话模型对所述目标输入对话信息进行处理得到的;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的;k大于等于1,且k为整数。
12.一种对话信息处理装置,其特征在于,所述装置包括:
输入对话获取模块,用于获取目标输入对话信息,所述目标输入对话信息是单次对话过程中的第k轮对话的输入对话信息;k大于等于1,且k为整数;
应答预测模块,用于通过对抗网络中的对话模型对所述目标输入对话信息进行处理,获得所述对话模型输出的预测应答对话信息;
判别预测模块,用于通过所述对抗网络中的判别器对所述目标输入对话信息、所述预测应答对话信息、以及目标查询信息进行处理,获得所述第k轮对话的判别结果;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的相关信息;所述判别结果用于指示所述预测应答对话信息是否为所述对话模型的输出;
对抗训练模块,用于基于所述第k轮对话的判别结果,通过对抗训练的方式对所述对抗网络进行训练;
其中,训练后的所述对抗网络中的所述对话模型,用于基于第一输入对话信息,获得所述第一输入对话信息的第一应答对话信息。
13.一种对话信息处理装置,其特征在于,所述装置包括:
输入对话获取模块,用于接收第一输入对话信息;
应答对话获取模块,用于通过目标对话模型对所述第一输入对话信息进行处理,获得所述第一输入对话信息的第一应答对话信息;
应答对话输出模块,用于输出所述第一应答对话信息;
其中,所述目标对话模型是对抗网络中的对话模型;所述对抗网络时基于单次对话过程中的第k轮对话的判别结果,通过对抗训练的方式训练的网络;所述第k轮对话的判别结果是所述对抗网络中的判别器对目标输入对话信息、预测应答对话信息、以及目标查询信息进行处理得到的;所述目标输入对话信息是所述单次对话过程中的第k轮对话的输入对话信息;所述预测应答对话信息是所述对抗网络中的对话模型对所述目标输入对话信息进行处理得到的;所述目标查询信息是通过所述目标输入对话信息在指定数据库中查询到的;k大于等于1,且k为整数。
14.一种计算机设备,其特征在于,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条计算机指令,所述至少一条计算机指令由所述处理器加载并执行以实现如权利要求1至11任一所述的对话信息处理方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条计算机指令,所述至少一条计算机指令由处理器加载并执行以实现如权利要求1至11任一所述的对话信息处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110425179.5A CN113761149A (zh) | 2021-04-20 | 2021-04-20 | 对话信息处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110425179.5A CN113761149A (zh) | 2021-04-20 | 2021-04-20 | 对话信息处理方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113761149A true CN113761149A (zh) | 2021-12-07 |
Family
ID=78787037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110425179.5A Pending CN113761149A (zh) | 2021-04-20 | 2021-04-20 | 对话信息处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113761149A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786416A (zh) * | 2024-02-28 | 2024-03-29 | 腾讯科技(深圳)有限公司 | 一种模型训练方法、装置、设备、存储介质及产品 |
-
2021
- 2021-04-20 CN CN202110425179.5A patent/CN113761149A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786416A (zh) * | 2024-02-28 | 2024-03-29 | 腾讯科技(深圳)有限公司 | 一种模型训练方法、装置、设备、存储介质及产品 |
CN117786416B (zh) * | 2024-02-28 | 2024-05-28 | 腾讯科技(深圳)有限公司 | 一种模型训练方法、装置、设备、存储介质及产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110597991B (zh) | 文本分类方法、装置、计算机设备及存储介质 | |
CN111897941B (zh) | 对话生成方法、网络训练方法、装置、存储介质及设备 | |
CN111581361B (zh) | 一种意图识别方法及装置 | |
Khajah et al. | How deep is knowledge tracing? | |
CN106875940B (zh) | 一种基于神经网络的机器自学习构建知识图谱训练方法 | |
CN110659723B (zh) | 基于人工智能的数据处理方法、装置、介质及电子设备 | |
US20220092441A1 (en) | Training method and apparatus, dialogue processing method and system, and medium | |
CN111753076B (zh) | 对话方法、装置、电子设备及可读存储介质 | |
CN114398961A (zh) | 一种基于多模态深度特征融合的视觉问答方法及其模型 | |
CN107451230A (zh) | 一种问答方法以及问答系统 | |
US20210406687A1 (en) | Method for predicting attribute of target object based on machine learning and related device | |
US20240046127A1 (en) | Dynamic causal discovery in imitation learning | |
CN112000788A (zh) | 一种数据处理方法、装置以及计算机可读存储介质 | |
CN113761148A (zh) | 对话信息获取方法、装置、设备及存储介质 | |
CN113761149A (zh) | 对话信息处理方法、装置、计算机设备及存储介质 | |
KR102582744B1 (ko) | Qa 모델을 이용하여 지식 그래프를 구축하는 방법, 장치 및 컴퓨터 프로그램 | |
CN111783473B (zh) | 医疗问答中最佳答案的识别方法、装置和计算机设备 | |
CN116541507A (zh) | 一种基于动态语义图神经网络的视觉问答方法及系统 | |
Akula | Gaining Justified Human Trust by Improving Explainability in Vision and Language Reasoning Models | |
CN113535911B (zh) | 奖励模型处理方法、电子设备、介质和计算机程序产品 | |
Memon et al. | Framework for Educational Domain‐Based Multichatbot Communication System | |
CN113539520A (zh) | 实现问诊会话的方法、装置、计算机设备及存储介质 | |
CN113761837B (zh) | 实体关系类型确定方法、装置和设备及存储介质 | |
CN117556150B (zh) | 多目标预测方法、装置、设备及存储介质 | |
CN112131362B (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 |