CN111475616B - 基于对话状态预测的多轮对话方法、装置和计算机设备 - Google Patents
基于对话状态预测的多轮对话方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN111475616B CN111475616B CN202010177686.7A CN202010177686A CN111475616B CN 111475616 B CN111475616 B CN 111475616B CN 202010177686 A CN202010177686 A CN 202010177686A CN 111475616 B CN111475616 B CN 111475616B
- Authority
- CN
- China
- Prior art keywords
- round
- state
- dialogue
- dialog
- text
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000012545 processing Methods 0.000 claims abstract description 15
- 239000013598 vector Substances 0.000 claims description 84
- 238000004364 calculation method Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 13
- 230000011218 segmentation Effects 0.000 claims description 7
- 230000001960 triggered effect Effects 0.000 abstract description 2
- 108010001267 Protein Subunits Proteins 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本申请揭示了一种基于对话状态预测的多轮对话方法、装置、计算机设备和存储介质,所述方法包括:在与用户进行i轮对话之后,获取用户输入的第i+1轮语音;对所述第i+1轮语音进行语音识别处理,得到第i+1轮文字文本;判断所述第i+1轮文字文本是否触发对话状态生成条件;若未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具进行对话状态预测,得到p个预测对话状态;若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;采用预设的语音输出装置,输出所述第i+1轮回复语音。从而提高了多轮对话方案的泛化能力,保证了流畅性。
Description
技术领域
本申请涉及到计算机领域,特别是涉及到一种基于对话状态预测的多轮对话方法、装置、计算机设备和存储介质。
背景技术
多轮对话技术用以实现人与计算机之类的快速信息交互,其中多轮对话系统包括语音识别、语言理解、对话状态维护、动作候选排序、语言生成、语音合成等模块,其中回答逻辑主要体现在对话状态维护模块中,也即,当接收到语言理解模块的输出之后,判断系统应该跳转到什么状态。对话状态维护模块一般可采用人工规则来设置,但是基于人工规则的对话状态维护模块不具有泛化能力,即当用户输入特别信息后,人工规则未针对该特别信息进行设置,则会造成整个多轮对话的中断。因此,传统的多轮对话方案的泛化能力差,运行流畅性得不到保证。
发明内容
本申请的主要目的为提供一种基于对话状态预测的多轮对话方法、装置、计算机设备和存储介质,旨在提高多轮对话方案的泛化能力,保证流畅性。
为了实现上述发明目的,本申请提出一种基于对话状态预测的多轮对话方法,包括以下步骤:
在与用户进行i轮对话之后,获取用户输入的第i+1轮语音,其中i为大于1的整数;
根据预设的语音识别方法,对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;
判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;
若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测,从而得到与所述p个对话状态预测工具分别对应的p个预测对话状态;其中,p为大于1的整数,所述前文信息至少包括第一轮文字文本、...、第i轮文字文本;
判断所述p个预测对话状态是否相同;
若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;
采用预设的语音输出装置,输出所述第i+1轮回复语音。
进一步地,所述判断所述第i+1轮文字文本是否触发预设的对话状态生成条件的步骤,包括:
将所述第i+1轮文字文本进行分词处理,从而得到多个关键词;
判断所述关键词或者所述关键词之间的组合是否记载在预设的配置文件中,其中所述配置文件记载有触发条件、回复语音和跳转状态;
若所述关键词或者所述关键词之间的组合记载在所述触发条件部分,则判定所述第i+1轮文字文本触发预设的对话状态生成条件;
所述判断所述第i+1轮文字文本是否触发预设的对话状态生成条件的步骤之后,包括:
若所述第i+1轮文字文本触发预设的对话状态生成条件,则将多轮对话的当前状态更新为所述跳转状态,并采用预设的语音输出装置输出所述回复语音。
进一步地,所述p个对话状态预测工具包括指定对话状态预测工具,所述指定对话状态预测工具预先连接至预设的外部知识库,所述外部知识库存储有历史多轮对话,所述依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测的步骤,包括:
采用所述指定对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,生成当前的多轮对话的第一状态链;
从所述外部知识库中获取指定历史多轮对话,其中所述指定历史多轮对话的第二状态链包含所述第一状态链;其中,所述第二状态链包含所述第一状态链指,所述第一状态链中的所有状态节点均是所述第二状态链的状态节点,并且所述第一状态链中的所有状态节点之间的节点关系也与所述第二状态链中对应的状态节点的节点关系相同;
判断所述指定历史多轮对话的数量是否等于1;
若所述指定历史多轮对话的数量等于1,则获取所述第二状态链中的指定状态节点,并将所述指定状态节点记为所述指定对话状态预测工具对应的预测对话状态,其中所述指定状态节点与所述第一状态链直接连接。
进一步地,所述判断所述指定历史多轮对话的数量是否等于1的步骤之后,包括:
若所述指定历史多轮对话的数量不等于1,则根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度,从而得到与所有的指定历史多轮对话分别对应的多个相似度值;
获取数值最大的相似度值对应的指定历史多轮对话的指定状态节点,并记为所述指定对话状态预测工具对应的预测对话状态,其中指定状态节点与所述第一状态链直接连接。
进一步地,所述根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度的步骤,包括:
通过查询通设的词向量库,获取与用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第一词向量序列,并将所述i+1个第一词向量序列顺序连接,从而得到第一综合向量X;
通过查询通设的词向量库,获取指定历史多轮对话中的用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第二词向量序列,并将所述i+1个第二词向量序列顺序连接,从而得到第二综合向量Y;
根据公式:
计算出指定历史多轮对话与当前多轮对话的相似度M,其中X为所述第一综合向量,Y为所述第二综合向量,Xj为所述第一综合向量的第j个分向量,Yj为所述第二综合向量的第j个分向量,所述第一综合向量和所述第二综合向量均具有m个分向量。
进一步地,所述判断所述p个预测对话状态是否相同的步骤之后,包括:
若所述p个预测对话状态不完全相同,则将所述p个预测对话状态划分为多个分组,其中每个分组仅包括一种预测对话状态;
从所述多个分组中获取组内成员最多的第一分组,并将多轮对话的当前状态更新为所述第一分组对应的预测对话状态;
从所述多个分组中获取组内成员最少的第二分组,并将所述第二分组对应的对话状态预测工具从所述p个对话状态预测工具中删除。
本申请提供一种基于对话状态预测的多轮对话装置,包括:
第i+1轮语音获取单元,用于在与用户进行i轮对话之后,获取用户输入的第i+1轮语音,其中i为大于1的整数;
第i+1轮文字文本获取单元,用于根据预设的语音识别方法,对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;
对话状态生成条件判断单元,用于判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;
预测对话状态获取单元,用于若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测,从而得到与所述p个对话状态预测工具分别对应的p个预测对话状态;其中,p为大于1的整数,所述前文信息至少包括第一轮文字文本、...、第i轮文字文本;
预测对话状态判断单元,用于判断所述p个预测对话状态是否相同;
第i+1轮回复语音获取单元,用于若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;
第i+1轮回复语音输出单元,用于采用预设的语音输出装置,输出所述第i+1轮回复语音。
本申请提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
本申请的基于对话状态预测的多轮对话方法、装置、计算机设备和存储介质,在与用户进行i轮对话之后,获取用户输入的第i+1轮语音;对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具进行对话状态预测,从而得到p个预测对话状态;判断所述p个预测对话状态是否相同;若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;采用预设的语音输出装置,输出所述第i+1轮回复语音。从而提高了多轮对话方案的泛化能力,保证了流畅性。从而利用综合p个对话状态预测工具的方式(使预测准确性得到提高),以及利用前文信息进行对话状态预测的方式(使得多轮对话的分析是基于整体而进行的,数据更加充分,使分析结果更准确),使得数据分析更加充分,适应性更强(即泛化能力得到提高),使对话流畅性更高。
附图说明
图1为本申请一实施例的基于对话状态预测的多轮对话方法的流程示意图;
图2为本申请一实施例的基于对话状态预测的多轮对话装置的结构示意框图;
图3为本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请实施例提供一种基于对话状态预测的多轮对话方法,包括以下步骤:
S1、在与用户进行i轮对话之后,获取用户输入的第i+1轮语音,其中i为大于1的整数;
S2、根据预设的语音识别方法,对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;
S3、判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;
S4、若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测,从而得到与所述p个对话状态预测工具分别对应的p个预测对话状态;其中,p为大于1的整数,所述前文信息至少包括第一轮文字文本、...、第i轮文字文本;
S5、判断所述p个预测对话状态是否相同;
S6、若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;
S7、采用预设的语音输出装置,输出所述第i+1轮回复语音。
本申请在多轮对话发生卡壳时(即所述第i+1轮文字文本未触发预设的对话状态生成条件),采用特殊的设置以保证多轮对话的持续进行,即采用预设的p个对话状态预测工具预测对话状态。从而提高了多轮对话方案的泛化能力,保证了运行流畅性。
如上述步骤S1所述,在与用户进行i轮对话之后,获取用户输入的第i+1轮语音,其中i为大于1的整数。本申请是应用在多轮对话的过程中,因此是在第一轮对话之后才实施,即获取用户输入的第i+1轮语音,其中i为大于1的整数。
如上述步骤S2所述,根据预设的语音识别方法,对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本。其中,所述语音识别方法可采用任意可行的方法,例如采用开源的语音识别工具,以将语音处理为文字文本。所述开源的语音识别工具例如为谷歌开源Live Transcribe语音识别转文字工具等。
如上述步骤S3所述,判断所述第i+1轮文字文本是否触发预设的对话状态生成条件。对话状态生成条件可预先记载在预设的配置文件中,例如为一个json配置文件,其中触发条件对应json中的"trigger"部分。当第i+1轮文字文本表述的意图(例如体现为关键词或关键词组合)记载于trigger部分中,则判定所述第i+1轮文字文本触发预设的对话状态生成条件。
如上述步骤S4所述,若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测,从而得到与所述p个对话状态预测工具分别对应的p个预测对话状态;其中,p为大于1的整数,所述前文信息至少包括第一轮文字文本、...、第i轮文字文本。其中所述对话状态预测工具可以为任意可行的工具,例如为基于神经网络模型训练而成的对话状态预测工具,或者为基于外部知识库的对话状态预测工具。由于所述第i+1轮文字文本未触发预设的对话状态生成条件,因此按原先的规则是无法维持多轮对话的,因此采用所述p个对话状态预测工具接续上断点,即预测出对话状态,以维持多轮对话。传统方案在第i+1轮文字文本未触发预设的对话状态生成条件之时,或者强硬结束所述多轮对话,或者强行将多轮对话重启,而不利于多轮对话状态的顺畅运行。其中,所谓对话状态,是一种包含0时刻到t时刻(例如为当前时刻)的对话历史的数据结构。预测出的对话状态例如为M1-M2-M3,其中M1-M2是对话历史(即已发生了两轮对话,其中包括用户的输入与用户得到的回复等数据),M3是新预测出的对话状态的新的组成部分。进一步地,对话状态还可以附带有流畅性与质量的标注,例如顺畅、不顺畅还是对话质量良好、优秀、差等标注,从而使数据更加精确,更利于实现精准的对话状态预测。
如上述步骤S5所述,判断所述p个预测对话状态是否相同。若所述p个预测对话状态相同,表明所有的对话状态预测工具均预测相同的对话状态,该预测对话状态就是最终的对话状态,即多轮对话的当前状态应当更新为该预测对话状态。
如上述步骤S6所述,若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音。对轮对话的当前状态更新为所述预测对话状态后,表明计算机已经理解用户输入的第i+1轮语音,因此应该输出对应的回复语音。本申请预先设置有对话状态与回复语音的对应关系,因此能够准确获得第i+1轮回复语音。
如上述步骤S7所述,采用预设的语音输出装置,输出所述第i+1轮回复语音。其中所述语音输出装置例如为喇叭或音箱等。输出的第i+1轮回复语音用以维持多轮对话,并给予用户进行第i+2轮对话的时机。
在一个实施方式中,所述判断所述第i+1轮文字文本是否触发预设的对话状态生成条件的步骤S3,包括:
S301、将所述第i+1轮文字文本进行分词处理,从而得到多个关键词;
S302、判断所述关键词或者所述关键词之间的组合是否记载在预设的配置文件中,其中所述配置文件记载有触发条件、回复语音和跳转状态;
S303、若所述关键词或者所述关键词之间的组合记载在所述触发条件部分,则判定所述第i+1轮文字文本触发预设的对话状态生成条件;
所述判断所述第i+1轮文字文本是否触发预设的对话状态生成条件的步骤S3之后,包括:
S31、若所述第i+1轮文字文本触发预设的对话状态生成条件,则将多轮对话的当前状态更新为所述跳转状态,并采用预设的语音输出装置输出所述回复语音。
如上所述,实现了判断所述第i+1轮文字文本是否触发预设的对话状态生成条件。本申请采用配置文件的方式来判断是否触发预设的对话状态生成条件。其中,所述配置文件例如为json配置文件,其中触发条件、答复内容、跳转状态则分别对应json中的"trigger"部分、"output"部分、”state”部分。以银行领域调整信用卡额度为例进行说明,首先在用户咨询“信用卡额度调整”便会触发额度调整意图(例如配置文件中的"trigger"部分记录了“信用卡”和“额度调整”的组合),因此回答“您需要调整临时额度还是固定额度?”(例如配置文件中的"output"部分记录了“您需要调整临时额度还是固定额度?”),并且state部分记录了007,则将当前状态更新为007状态。从而完成第i+1轮对话。此时,由于已触发对话状态生成条件,因此无需对话状态预测工具也可顺利完成多轮对话。
在一个实施方式中,所述p个对话状态预测工具包括指定对话状态预测工具,所述指定对话状态预测工具预先连接至预设的外部知识库,所述外部知识库存储有历史多轮对话,所述依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测的步骤S4,包括:
S401、采用所述指定对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,生成当前的多轮对话的第一状态链;
S402、从所述外部知识库中获取指定历史多轮对话,其中所述指定历史多轮对话的第二状态链包含所述第一状态链;其中,所述第二状态链包含所述第一状态链指,所述第一状态链中的所有状态节点均是所述第二状态链的状态节点,并且所述第一状态链中的所有状态节点之间的节点关系也与所述第二状态链中对应的状态节点的节点关系相同;
S403、判断所述指定历史多轮对话的数量是否等于1;
S404、若所述指定历史多轮对话的数量等于1,则获取所述第二状态链中的指定状态节点,并将所述指定状态节点记为所述指定对话状态预测工具对应的预测对话状态,其中所述指定状态节点与所述第一状态链直接连接。
如上所述,实现了依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测。其中,所述外部知识库存储有历史多轮对话,可作为对话状态的预测的依据。多轮对话是由多个轮次的对话构成的,每轮对话本申请的执行终端均会确定当前的对话状态是什么样的,进而决定应该返回什么样的回复语音,这是人工规则的一个制式流程。所述第一状态链例如为T1-T2,即当前的多轮对话在第3轮对话时出现了卡壳现象。因此从外部知识库中获取具有T1-T2链的历史多轮对话,例如存在T1-T2-T5-T8链(即第二状态链)的历史多轮对话,则该历史多轮对话则作为指定历史多轮对话,与T1-T2链直接连接的状态节点为T5,因此T5为指定状态节点,应该将所述指定对话状态预测工具对应的预测对话状态节点记为T5。由于所述指定历史多轮对话的第二状态链包含所述第一状态链,因此所述指定历史多轮对话与当前多轮对话是相近的,在多轮对话卡壳时,参照指定历史多轮对话即能给出相对准确的预测对话状态,从而维持多轮对话的进行。进一步地,当所述指定历史多轮对话的数量不等于1时,可采用优先搜索原则或投票决策原则,以选出最准确的预测对话状态。其中所述优先搜索原则指,以搜索到的第一个指定历史多轮对话的指定状态节点,作为预测对话状态。投票决策原则指,以数量最多的指定状态节点作为预测对话状态,例如存在三个历史多轮对话,其状态链分别为T1-T2-T5-T8、T1-T2-T4-T7、T1-T2-T5-T9,则T5为数量最多的指定状态节点,因此T5作为预测对话状态节点。其中,T1例如为确定用户权限的状态,输出的回复语音例如为:“权限验证无误,请选择要办理的业务”(例如用户在第一轮对话中输入了用户名和密码);T2为业务确认状态,输出的回复语音例如为“您需要调整临时额度还是固定额度?”(例如用户输入了“我要调整信用额度”类似语音);T3为额度类别确认状态,输出的语音例如为“您需要如何调整临时额度”(例发用户输入了“临时额度”的语音)。其中,上述T1-T3的举例仅为解释本申请的一种应用场景,但不作为对本申请的限定。
在一个实施方式中,所述判断所述指定历史多轮对话的数量是否等于1的步骤S403之后,包括:
S4031、若所述指定历史多轮对话的数量不等于1,则根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度,从而得到与所有的指定历史多轮对话分别对应的多个相似度值;
S4032、获取数值最大的相似度值对应的指定历史多轮对话的指定状态节点,并记为所述指定对话状态预测工具对应的预测对话状态,其中指定状态节点与所述第一状态链直接连接。
如上所述,实现了获取数值最大的相似度值对应的指定历史多轮对话的指定状态节点,并记为所述指定对话状态预测工具对应的预测对话状态。为了提高对话状态预测的准确性,本申请采用根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度,从而得到与所有的指定历史多轮对话分别对应的多个相似度值;获取数值最大的相似度值对应的指定历史多轮对话的指定状态节点,并记为所述指定对话状态预测工具对应的预测对话状态的方式,以保证获取与当前多轮对话最相似的指定历史多轮对话。从而最相似的指定历史多轮对话接下来的对话状态,也最有可能是当前多轮对话的对话状态。从而提高预测对话状态的准确性。
在一个实施方式中,所述根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度的步骤S4031,包括:
S40311、通过查询通设的词向量库,获取与用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第一词向量序列,并将所述i+1个第一词向量序列顺序连接,从而得到第一综合向量X;
S40312、通过查询通设的词向量库,获取指定历史多轮对话中的用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第二词向量序列,并将所述i+1个第二词向量序列顺序连接,从而得到第二综合向量Y;
S40313、根据公式:
计算出指定历史多轮对话与当前多轮对话的相似度M,其中X为所述第一综合向量,Y为所述第二综合向量,Xj为所述第一综合向量的第j个分向量,Yj为所述第二综合向量的第j个分向量,所述第一综合向量和所述第二综合向量均具有m个分向量。
如上所述,实现了根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度。本申请不仅以用户输入的当前轮语音作为相似计算的依据,还以用户之前输入的语音作为相似计算的依据,以提高相似计算的准确性。所述词向量库用于将单词映射为向量,是自然语言分析领域中的一种常用数据库。从而利用所述词向量库,获取与用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第一词向量序列,并将所述i+1个第一词向量序列顺序连接,从而得到第一综合向量X;并通过查询通设的词向量库,获取指定历史多轮对话中的用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第二词向量序列,并将所述i+1个第二词向量序列顺序连接,从而得到第二综合向量Y。从而将当前多轮对话与历史多轮对话的相似判断,转化为向量间的相似计算。再根据公式:
计算出指定历史多轮对话与当前多轮对话的相似度M。其中上述公式不仅考虑到了向量间的数值差异,还考虑到了向量间的角度差异,从而进一步保证了相似计算的准确性。
在一个实施方式中,所述判断所述p个预测对话状态是否相同的步骤S5之后,包括:
S51、若所述p个预测对话状态不完全相同,则将所述p个预测对话状态划分为多个分组,其中每个分组仅包括一种预测对话状态;
S52、从所述多个分组中获取组内成员最多的第一分组,并将多轮对话的当前状态更新为所述第一分组对应的预测对话状态;
S53、从所述多个分组中获取组内成员最少的第二分组,并将所述第二分组对应的对话状态预测工具从所述p个对话状态预测工具中删除。
如上所述,实现了将多轮对话的当前状态更新为所述第一分组对应的预测对话状态,并将所述第二分组对应的对话状态预测工具从所述p个对话状态预测工具中删除。理想状态下是p个预测对话状态都相同,但实际上,p个对话状态预测工具的预测准确性是有差异的,因此很可能出现p个预测对话状态不完全相同的状况。当p个预测对话状态不完全相同时,本申请将所述p个预测对话状态划分为多个分组,其中组内成员最多的第一分组表明大多数的对话状态预测工具均认可该预测对话状态,因此将多轮对话的当前状态更新为所述第一分组对应的预测对话状态。并且,为了维持p个对话状态预测工具的预测准确性,还将所述第二分组对应的对话状态预测工具从所述p个对话状态预测工具中删除,以在下次进行预测时,提高较为准确的对话状态预测工具的相对权重,从而提高后续可能的对话状态预测的准确性。
本申请的基于对话状态预测的多轮对话方法,在与用户进行i轮对话之后,获取用户输入的第i+1轮语音;对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具进行对话状态预测,从而得到p个预测对话状态;判断所述p个预测对话状态是否相同;若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;采用预设的语音输出装置,输出所述第i+1轮回复语音。从而提高了多轮对话方案的泛化能力,保证了流畅性。
参照图2,本申请实施例提供一种基于对话状态预测的多轮对话装置,包括:
第i+1轮语音获取单元10,用于在与用户进行i轮对话之后,获取用户输入的第i+1轮语音,其中i为大于1的整数;
第i+1轮文字文本获取单元20,用于根据预设的语音识别方法,对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;
对话状态生成条件判断单元30,用于判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;
预测对话状态获取单元40,用于若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测,从而得到与所述p个对话状态预测工具分别对应的p个预测对话状态;其中,p为大于1的整数,所述前文信息至少包括第一轮文字文本、...、第i轮文字文本;
预测对话状态判断单元50,用于判断所述p个预测对话状态是否相同;
第i+1轮回复语音获取单元60,用于若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;
第i+1轮回复语音输出单元70,用于采用预设的语音输出装置,输出所述第i+1轮回复语音。
其中上述单元、子单元、模块或子模块分别用于执行的操作与前述实施方式的基于对话状态预测的多轮对话方法的步骤一一对应,在此不再赘述。
在一个实施方式中,所述对话状态生成条件判断单元30,包括:
分词处理子单元,用于将所述第i+1轮文字文本进行分词处理,从而得到多个关键词;
配置文件判断子单元,用于判断所述关键词或者所述关键词之间的组合是否记载在预设的配置文件中,其中所述配置文件记载有触发条件、回复语音和跳转状态;
对话状态生成条件判断子单元,用于若所述关键词或者所述关键词之间的组合记载在所述触发条件部分,则判定所述第i+1轮文字文本触发预设的对话状态生成条件;
所述装置,包括:
对话状态更新单元,用于若所述第i+1轮文字文本触发预设的对话状态生成条件,则将多轮对话的当前状态更新为所述跳转状态,并采用预设的语音输出装置输出所述回复语音。
其中上述单元、子单元、模块或子模块分别用于执行的操作与前述实施方式的基于对话状态预测的多轮对话方法的步骤一一对应,在此不再赘述。
在一个实施方式中,所述p个对话状态预测工具包括指定对话状态预测工具,所述指定对话状态预测工具预先连接至预设的外部知识库,所述外部知识库存储有历史多轮对话,所述预测对话状态获取单元40,包括:
第一状态链生成子单元,用于采用所述指定对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,生成当前的多轮对话的第一状态链;
指定历史多轮对话获取子单元,用于从所述外部知识库中获取指定历史多轮对话,其中所述指定历史多轮对话的第二状态链包含所述第一状态链;其中,所述第二状态链包含所述第一状态链指,所述第一状态链中的所有状态节点均是所述第二状态链的状态节点,并且所述第一状态链中的所有状态节点之间的节点关系也与所述第二状态链中对应的状态节点的节点关系相同;
指定历史多轮对话数量判断子单元,用于判断所述指定历史多轮对话的数量是否等于1;
指定状态节点获取子单元,用于若所述指定历史多轮对话的数量等于1,则获取所述第二状态链中的指定状态节点,并将所述指定状态节点记为所述指定对话状态预测工具对应的预测对话状态,其中所述指定状态节点与所述第一状态链直接连接。
其中上述单元、子单元、模块或子模块分别用于执行的操作与前述实施方式的基于对话状态预测的多轮对话方法的步骤一一对应,在此不再赘述。
在一个实施方式中,所述装置,包括:
相似计算单元,用于若所述指定历史多轮对话的数量不等于1,则根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度,从而得到与所有的指定历史多轮对话分别对应的多个相似度值;
预测对话状态标记单元,用于获取数值最大的相似度值对应的指定历史多轮对话的指定状态节点,并记为所述指定对话状态预测工具对应的预测对话状态,其中指定状态节点与所述第一状态链直接连接。
其中上述单元、子单元、模块或子模块分别用于执行的操作与前述实施方式的基于对话状态预测的多轮对话方法的步骤一一对应,在此不再赘述。
在一个实施方式中,所述相似计算单元,包括:
第一综合向量X获取子单元,用于通过查询通设的词向量库,获取与用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第一词向量序列,并将所述i+1个第一词向量序列顺序连接,从而得到第一综合向量X;
第二综合向量Y获取子单元,用于通过查询通设的词向量库,获取指定历史多轮对话中的用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第二词向量序列,并将所述i+1个第二词向量序列顺序连接,从而得到第二综合向量Y;
相似度M计算子单元,用于根据公式:
计算出指定历史多轮对话与当前多轮对话的相似度M,其中X为所述第一综合向量,Y为所述第二综合向量,Xj为所述第一综合向量的第j个分向量,Yj为所述第二综合向量的第j个分向量,所述第一综合向量和所述第二综合向量均具有m个分向量。
其中上述单元、子单元、模块或子模块分别用于执行的操作与前述实施方式的基于对话状态预测的多轮对话方法的步骤一一对应,在此不再赘述。
在一个实施方式中,所述装置,包括:
分组划分单元,用于若所述p个预测对话状态不完全相同,则将所述p个预测对话状态划分为多个分组,其中每个分组仅包括一种预测对话状态;
第一分组获取单元,用于从所述多个分组中获取组内成员最多的第一分组,并将多轮对话的当前状态更新为所述第一分组对应的预测对话状态;
第二分组获取单元,用于从所述多个分组中获取组内成员最少的第二分组,并将所述第二分组对应的对话状态预测工具从所述p个对话状态预测工具中删除。
其中上述单元、子单元、模块或子模块分别用于执行的操作与前述实施方式的基于对话状态预测的多轮对话方法的步骤一一对应,在此不再赘述。
本申请的基于对话状态预测的多轮对话装置,在与用户进行i轮对话之后,获取用户输入的第i+1轮语音;对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具进行对话状态预测,从而得到p个预测对话状态;判断所述p个预测对话状态是否相同;若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;采用预设的语音输出装置,输出所述第i+1轮回复语音。从而提高了多轮对话方案的泛化能力,保证了流畅性。
参照图3,本发明实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储基于对话状态预测的多轮对话方法所用数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于对话状态预测的多轮对话方法。
上述处理器执行上述基于对话状态预测的多轮对话方法,其中所述方法包括的步骤分别与执行前述实施方式的基于对话状态预测的多轮对话方法的步骤一一对应,在此不再赘述。
本领域技术人员可以理解,图中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请的计算机设备,在与用户进行i轮对话之后,获取用户输入的第i+1轮语音;对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具进行对话状态预测,从而得到p个预测对话状态;判断所述p个预测对话状态是否相同;若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;采用预设的语音输出装置,输出所述第i+1轮回复语音。从而提高了多轮对话方案的泛化能力,保证了流畅性。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现基于对话状态预测的多轮对话方法,其中所述方法包括的步骤分别与执行前述实施方式的基于对话状态预测的多轮对话方法的步骤一一对应,在此不再赘述。
本申请的计算机可读存储介质,在与用户进行i轮对话之后,获取用户输入的第i+1轮语音;对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具进行对话状态预测,从而得到p个预测对话状态;判断所述p个预测对话状态是否相同;若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;采用预设的语音输出装置,输出所述第i+1轮回复语音。从而提高了多轮对话方案的泛化能力,保证了流畅性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (9)
1.一种基于对话状态预测的多轮对话方法,其特征在于,包括:
在与用户进行i轮对话之后,获取用户输入的第i+1轮语音,其中i为大于1的整数;
根据预设的语音识别方法,对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;
判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;
若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测,从而得到与所述p个对话状态预测工具分别对应的p个预测对话状态;其中,p为大于1的整数,所述前文信息至少包括第一轮文字文本、...、第i轮文字文本;
判断所述p个预测对话状态是否相同;
若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;
采用预设的语音输出装置,输出所述第i+1轮回复语音;
所述p个对话状态预测工具包括指定对话状态预测工具,所述指定对话状态预测工具预先连接至预设的外部知识库,所述外部知识库存储有历史多轮对话,所述依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测的步骤,包括:
采用所述指定对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,生成当前的多轮对话的第一状态链;
从所述外部知识库中获取指定历史多轮对话,其中所述指定历史多轮对话的第二状态链包含所述第一状态链;其中,所述第二状态链包含所述第一状态链指,所述第一状态链中的所有状态节点均是所述第二状态链的状态节点,并且所述第一状态链中的所有状态节点之间的节点关系也与所述第二状态链中对应的状态节点的节点关系相同;
判断所述指定历史多轮对话的数量是否等于1;
若所述指定历史多轮对话的数量等于1,则获取所述第二状态链中的指定状态节点,并将所述指定状态节点记为所述指定对话状态预测工具对应的预测对话状态,其中所述指定状态节点与所述第一状态链直接连接。
2.根据权利要求1所述的基于对话状态预测的多轮对话方法,其特征在于,所述判断所述第i+1轮文字文本是否触发预设的对话状态生成条件的步骤,包括:
将所述第i+1轮文字文本进行分词处理,从而得到多个关键词;
判断所述关键词或者所述关键词之间的组合是否记载在预设的配置文件中,其中所述配置文件记载有触发条件、回复语音和跳转状态;
若所述关键词或者所述关键词之间的组合记载在所述触发条件部分,则判定所述第i+1轮文字文本触发预设的对话状态生成条件;
所述判断所述第i+1轮文字文本是否触发预设的对话状态生成条件的步骤之后,包括:
若所述第i+1轮文字文本触发预设的对话状态生成条件,则将多轮对话的当前状态更新为所述跳转状态,并采用预设的语音输出装置输出所述回复语音。
3.根据权利要求1所述的基于对话状态预测的多轮对话方法,其特征在于,所述判断所述指定历史多轮对话的数量是否等于1的步骤之后,包括:
若所述指定历史多轮对话的数量不等于1,则根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度,从而得到与所有的指定历史多轮对话分别对应的多个相似度值;
获取数值最大的相似度值对应的指定历史多轮对话的指定状态节点,并记为所述指定对话状态预测工具对应的预测对话状态,其中指定状态节点与所述第一状态链直接连接。
4.根据权利要求3所述的基于对话状态预测的多轮对话方法,其特征在于,所述根据预设的相似计算方法,计算指定历史多轮对话与当前多轮对话的相似度的步骤,包括:
通过查询通设的词向量库,获取与用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第一词向量序列,并将所述i+1个第一词向量序列顺序连接,从而得到第一综合向量X;
通过查询通设的词向量库,获取指定历史多轮对话中的用户输入的第一轮语音、...、第i+1轮语音分别对应的i+1个第二词向量序列,并将所述i+1个第二词向量序列顺序连接,从而得到第二综合向量Y;
根据公式:
计算出指定历史多轮对话与当前多轮对话的相似度M,其中X为所述第一综合向量,Y为所述第二综合向量,Xj为所述第一综合向量的第j个分向量,Yj为所述第二综合向量的第j个分向量,所述第一综合向量和所述第二综合向量均具有m个分向量。
5.根据权利要求1所述的基于对话状态预测的多轮对话方法,其特征在于,所述判断所述p个预测对话状态是否相同的步骤之后,包括:
若所述p个预测对话状态不完全相同,则将所述p个预测对话状态划分为多个分组,其中每个分组仅包括一种预测对话状态;
从所述多个分组中获取组内成员最多的第一分组,并将多轮对话的当前状态更新为所述第一分组对应的预测对话状态;
从所述多个分组中获取组内成员最少的第二分组,并将所述第二分组对应的对话状态预测工具从所述p个对话状态预测工具中删除。
6.一种基于对话状态预测的多轮对话装置,其特征在于,包括:
第i+1轮语音获取单元,用于在与用户进行i轮对话之后,获取用户输入的第i+1轮语音,其中i为大于1的整数;
第i+1轮文字文本获取单元,用于根据预设的语音识别方法,对所述第i+1轮语音进行语音识别处理,从而得到第i+1轮文字文本;
对话状态生成条件判断单元,用于判断所述第i+1轮文字文本是否触发预设的对话状态生成条件;
预测对话状态获取单元,用于若所述第i+1轮文字文本未触发预设的对话状态生成条件,则采用预设的p个对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,进行对话状态预测,从而得到与所述p个对话状态预测工具分别对应的p个预测对话状态;其中,p为大于1的整数,所述前文信息至少包括第一轮文字文本、...、第i轮文字文本;
预测对话状态判断单元,用于判断所述p个预测对话状态是否相同;
第i+1轮回复语音获取单元,用于若所述p个预测对话状态相同,则将多轮对话的当前状态更新为所述预测对话状态,并根据预设的对话状态与回复语音的对应关系,获取第i+1轮回复语音;
第i+1轮回复语音输出单元,用于采用预设的语音输出装置,输出所述第i+1轮回复语音;
所述p个对话状态预测工具包括指定对话状态预测工具,所述指定对话状态预测工具预先连接至预设的外部知识库,所述外部知识库存储有历史多轮对话,所述预测对话状态获取单元,包括:
第一状态链生成子单元,用于采用所述指定对话状态预测工具,依据所述第i+1轮文字文本和与所述第i+1轮文字文本对应的前文信息,生成当前的多轮对话的第一状态链;
指定历史多轮对话获取子单元,用于从所述外部知识库中获取指定历史多轮对话,其中所述指定历史多轮对话的第二状态链包含所述第一状态链;其中,所述第二状态链包含所述第一状态链指,所述第一状态链中的所有状态节点均是所述第二状态链的状态节点,并且所述第一状态链中的所有状态节点之间的节点关系也与所述第二状态链中对应的状态节点的节点关系相同;
指定历史多轮对话数量判断子单元,用于判断所述指定历史多轮对话的数量是否等于1;
指定状态节点获取子单元,用于若所述指定历史多轮对话的数量等于1,则获取所述第二状态链中的指定状态节点,并将所述指定状态节点记为所述指定对话状态预测工具对应的预测对话状态,其中所述指定状态节点与所述第一状态链直接连接。
7.根据权利要求6所述的基于对话状态预测的多轮对话装置,其特征在于,所述对话状态生成条件判断单元,包括:
分词处理子单元,用于将所述第i+1轮文字文本进行分词处理,从而得到多个关键词;
配置文件判断子单元,用于判断所述关键词或者所述关键词之间的组合是否记载在预设的配置文件中,其中所述配置文件记载有触发条件、回复语音和跳转状态;
对话状态生成条件判断子单元,用于若所述关键词或者所述关键词之间的组合记载在所述触发条件部分,则判定所述第i+1轮文字文本触发预设的对话状态生成条件;
所述装置,包括:
对话状态更新单元,用于若所述第i+1轮文字文本触发预设的对话状态生成条件,则将多轮对话的当前状态更新为所述跳转状态,并采用预设的语音输出装置输出所述回复语音。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010177686.7A CN111475616B (zh) | 2020-03-13 | 2020-03-13 | 基于对话状态预测的多轮对话方法、装置和计算机设备 |
PCT/CN2020/093426 WO2021179445A1 (zh) | 2020-03-13 | 2020-05-29 | 基于对话状态预测的多轮对话方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010177686.7A CN111475616B (zh) | 2020-03-13 | 2020-03-13 | 基于对话状态预测的多轮对话方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111475616A CN111475616A (zh) | 2020-07-31 |
CN111475616B true CN111475616B (zh) | 2023-08-22 |
Family
ID=71748316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010177686.7A Active CN111475616B (zh) | 2020-03-13 | 2020-03-13 | 基于对话状态预测的多轮对话方法、装置和计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111475616B (zh) |
WO (1) | WO2021179445A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112017663B (zh) * | 2020-08-14 | 2024-04-30 | 博泰车联网(南京)有限公司 | 一种语音泛化方法、装置及计算机存储介质 |
CN112185391A (zh) * | 2020-09-30 | 2021-01-05 | 深圳供电局有限公司 | 一种用于客服笔录自动修改处理方法 |
CN112463939B (zh) * | 2020-11-12 | 2024-05-24 | 深圳市欢太科技有限公司 | 人机对话方法、系统、服务设备及计算机存储介质 |
CN112364147A (zh) * | 2020-12-01 | 2021-02-12 | 四川长虹电器股份有限公司 | 一种基于知识图谱的跨领域多轮对话方法及实现系统 |
CN113220858B (zh) * | 2021-05-31 | 2023-10-27 | 平安科技(深圳)有限公司 | 对话系统更新方法、装置、计算机设备及存储介质 |
CN115374266B (zh) * | 2022-10-27 | 2023-01-17 | 深圳市人马互动科技有限公司 | 基于剧情交互节点的交互方法、装置、设备和存储介质 |
CN115878775B (zh) * | 2022-12-23 | 2024-04-12 | 北京百度网讯科技有限公司 | 生成跨类型对话数据的方法和装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108763568A (zh) * | 2018-06-05 | 2018-11-06 | 北京玄科技有限公司 | 智能机器人交互流程的管理方法、多轮对话方法及装置 |
CN109086329A (zh) * | 2018-06-29 | 2018-12-25 | 出门问问信息科技有限公司 | 基于话题关键词引导的进行多轮对话方法及装置 |
CN109460450A (zh) * | 2018-09-27 | 2019-03-12 | 清华大学 | 对话状态跟踪方法、装置、计算机设备和存储介质 |
CN110032633A (zh) * | 2019-04-17 | 2019-07-19 | 腾讯科技(深圳)有限公司 | 多轮对话处理方法、装置和设备 |
CN110209791A (zh) * | 2019-06-12 | 2019-09-06 | 百融云创科技股份有限公司 | 一种多轮对话智能语音交互系统及装置 |
CN110287297A (zh) * | 2019-05-22 | 2019-09-27 | 深圳壹账通智能科技有限公司 | 对话答复方法、装置、计算机设备及计算机可读存储介质 |
CN110309170A (zh) * | 2019-07-02 | 2019-10-08 | 北京大学 | 一种任务型多轮对话中的复杂意图识别方法 |
CN110442676A (zh) * | 2019-07-02 | 2019-11-12 | 北京邮电大学 | 基于多轮对话的专利检索方法及装置 |
CN110704588A (zh) * | 2019-09-04 | 2020-01-17 | 平安科技(深圳)有限公司 | 基于长短期记忆网络的多轮对话语义分析方法和系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4408665B2 (ja) * | 2003-08-11 | 2010-02-03 | 富士通株式会社 | 音声認識用発話データ収集装置、音声認識用発話データ収集方法、及びコンピュータプログラム |
US9318109B2 (en) * | 2013-10-02 | 2016-04-19 | Microsoft Technology Licensing, Llc | Techniques for updating a partial dialog state |
US10726831B2 (en) * | 2014-05-20 | 2020-07-28 | Amazon Technologies, Inc. | Context interpretation in natural language processing using previous dialog acts |
CN107665704B (zh) * | 2016-07-29 | 2020-09-11 | 科大讯飞股份有限公司 | 语音指令检测模型构建方法、检测方法及系统、人机交互方法及设备 |
KR20190077500A (ko) * | 2016-11-04 | 2019-07-03 | 피알시-데소토 인터내쇼날, 인코포레이티드 | 황-함유 폴리(알케닐)에테르, 황-함유 폴리(알케닐)에테르를 혼입한 예비중합체, 및 이들의 용도 |
CN106599196B (zh) * | 2016-12-14 | 2021-07-16 | 竹间智能科技(上海)有限公司 | 一种人工智能对话方法及系统 |
CN107369443B (zh) * | 2017-06-29 | 2020-09-25 | 北京百度网讯科技有限公司 | 基于人工智能的对话管理方法及装置 |
CN110096567B (zh) * | 2019-03-14 | 2020-12-25 | 中国科学院自动化研究所 | 基于qa知识库推理的多轮对话回复选择方法、系统 |
-
2020
- 2020-03-13 CN CN202010177686.7A patent/CN111475616B/zh active Active
- 2020-05-29 WO PCT/CN2020/093426 patent/WO2021179445A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108763568A (zh) * | 2018-06-05 | 2018-11-06 | 北京玄科技有限公司 | 智能机器人交互流程的管理方法、多轮对话方法及装置 |
CN109086329A (zh) * | 2018-06-29 | 2018-12-25 | 出门问问信息科技有限公司 | 基于话题关键词引导的进行多轮对话方法及装置 |
CN109460450A (zh) * | 2018-09-27 | 2019-03-12 | 清华大学 | 对话状态跟踪方法、装置、计算机设备和存储介质 |
CN110032633A (zh) * | 2019-04-17 | 2019-07-19 | 腾讯科技(深圳)有限公司 | 多轮对话处理方法、装置和设备 |
CN110287297A (zh) * | 2019-05-22 | 2019-09-27 | 深圳壹账通智能科技有限公司 | 对话答复方法、装置、计算机设备及计算机可读存储介质 |
CN110209791A (zh) * | 2019-06-12 | 2019-09-06 | 百融云创科技股份有限公司 | 一种多轮对话智能语音交互系统及装置 |
CN110309170A (zh) * | 2019-07-02 | 2019-10-08 | 北京大学 | 一种任务型多轮对话中的复杂意图识别方法 |
CN110442676A (zh) * | 2019-07-02 | 2019-11-12 | 北京邮电大学 | 基于多轮对话的专利检索方法及装置 |
CN110704588A (zh) * | 2019-09-04 | 2020-01-17 | 平安科技(深圳)有限公司 | 基于长短期记忆网络的多轮对话语义分析方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111475616A (zh) | 2020-07-31 |
WO2021179445A1 (zh) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111475616B (zh) | 基于对话状态预测的多轮对话方法、装置和计算机设备 | |
CN111160017B (zh) | 关键词抽取方法、话术评分方法以及话术推荐方法 | |
CN108255934B (zh) | 一种语音控制方法及装置 | |
CN110689881B (zh) | 语音识别方法、装置、计算机设备和存储介质 | |
KR20210088680A (ko) | 비디오 커팅 방법, 장치, 컴퓨터 기기 및 저장매체 | |
CN109614627B (zh) | 一种文本标点预测方法、装置、计算机设备及存储介质 | |
CN113297366B (zh) | 多轮对话的情绪识别模型训练方法、装置、设备及介质 | |
CN110717027B (zh) | 多轮智能问答方法、系统以及控制器和介质 | |
CN108228732A (zh) | 语言存储方法和语言对话系统 | |
CN114120978A (zh) | 情绪识别模型训练、语音交互方法、装置、设备及介质 | |
EP3501024B1 (en) | Systems, apparatuses, and methods for speaker verification using artificial neural networks | |
CN110164416B (zh) | 一种语音识别方法及其装置、设备和存储介质 | |
CN113449489A (zh) | 标点符号标注方法、装置、计算机设备和存储介质 | |
CN111223476A (zh) | 语音特征向量的提取方法、装置、计算机设备和存储介质 | |
CN112395857A (zh) | 基于对话系统的语音文本处理方法、装置、设备及介质 | |
CN113571096B (zh) | 语音情绪分类模型训练方法、装置、计算机设备及介质 | |
CN111901554A (zh) | 基于语义聚类的通话通道构建方法、装置和计算机设备 | |
CN113569021B (zh) | 用户分类的方法、计算机设备和可读存储介质 | |
CN113111157B (zh) | 问答处理方法、装置、计算机设备和存储介质 | |
CN114242047A (zh) | 一种语音处理方法、装置、电子设备及存储介质 | |
CN116343755A (zh) | 领域自适应语音识别方法、装置、计算机设备及存储介质 | |
CN112148864B (zh) | 语音交互方法、装置、计算机设备和存储介质 | |
CN115376558A (zh) | 角色识别方法、装置、计算机设备及存储介质 | |
CN116629254B (zh) | 一种基于文本分析和识别的政策文本分析方法 | |
WO2024202419A1 (ja) | 音声認識用の学習データ生成システム、音声認識用の学習データ生成方法及びプログラム |
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 |