CN113268973B - 一种人机多轮对话方法及装置 - Google Patents
一种人机多轮对话方法及装置 Download PDFInfo
- Publication number
- CN113268973B CN113268973B CN202110609449.8A CN202110609449A CN113268973B CN 113268973 B CN113268973 B CN 113268973B CN 202110609449 A CN202110609449 A CN 202110609449A CN 113268973 B CN113268973 B CN 113268973B
- Authority
- CN
- China
- Prior art keywords
- similarity
- standby
- intention
- analyzed
- value
- 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 107
- 230000008569 process Effects 0.000 claims abstract description 52
- 230000004044 response Effects 0.000 claims abstract description 41
- 230000009471 action Effects 0.000 claims abstract description 40
- 239000011159 matrix material Substances 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 24
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000004458 analytical method Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 235000012054 meals Nutrition 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 235000013410 fast food Nutrition 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000001308 synthesis method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种人机多轮对话方法及装置。所述人机多轮对话方法包括:获取流程节点;获取意图库,每个意图库包括意图信息及基础语料;获取待分析语句;将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值;判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若是,则获取该相似度值所对应的基础语料所关联的意图信息作为识别意图信息;根据所述识别意图信息获取对应的响应动作。本申请的人机多轮对话方法设置了意图库,意图库可以跟多个流程节点进行关联,从而不需要为每一个流程节点配置多个基础语料。
Description
技术领域
本申请涉及智能语音交互技术领域,具体涉及一种人机多轮对话方法以及人机多轮对话装置。
背景技术
流程引擎设计,是指人机多轮对话从对话开始到对话结束的一个流程走向,包括子流程节点、条件节点、计数节点及话题节点等等,这些节点不但起到对用户意图识别的作用,还起着引导流程走向的作用。
传统设计中,会在这些流程节点的每个流程节点上配置多个语料进行意图判断,当命中了对应机器人话术,就会按照既定流程往下走,当没有命中时或者相似度较低时,就会走未识别分支流程。
然而,采用这种方式,会造成系统上的冗余,例如,当多个流程节点上配置的语料相同时,事实上没有必要为各个流程节点配置相同的语料。另外,当没有识别出来待分析语句时,则需要人工去对各个流程节点进行重新梳理,费时费力。
因此,希望有一种技术方案来解决或至少减轻现有技术的上述不足。
发明内容
本发明的目的在于提供一种人机多轮对话方法以解决上述至少一方面的问题。
本发明的一个方面,提供一种人机多轮对话方法,所述人机多轮对话方法包括:
获取流程节点,所述流程节点的数量为多个,每个流程节点包括至少一个响应动作;
获取意图库,所述意图库的数量至少为一个,每个意图库包括至少一个意图信息以及至少一个基础语料,其中,一个意图库与至少一个流程节点关联,一个流程节点中的一个响应动作与相关联的意图库中的至少一个意图信息相关联,每个基础语料至少与一个意图信息相关联;
获取待分析语句;
将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值;
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若是,则
获取该超过相似度阈值且是各个相似度值中的数值最高的相似度值所对应的基础语料所关联的意图信息作为识别意图信息;
根据所述识别意图信息获取对应的响应动作。
可选地,所述人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
将所述待分析语句作为基础语料加入至各个所述意图库中的一个或多个中,以及,
将所述待分析语句所对应的意图信息加入至所述待分析语句加入的意图库中。
可选地,所述人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
将所述待分析语句作为基础语料与各个所述意图库中的至少一个意图信息进行关联。
可选地,所述人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
获取备用意图库,所述备用意图库分别与各个流程节点相关联,所述备用意图库中包括至少一个备用意图信息以及至少一个备用基础语料,其中,每个备用基础语料至少与一个备用意图信息相关联,一个流程节点中的一个响应动作与所述备用意图库中的一个意图信息相关联;
将待分析语句分别与每个备用基础语料进行相似度比较从而获取待分析语句分别与每个备用基础语料的备用相似度值;
判断获取的各个备用相似度值中是否有一个备用相似度值超过备用相似度阈值且该备用相似度值为各个备用相似度值中的数值最高的备用相似度值;若是,则
获取该超过备用相似度阈值且是各个备用相似度值中的数值最高的备用相似度值所对应的备用基础语料所关联的备用意图信息作为识别意图信息;
根据所述识别意图信息获取对应的响应动作。
可选地,判断获取的各个备用相似度值中是否有一个备用相似度值超过相似度阈值且该备用相似度值为各个备用相似度值中的数值最高的备用相似度值;若否,则
获取所述待分析语句;
在互联网上搜索所述待分析语句,若搜索到待分析语句的完整语句,则下载出现该待分析语句的完整语句的文章;
识别所述文章,从而获取文章中的文字内容;
为文章中的文字内容进行分句,从而获取至少一段分句文字;
将每个分句文字分别与备用意图库中的各个备用基础语料进行相似度比较从而获得各个分句相似度值;
判断各个分句相似度值中是否有一个分句相似度值大于超过分句相似度阈值且该分句相似度值为各个分句相似度值中的数值最高的分句相似度值;若是,
则获取该超过分句相似度阈值且是各个分句相似度值中的数值最高的分句相似度值所对应的备用基础语料所关联的意图信息;
根据所述识别意图信息获取对应的响应动作。
可选地,所述将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值包括:
根据待分析语句获取待分析语句的待分析语句词向量矩阵;
根据基础语料获取每个基础语料的基础语料词向量矩阵;
根据所述待分析语句词向量矩阵与所述基础语料词向量矩阵获取待分析语句与每个基础语料的相似度值。
本申请还提供了一种人机多轮对话装置,所述人机多轮对话装置包括:
流程节点获取模块,所述流程节点获取模块用于获取流程节点,所述流程节点的数量为多个,每个流程节点包括至少一个响应动作;
意图库获取模块,所述意图库获取模块用于获取意图库,所述意图库的数量至少为一个,每个意图库包括至少一个意图信息以及至少一个基础语料,其中,一个意图库与至少一个流程节点关联,一个流程节点中的一个响应动作与相关联的意图库中的至少一个意图信息相关联,每个基础语料至少与一个意图信息相关联;
待分析语句获取模块,所述待分析语句获取模块用于获取待分析语句;
相似度对比模块,所述相似度对比模块用于将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值;
判断模块,所述判断模块用于判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;
识别意图信息获取模块,所述识别意图信息获取模块用于在所述判断模块判断为是时,获取该超过相似度阈值且是各个相似度值中的数值最高的相似度值所对应的基础语料所关联的意图信息作为识别意图信息;
响应动作获取模块,所述响应动作获取模块用于根据所述识别意图信息获取对应的响应动作。
可选地,所述人机多轮对话装置进一步包括:
意图库更新模块,所述意图库更新模块用于在所述判断模块判断为否时,将所述待分析语句作为基础语料加入至各个所述意图库中的一个或多个中,以及,
将所述待分析语句所对应的意图信息加入至所述待分析语句加入的意图库中。
本申请还提供了一种电子设备,所述电子设备包括存储器、处理器以及存储在存储器中并能够在处理器上运行的计算机程序,所述处理器执行计算机程序时能够实现如上所述的人机多轮对话方法。
本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时能够实现如上所述的人机多轮对话方法。
有益效果
本申请的人机多轮对话方法设置了意图库,意图库可以跟多个流程节点进行关联,从而不需要为每一个流程节点配置多个基础语料,也不会出现多个流程节点所配置的基础语料过多且其中重复内容较多的问题,从而节省了资源。
附图说明
图1是本申请一实施例的人机多轮对话方法的流程示意图;
图2是能够实现根据本申请一个实施例提供的人机多轮对话方法的电子设备的示例性结构图。
具体实施方式
为使本申请实施的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施例是本申请一部分实施例,而不是全部的实施例。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。下面结合附图对本申请的实施例进行详细说明。
图1是本申请一实施例的语音机器人用话术合成方法的流程示意图。
如图1所示的人机多轮对话方法包括:
步骤1:获取流程节点,流程节点的数量为多个,每个流程节点包括至少一个响应动作;
步骤2:获取意图库,意图库的数量至少为一个,每个意图库包括至少一个意图信息以及至少一个基础语料,其中,一个意图库与至少一个流程节点关联,一个流程节点中的一个响应动作与相关联的意图库中的至少一个意图信息相关联,每个基础语料至少与一个意图信息相关联;
步骤3:获取待分析语句;
步骤4:将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值;
步骤5:判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若是,则
步骤6:获取该超过相似度阈值且是各个相似度值中的数值最高的相似度值所对应的基础语料所关联的意图信息作为识别意图信息;
步骤7:根据所述识别意图信息获取对应的响应动作。
本申请的人机多轮对话方法设置了意图库,意图库可以跟多个流程节点进行关联,从而不需要为每一个流程节点配置多个基础语料,也不会出现多个流程节点所配置的基础语料过多且其中重复内容较多的问题,从而节省了资源。
在本实施例中,人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
将待分析语句作为基础语料加入至各个所述意图库中的一个或多个中,以及,
将待分析语句所对应的意图信息加入至待分析语句加入的意图库中。
采用这种方式,在实际应用中,当一个待分析语句无法进行意图识别时,通过识别该待分析语句的意图后将该待分析语句的意图以及基础语料加入至意图库中,从而实现意图库的在线更新,从而在下次人机多轮对话,即可使用完善的意图库来匹配用户语句。
在一个实施例中,一个意图库与多个流程节点关联,这样,仅仅更新一个意图库就可以,不需要为每个流程节点进行基础语料的更新,从而节省了人力。
可以理解的是,在一个实施例中,有可能本申请的意图库中存在该待分析语句的意图,但是通过相似度计算无法获取与待分析语句相匹配的基础语料,此时,本申请的人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
将待分析语句作为基础语料与各个意图库中的至少一个意图信息进行关联。
采用这种方式,直接将待分析语句与意图库进行关联,从而在下一次获取类似的待分析语句后即可进行意图的获取。
在一个实施例中,人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
获取备用意图库,备用意图库分别与各个流程节点相关联,备用意图库中包括至少一个备用意图信息以及至少一个备用基础语料,其中,每个备用基础语料至少与一个备用意图信息相关联,一个流程节点中的一个响应动作与所述备用意图库中的一个意图信息相关联;
将待分析语句分别与每个备用基础语料进行相似度比较从而获取待分析语句分别与每个备用基础语料的备用相似度值;
判断获取的各个备用相似度值中是否有一个备用相似度值超过备用相似度阈值且该备用相似度值为各个备用相似度值中的数值最高的备用相似度值;若是,则
获取该超过备用相似度阈值且是各个备用相似度值中的数值最高的备用相似度值所对应的备用基础语料所关联的备用意图信息作为识别意图信息;
根据识别意图信息获取对应的响应动作。
在本实施例中,通过设置一个备用意图库的方式来扩大整个方法的识别广度,例如,有一些基础语料虽然不太常用,但是也有常用的可能性,这样,为了避免资源的浪费,在之前的步骤中并不调取该备用意图库进行相似度比较,然而,在意图库与待分析语句的相似度没有匹配成功之后,可以调用该备用意图库进行相似度的比较,这样,在不需要使用备用意图库时,不需要调用备用意图库,从而加快了响应速度,而当使用备用意图库且匹配成功时,等于扩大了使用广度。
在设置有备用意图库的实施例中,人机多轮对话方法进一步包括:
判断获取的各个备用相似度值中是否有一个备用相似度值超过相似度阈值且该备用相似度值为各个备用相似度值中的数值最高的备用相似度值;若否,则
获取所述待分析语句;
在互联网上搜索所述待分析语句,若搜索到待分析语句的完整语句,则下载出现该待分析语句的完整语句的文章;
识别所述文章,从而获取文章中的文字内容;
为文章中的文字内容进行分句,从而获取至少一段分句文字;
将每个分句文字分别与备用意图库中的各个备用基础语料进行相似度比较从而获得各个分句相似度值;
判断各个分句相似度值中是否有一个分句相似度值大于超过分句相似度阈值且该分句相似度值为各个分句相似度值中的数值最高的分句相似度值;若是,
则获取该超过分句相似度阈值且是各个分句相似度值中的数值最高的分句相似度值所对应的备用基础语料所关联的意图信息;
根据所述识别意图信息获取对应的响应动作。
采用这种方式,在实际应用中,当意图库与备用意图库都无法匹配上待分析语句时,通过在网络中找到待分析语句所存在的文章中,并通过整体分析文章的含义的方式来找到待分析语句的相似度,从而能够使本申请智能的获取意图信息。
在本实施例中,备用意图库至少包括意图库中的所有的意图信息以及基础语料。
举例来说,当一个待分析语句为“买麦当劳”,而本申请的备用意图库中的备用意图信息包括转接订餐电话,响应动作包括转接电话至外卖端口,备用基础语料包括“吃、买、西式、中式、快餐”等,此时,通过本申请的意图库以及备用意图库均无法获取到待分析语句的意图信息,将待分析语句“买麦当劳”在互联网上搜索,若搜索到一个文章包括待分析语句,且该文章中还包括“麦当劳是一种西式快餐”这一分句文字,此时,将该分字语句与备用基础语料进行相似度计算获取的相似度值可能超过相似度阈值,这时,即可判断该意图信息为转接订餐电话,则根据该意图信息进行响应动作,即转接电话至外卖端口。
在本实施例中,将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值包括:
根据待分析语句获取待分析语句的待分析语句词向量矩阵;
根据基础语料获取每个基础语料的基础语料词向量矩阵;
根据待分析语句词向量矩阵与所述基础语料词向量矩阵获取待分析语句与每个基础语料的相似度值。
更具体地,根据基础语料获取每个基础语料的基础语料词向量矩阵包括:
对基础语料通过Jieba分词进行分词,然后使用numpy取词的矢量乘以词的权重(词性权重及行业牛熊词权重),将结果转换为词向量矩阵,并将向量单位化。
在本实施例中,为了进行相似度计算时所计算出的相似度准确度较高,本申请采用如下方法获取基础语料词向量矩阵。
举例来说,假设一个基础语料为:少年强则中国强。
首先,需要进行词性权重的设置,例如,为副动词设置权重为A,为副形词设置权重为B、为形容词性语素设置权重为C等,其次,进行分词,例如,将少年强则中国强分为:“少年”、“强”、“则”、“中国”、“强”,并在进行分词过程中,为每个分词提供一个语序,例如,“少年”位于整个基础语料的第一句且包括两个单词,则语序为0,“强”位于整个基础语料的第二句且包括一个单词,则语序为2,“则”位于整个基础语料的第三句且包括一个单词,则语序为3、“中国”位于整个基础语料的第四句且包括两个单词,则语序为4、“强”位于整个基础语料的第四句且包括一个单词,则语序为6。
采用这种方式,可以通过分词、词性以及语序综合进行相似度的计算,从而提高相似度的准确率。
根据上述信息,进行词向量矩阵转换从而获取词向量矩阵。
将各个基础语料对应的词向量矩阵存入Redis中,便于快速读取和计算。
类似的,根据待分析语句获取待分析语句的待分析语句词向量矩阵包括:
对用户语句进行分词,然后进行词向量矩阵计算。
在本实施例中,根据待分析语句词向量矩阵与基础语料词向量矩阵获取待分析语句与每个基础语料的相似度值采用如下公式进行:
其中,
A:相似度计算语句1(例如基础语料)的词向量矩阵(一维矩阵)
B:相似度计算语句2(例如待分析语句)的词向量矩阵(一维矩阵)
Ai:语句1的词向量矩阵第i个位置的数值
Bi:语句2的词向量矩阵第i个位置的数值。
代码中使用numpy的点积和二范数进行实现:
其中,
vec1为语句1(例如基础语料)的词向量矩阵,vec2为语句2(例如待分析语句)的词向量矩阵。
采用本申请的人机多轮对话方法具有如下优点:
1、通过将近万通多轮对话,用户意图的命中率从80%提升到99%,并在意图库不断积累的情况下,命中率进一步提高。
2、通过意图库的设计,降低了流程节点与语料配置的复杂度,配置更加灵活。
3、相对于现有技术,本申请降低了流程节点与语料匹配设计的复杂度。
本申请还提供了一种人机多轮对话装置,所述人机多轮对话装置包括流程节点获取模块、意图库获取模块、待分析语句获取模块、相似度对比模块、判断模块、识别意图信息获取模块以及响应动作获取模块,其中,
流程节点获取模块用于获取流程节点,流程节点的数量为多个,每个流程节点包括至少一个响应动作;
意图库获取模块用于获取意图库,意图库的数量至少为一个,每个意图库包括至少一个意图信息以及至少一个基础语料,其中,一个流程节点与一个意图库关联,一个流程节点中的一个响应动作与相关联的意图库中的至少一个意图信息相关联,每个基础语料至少与一个意图信息相关联;
待分析语句获取模块用于获取待分析语句;
相似度对比模块用于将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值;
判断模块用于判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;
识别意图信息获取模块用于在判断模块判断为是时,获取该超过相似度阈值且是各个相似度值中的数值最高的相似度值所对应的基础语料所关联的意图信息作为识别意图信息;
响应动作获取模块用于根据所述识别意图信息获取对应的响应动作。
在本实施例中,所述人机多轮对话装置进一步包括意图库更新模块,意图库更新模块用于在所述判断模块判断为否时,将所述待分析语句作为基础语料加入至各个所述意图库中的一个或多个中,以及,将待分析语句所对应的意图信息加入至待分析语句加入的意图库中。
需要说明的是,前述对方法实施例的解释说明也适用于本实施例的系统,此处不再赘述。
本申请还提供了一种电子设备,包括存储器、处理器以及存储在存储器中并能够在处理器上运行的计算机程序,处理器执行计算机程序时实现如上的人机多轮对话方法。
本申请还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时能够实现如上的人机多轮对话方法。
图2是能够实现根据本申请一个实施例提供的人机多轮对话方法的电子设备的示例性结构图。
如图2所示,电子设备包括输入设备501、输入接口502、中央处理器503、存储器504、输出接口505以及输出设备506。其中,输入接口502、中央处理器503、存储器504以及输出接口505通过总线507相互连接,输入设备501和输出设备506分别通过输入接口502和输出接口505与总线507连接,进而与电子设备的其他组件连接。具体地,输入设备504接收来自外部的输入信息,并通过输入接口502将输入信息传送到中央处理器503;中央处理器503基于存储器504中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器504中,然后通过输出接口505将输出信息传送到输出设备506;输出设备506将输出信息输出到电子设备的外部供用户使用。
也就是说,图2所示的电子设备也可以被实现为包括:存储有计算机可执行指令的存储器;以及一个或多个处理器,该一个或多个处理器在执行计算机可执行指令时可以实现结合图1描述的人机多轮对话方法。
在一个实施例中,图2所示的电子设备可以被实现为包括:存储器504,被配置为存储可执行程序代码;一个或多个处理器503,被配置为运行存储器504中存储的可执行程序代码,以执行上述实施例中的人机多轮对话方法。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动,媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数据多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
此外,显然“包括”一词不排除其他单元或步骤。装置权利要求中陈述的多个单元、模块或装置也可以由一个单元或总装置通过软件或硬件来实现。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,模块、程序段、或代码的一部分包括一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地标识的方框实际上可以基本并行地执行,他们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或总流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在本实施例中所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路 (Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现装置/终端设备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
在本实施例中,装置/终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。本申请虽然以较佳实施例公开如上,但其实并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此,本申请的保护范围应当以本申请权利要求所界定的范围为准。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
虽然,上文中已经用一般性说明及具体实施方案对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
Claims (9)
1.一种人机多轮对话方法,其特征在于,所述人机多轮对话方法包括:
获取流程节点,所述流程节点的数量为多个,每个流程节点包括至少一个响应动作;
获取意图库,所述意图库的数量至少为一个,每个意图库包括至少一个意图信息以及至少一个基础语料,其中,一个意图库与至少一个流程节点关联,一个流程节点中的一个响应动作与相关联的意图库中的至少一个意图信息相关联,每个基础语料至少与一个意图信息相关联;
获取待分析语句;
将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值;
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若是,则
获取该超过相似度阈值且是各个相似度值中的数值最高的相似度值所对应的基础语料所关联的意图信息作为识别意图信息;
根据所述识别意图信息获取对应的响应动作;
所述人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
获取备用意图库,所述备用意图库分别与各个流程节点相关联,所述备用意图库中包括至少一个备用意图信息以及至少一个备用基础语料,其中,每个备用基础语料至少与一个备用意图信息相关联,一个流程节点中的一个响应动作与所述备用意图库中的一个意图信息相关联;
将待分析语句分别与每个备用基础语料进行相似度比较从而获取待分析语句分别与每个备用基础语料的备用相似度值;
判断获取的各个备用相似度值中是否有一个备用相似度值超过备用相似度阈值且该备用相似度值为各个备用相似度值中的数值最高的备用相似度值;若是,则
获取该超过备用相似度阈值且是各个备用相似度值中的数值最高的备用相似度值所对应的备用基础语料所关联的备用意图信息作为识别意图信息;
根据所述识别意图信息获取对应的响应动作。
2.如权利要求1所述的人机多轮对话方法,其特征在于,所述人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
将所述待分析语句作为基础语料加入至各个所述意图库中的一个或多个中,以及,
将所述待分析语句所对应的意图信息加入至所述待分析语句加入的意图库中。
3.如权利要求1所述的人机多轮对话方法,其特征在于,当所述意图库中存在该待分析语句的意图,但是通过相似度计算无法获取与待分析语句相匹配的基础语料时,所述人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
将所述待分析语句作为基础语料与各个所述意图库中的至少一个意图信息进行关联。
4.如权利要求1所述的人机多轮对话方法,其特征在于,所述人机多轮对话方法进一步包括:
判断获取的各个备用相似度值中是否有一个备用相似度值超过相似度阈值且该备用相似度值为各个备用相似度值中的数值最高的备用相似度值;若否,则
获取所述待分析语句;
在互联网上搜索所述待分析语句,若搜索到待分析语句的完整语句,则下载出现该待分析语句的完整语句的文章;
识别所述文章,从而获取文章中的文字内容;
为文章中的文字内容进行分句,从而获取至少一段分句文字;
将每个分句文字分别与备用意图库中的各个备用基础语料进行相似度比较从而获得各个分句相似度值;
判断各个分句相似度值中是否有一个分句相似度值大于超过分句相似度阈值且该分句相似度值为各个分句相似度值中的数值最高的分句相似度值;若是,
则获取该超过分句相似度阈值且是各个分句相似度值中的数值最高的分句相似度值所对应的备用基础语料所关联的意图信息;
根据所述识别意图信息获取对应的响应动作。
5.如权利要求1所述的人机多轮对话方法,其特征在于,所述将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值包括:
根据待分析语句获取待分析语句的待分析语句词向量矩阵;
根据基础语料获取每个基础语料的基础语料词向量矩阵;
根据所述待分析语句词向量矩阵与所述基础语料词向量矩阵获取待分析语句与每个基础语料的相似度值。
6.一种人机多轮对话装置,其特征在于,所述人机多轮对话装置包括:
流程节点获取模块,所述流程节点获取模块用于获取流程节点,所述流程节点的数量为多个,每个流程节点包括至少一个响应动作;
意图库获取模块,所述意图库获取模块用于获取意图库,所述意图库的数量至少为一个,每个意图库包括至少一个意图信息以及至少一个基础语料,其中,一个意图库与至少一个流程节点关联,一个流程节点中的一个响应动作与相关联的意图库中的至少一个意图信息相关联,每个基础语料至少与一个意图信息相关联;
待分析语句获取模块,所述待分析语句获取模块用于获取待分析语句;
相似度对比模块,所述相似度对比模块用于将待分析语句分别与每个基础语料进行相似度比较从而获取待分析语句分别与每个基础语料的相似度值;
判断模块,所述判断模块用于判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;
识别意图信息获取模块,所述识别意图信息获取模块用于在所述判断模块判断为是时,获取该超过相似度阈值且是各个相似度值中的数值最高的相似度值所对应的基础语料所关联的意图信息作为识别意图信息;
响应动作获取模块,所述响应动作获取模块用于根据所述识别意图信息获取对应的响应动作;其中,
所述人机多轮对话方法进一步包括:
判断获取的各个相似度值中是否有一个相似度值超过相似度阈值且该相似度值为各个相似度值中的数值最高的相似度值;若否,则
获取备用意图库,所述备用意图库分别与各个流程节点相关联,所述备用意图库中包括至少一个备用意图信息以及至少一个备用基础语料,其中,每个备用基础语料至少与一个备用意图信息相关联,一个流程节点中的一个响应动作与所述备用意图库中的一个意图信息相关联;
将待分析语句分别与每个备用基础语料进行相似度比较从而获取待分析语句分别与每个备用基础语料的备用相似度值;
判断获取的各个备用相似度值中是否有一个备用相似度值超过备用相似度阈值且该备用相似度值为各个备用相似度值中的数值最高的备用相似度值;若是,则
获取该超过备用相似度阈值且是各个备用相似度值中的数值最高的备用相似度值所对应的备用基础语料所关联的备用意图信息作为识别意图信息;
根据所述识别意图信息获取对应的响应动作。
7.如权利要求6所述的人机多轮对话装置,其特征在于,所述人机多轮对话装置进一步包括:
意图库更新模块,所述意图库更新模块用于在所述判断模块判断为否时,将所述待分析语句作为基础语料加入至各个所述意图库中的一个或多个中,以及,
将所述待分析语句所对应的意图信息加入至所述待分析语句加入的意图库中。
8.一种电子设备,其特征在于,所述电子设备包括存储器、处理器以及存储在存储器中并能够在处理器上运行的计算机程序,所述处理器执行计算机程序时能够实现如权利要求1至5中任意一项所述的人机多轮对话方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时能够实现如权利要求1至5中任意一项所述的人机多轮对话方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110609449.8A CN113268973B (zh) | 2021-06-01 | 2021-06-01 | 一种人机多轮对话方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110609449.8A CN113268973B (zh) | 2021-06-01 | 2021-06-01 | 一种人机多轮对话方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113268973A CN113268973A (zh) | 2021-08-17 |
CN113268973B true CN113268973B (zh) | 2021-11-16 |
Family
ID=77233877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110609449.8A Active CN113268973B (zh) | 2021-06-01 | 2021-06-01 | 一种人机多轮对话方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113268973B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110096567A (zh) * | 2019-03-14 | 2019-08-06 | 中国科学院自动化研究所 | 基于qa知识库推理的多轮对话回复选择方法、系统 |
CN112182196A (zh) * | 2020-11-03 | 2021-01-05 | 海信视像科技股份有限公司 | 应用于多轮对话的服务设备及多轮对话方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3374880A1 (en) * | 2015-11-12 | 2018-09-19 | Semantic Machines, Inc. | Interaction assistant |
CN108090177B (zh) * | 2017-12-15 | 2020-05-05 | 上海智臻智能网络科技股份有限公司 | 多轮问答系统的生成方法、设备、介质及多轮问答系统 |
CN108804643A (zh) * | 2018-06-05 | 2018-11-13 | 北京玄科技有限公司 | 多轮会话的流程配置单元、方法及智能机器人交互系统 |
CN111737408B (zh) * | 2019-03-25 | 2024-05-03 | 阿里巴巴集团控股有限公司 | 基于剧本的对话方法、设备及电子设备 |
CN112632242A (zh) * | 2020-12-17 | 2021-04-09 | 竹间智能科技(上海)有限公司 | 智能对话方法及装置、电子设备 |
-
2021
- 2021-06-01 CN CN202110609449.8A patent/CN113268973B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110096567A (zh) * | 2019-03-14 | 2019-08-06 | 中国科学院自动化研究所 | 基于qa知识库推理的多轮对话回复选择方法、系统 |
CN112182196A (zh) * | 2020-11-03 | 2021-01-05 | 海信视像科技股份有限公司 | 应用于多轮对话的服务设备及多轮对话方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113268973A (zh) | 2021-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109543190B (zh) | 一种意图识别方法、装置、设备及存储介质 | |
WO2021174717A1 (zh) | 文本意图识别方法、装置、计算机设备和存储介质 | |
WO2021179701A1 (zh) | 多语种语音识别方法、装置及电子设备 | |
CN108682421B (zh) | 一种语音识别方法、终端设备及计算机可读存储介质 | |
CN114333852A (zh) | 一种多说话人语音人声分离方法、终端设备及存储介质 | |
CN112562640B (zh) | 多语言语音识别方法、装置、系统及计算机可读存储介质 | |
CN108875743B (zh) | 一种文本识别方法及装置 | |
CN115795061B (zh) | 一种基于词向量和依存句法的知识图谱构建方法及系统 | |
CN111079408A (zh) | 一种语种识别方法、装置、设备及存储介质 | |
CN111859013A (zh) | 数据处理方法、装置、终端和存储介质 | |
CN110377708B (zh) | 一种多情景对话切换方法及装置 | |
CN115840808A (zh) | 科技项目咨询方法、装置、服务器及计算机可读存储介质 | |
CN115392235A (zh) | 字符匹配方法、装置、电子设备及可读存储介质 | |
CN113128205B (zh) | 一种剧本信息处理方法、装置、电子设备及存储介质 | |
CN111027316A (zh) | 文本处理方法、装置、电子设备及计算机可读存储介质 | |
CN114242047A (zh) | 一种语音处理方法、装置、电子设备及存储介质 | |
CN110020429A (zh) | 语义识别方法及设备 | |
CN110738048B (zh) | 一种关键词提取方法、装置及终端设备 | |
CN113268973B (zh) | 一种人机多轮对话方法及装置 | |
CN115858776B (zh) | 一种变体文本分类识别方法、系统、存储介质和电子设备 | |
CN112151021A (zh) | 语言模型的训练方法、语音识别方法、装置及电子设备 | |
CN116246629A (zh) | 人机对话方法、装置及电子设备 | |
CN114266240A (zh) | 一种基于机器人的多意图识别方法及装置 | |
CN110188330B (zh) | 确定相似文本信息的方法、装置、电子设备及存储介质 | |
CN111209752A (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 |