CN112035643B - 一种对话机器人能力复用的方法和装置 - Google Patents
一种对话机器人能力复用的方法和装置 Download PDFInfo
- Publication number
- CN112035643B CN112035643B CN202010901813.3A CN202010901813A CN112035643B CN 112035643 B CN112035643 B CN 112035643B CN 202010901813 A CN202010901813 A CN 202010901813A CN 112035643 B CN112035643 B CN 112035643B
- Authority
- CN
- China
- Prior art keywords
- target
- component
- components
- text
- target 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 81
- 238000012545 processing Methods 0.000 claims abstract description 147
- 230000008569 process Effects 0.000 claims abstract description 44
- 238000012216 screening Methods 0.000 claims abstract description 32
- 238000013145 classification model Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 abstract description 3
- 230000000694 effects Effects 0.000 abstract description 2
- 238000012549 training Methods 0.000 description 18
- 238000013507 mapping Methods 0.000 description 14
- 230000008901 benefit Effects 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000009467 reduction Effects 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/35—Clustering; Classification
- G06F16/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- 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/045—Combinations of networks
Abstract
本发明公开了一种对话机器人能力复用的方法,包括如下步骤接收目标文本;从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;判断所述目标集合中是否包含标记组件;其中,预先给所有组件设定状态量,将状态量为对话流程未结束的组件进行标记,作为所述标记组件;当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理。把机器人的构建变为组件化,达到了灵活复用能力组件的效果,解决了现有技术中用户体等待对话回应时间长,体验差的问题。
Description
技术领域
本发明涉及语音处理技术领域,特别涉及一种对话机器人能力复用的方法和装置。
背景技术
目前,对话机器人的在人工智能领域扮演越来越重要的角色,其应用的场景也越来越广泛,尤其是应用在保险业务线时,对话机器人可以在智能服务、智能助手等领域大放异彩,极大的降低企业的人力成本,同时提高和用户对接的效率,尤其对于业务线较多的公司,会配备一定数量的知识问答机器人和任务型机器人,不同业务线的机器人需要共享和复用的场景越来越频繁,在有限的资源上构建一个高效合理的可复用机器人架构变得十分重要。
但是,传统的机器人复用方式大致分为以下两种:第一种方式是采用知识库融合的方式进行知识的复用,即将需要共享、复用的知识进行合并,进而通过统一训练来保证机器人在不同领域和不同业务线的知识共用且不产生误答,但是该方式只适合简单的知识型问答,对于知识问答和任务型问答并存的场景,或者仅发生任务型问答的场景,第一种方式则无法应对;第二种方式是采用串行调用的方式构建机器人系统,该方式主要对机器人能力组件的优先级进行排序,高优先级能力组件的调用排在低优先级能力组件之前,当高优先级能力组件无法回复问答时,再调用低优先级能力组件,该种方式再机器人的能力组件数量较大时,会存在严重的性能问题,例如把十个能力组件组合成一个机器人,而每个能力组件的回复在1秒内,则当调用第十个能力组件返回结果时,使用者需要等待接近10秒的时间,极大的降低了使用者的体验度。
因此,如何构建一个能够兼顾知识型问答和任务型问答,同时响应时间较短的可复用机器人架构,是本领域技术人员亟待解决的问题。
发明内容
本发明的目的在于提供一种对话机器人能力复用的方法和装置,接收用户发送的目标文本后,首选筛选出能够处理当前文本的能力组件,生成目标组件集合,在生成的目标组件集合中进一步筛选出具有“对话流程未结束”标识的能力组件作为最终处理组件处理当前目标文本,若所述目标组件集合中没有被标识的能力组件,则在目标组件集合中按照处理速度优先级筛选出优先级等级最高的能力组件作为最终处理组件对当前目标文本进行处理,以期减少能力组件的调用次数,进而缩短对话机器人响应目标文本的时间,提升用户体验。
根据本发明的一个方面,提供了一种对话机器人能力复用的方法,其特征在于,包括如下步骤:
接收目标文本;
从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;
判断所述目标集合中是否包含标记组件;其中,预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件;
当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理。
优选的,所述接收目标文本包括:接收输入的用户语音,并将所述用户语音转化为所述目标文本,或直接接收输入的目标文本;满足用户各种形式的输入对话的形式。
具体的,所述从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合的具体步骤如下:
获取预先训练的分类模型,其中,所述分类模型可以根据输入的所述目标文本,输出能够处理所述目标文本的目标组件;
将所述目标文本输入至所述分类模型,由所述分类模型输出能够处理所述目标文本的全部所述目标组件,获取所述目标组件集合;由于训练完成的所述分类模型能够将每种类型的文本集与能够处理该类型文本集的能力组件之间的映射关系进行快速的识别,因此利用所述分类模型,可以快速准确地在全部能力组件中筛选出能够处理所述目标文本的能力组件,避免了现有技术中按照串行调用方式对各个能力组件进行逐一调用的缺陷,缩短了使用者在进行语音对话过程中的等待时间。
优选的,所述预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件包括:所述对话机器人的所有组件均预先设置有对话接口,用于提供对话结果,所述对话结果包括:问题回答状态、当前流程状态;将所述对话机器人的所有组件中当前流程状态显示为对话流程未结束的组件进行标记;依据组件当前流程状态进行标记,便于重复调用组件时,能够快速筛选出可重复利用的对话流程未结束的组件,调用标记组件可以最大限度的对所述目标文本进行处理通过对标记组件的重复利用,减少了新组件的调用,降低了对机器的运算消耗,也保证了每轮对话的连续性。
具体的,所述当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理,包括如下具体步骤:确定所述目标组件集合中每个所述目标组件的优先级;筛选出所述目标组件集合中优先级最高的目标组件,确定为最终处理组件,对所述目标文本进行处理。
优选的,所述确定所述目标组件集合中每个所述目标组件的优先级中,将所述目标组件集合中每个所述目标组件处理相同文本的速度作为确定优先级的条件,进行优先级的配置,所述目标组件处理所述相同文本的速度与优先级的等级成正比,通过优先级的等级在所述目标组件集合中筛选最终处理组件,最大可能的保证了处理所述目标文本的效率。
为了实现上述目的,本发明还提供一种对话机器人能力复用的装置,其特征在于,包括:
接收模块,用于接收目标文本;
筛选模块,用于从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;
标记组件判断模块,用于判断所述目标集合中是否包含标记组件;其中,预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件;
最终处理组件确定模块,用于当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理。
优选的,所述接收模块接收目标文本包括:接收输入的用户语音,并将所述用户语音转化为所述目标文本,或直接接收输入的目标文本;满足用户各种形式的输入对话的形式。
具体的,所述筛选模块包括:
分类模型获取单元,用于获取预先训练的分类模型,其中,所述分类模型可以根据输入的所述目标文本,输出能够处理所述目标文本的目标组件;
目标组件集合获取单元,用于将所述目标文本输入至所述分类模型,由所述分类模型输出能够处理所述目标文本的全部所述目标组件,获取所述目标组件集合;由于训练完成的所述分类模型能够将每种类型的文本集与能够处理该类型文本集的能力组件之间的映射关系进行快速的识别,因此利用所述分类模型,可以快速准确地在全部能力组件中筛选出能够处理所述目标文本的能力组件,避免了现有技术中按照串行调用方式对各个能力组件进行逐一调用的缺陷,缩短了使用者在进行语音对话过程中的等待时间。
优选的,所述标记组件判断模块包括:所述预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件包括:所述对话机器人的所有组件均预先设置有对话接口,用于提供对话结果,所述对话结果包括:问题回答状态、当前流程状态;将所述对话机器人的所有组件中当前流程状态显示为对话流程未结束的组件进行标记;依据组件当前流程状态进行标记,便于重复调用组件时,能够快速筛选出可重复利用的对话流程未结束的组件,调用标记组件可以最大限度的对所述目标文本进行处理通过对标记组件的重复利用,减少了新组件的调用,降低了对机器的运算消耗,也保证了每轮对话的连续性。
优选的,所述最终处理组件确定模块的在目标组件集合中确定最终处理组件的工作流程为:
确定所述目标组件集合中每个所述目标组件的优先级;
筛选出所述目标组件集合中优先级最高的目标组件,确定为最终处理组件,对所述目标文本进行处理。
具体的,所述确定所述目标组件集合中每个所述目标组件的优先级中,将所述目标组件集合中每个所述目标组件处理相同文本的速度作为确定优先级的条件,进行优先级的配置,所述目标组件处理所述相同文本的速度与优先级的等级成正比;通过优先级的等级在所述目标组件集合中筛选最终处理组件,最大限度的保证了处理所述目标文本的效率。
为了实现上述目的,本发明还提供一种计算机设备,该计算机设备具体包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述介绍的一种对话机器人能力复用的方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述介绍的一种对话机器人能力复用的方法的步骤。
本发明提供的一种对话机器人能力复用的方法和装置,把机器人的构建变为组件化,达到了灵活复用能力组件的效果。解决了现有技术中用户体等待对话回应时间长,体验差的问题;具体的,每次对话,只需要调用两次能力组件即可完成,如果每次调用的耗时最长为1秒,则所有的用户调用,在2秒内都可返回,极大地提高了用户体验;同时,整个调用次数的减少,意味着对机器的运算需求也减少了,故对机器的运算消耗会较少。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为实施例一提供的一种对话机器人能力复用的方法流程图;
图2为实施例二提供的一种对话机器人能力复用的装置示意图;
图3为实施例三提供的计算机设备的一种可选的硬件架构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例提供了一种对话机器人能力复用的方法,可以应用于对话机器人,如图1所示,该方法具体包括以下步骤:
步骤S1:接收目标文本;
具体的,用户可以依据自身情况选择直接输入目标文本,或者输入语音,进而与本发明的对话机器人进行信息交互,若用户直接输入目标文本,则对话机器人直接获取该目标文本,若用户选择输入语音,那么,对话机器人需要将接收的语音转化为目标文本,供后续步骤使用;例如,用户发送的语音为“查询2020年3月5号的消费记录”,则对话机器人先接收该语音,并识别语音内容,将其转化为文本信息,并将该文本信息作为目标文本。
步骤S2:从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;
具体的,当对话机器人获取目标文本后,需要由能够处理该目标文本类型的组件对该目标文本进行处理,即通过对该目标文本进行识别、对目标文本信息的完整度进行判断、以及根据该目标文本的识别结果匹配对应的答复内容实现处理目标文本的目的。
为了进一步优化上述技术特征,本实施例采用卷积神经网络算法在全部组件中筛选出能够处理该目标文本的组件,具体的,
本发明的对话机器人中设置有若干能力组件,每个组件能够处理多种不同的文本,比如,标准问和相似问等,另外,每个组件均设置有文本输出接口,用于提供该组件能够处理的文本,因此,将文本输出接口提供的每个组件能够处理的文本进行整合,获得每个组件对应处理的文本集,例如,组件a对应处理a文本集,组件b对应处理b文本集,组件c对应处理c文本集,组件d对应处理d文本集,组件e对应处理e文本集,进一步的,建立每个组件与其对应的文本集之间的映射关系,并将所有组件与其对应的文本集之间的映射关系构建成一个训练集,用于训练预设模型,其中,每个映射关系中,以文本集为输入,以该文本集对应的组件为输出;训练预设模型的步骤如下:在预设分类模型中输入训练集中的任意一个文本集,通过预设模型的输入层,将该文本集传输至该预设模型的中间层,由中间层各神经元对该文本集进行识别,并匹配对应的符合其映射关系的具体组件,由输出层输出结果,并比对输出结果与训练集中的预期输出组件是否吻合,若不吻合,则将误差反馈给该预设模型,并根据该误差对该预设模型的各层权重进行重新调整,直至输出结果符合预期输出结果,则对预设模型训练完成,获得一个可以根据训练集的映射关系准确输出能够处理任一目标文本的组件的训练模型。
进一步的,利用上述分类模型筛选出能够处理S1中获取的目标文本的组件,将上述目标文本输入至分类模型中,由分类模型的输入层获取该目标文本,并传输给中间层根据映射关系匹配相应的组件,并将匹配获得的组件传输给输出层,由输出层输出能够处理该目标文本的组件,其中,每个目标组件对应处理的文本集之间存在相似度较高的文本,因此,每个目标组件在处理相似度高的文本时,其处理能力存在交集,由于所有组件中具有处理能力存在交集的组件,因此若该目标文本与某些组件有映射关系的文本集存在相似度高的情况,则分类模型会输出不限于一个的组件,因此,将若干目标组件组合构成一个目标组件集合,该目标组件集合中的任一目标组件均满足具备处理该目标文本的能力。
当然,构建分类模型使用的预设算法不限于卷积神经网络算法,也可以使用BERT等算法进行分类模型的构建。
步骤S3:判断所述目标集合中是否包含标记组件;其中,预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件;
为了进一步优化上述技术特征,每个能力组件还预先设置一个对话接口,用于提供对话结果,对话结果包括以下两项信息:是否已经回答问题、是否未结束流程;针对对话结果中是否未结束流程的信息,包括对话流程结束状态和对话流程未结束状态,若对话结果显示某组件处于对话流程未结束状态,意味着该组件未结束上一轮的对话,则将其进行标记,由于在步骤S2中,已经将所有组件中能够处理当前目标文本的组件筛选出来,并生成目标组件集合,所以,若目标组件集合中包含该组件,则优先调用该组件,避免了新组件的调用也保证了对话的连续性。
步骤S4:当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理。
具体的,当目标组件集合中包含标记组件时,则使用标记组件作为最终处理组件对当前目标文本进行处理,例如,令筛选出的目标组件集合为C,标记组件的编号记为t,若存在标记组件t,且标记组件t属于目标组件集合C,则调用编号为t的组件作为最终处理组件处理当前目标文本;处理的步骤包括:识别当前目标文本的文字,判断当前目标文本的完整度,若完整,则匹配对应的答复内容,例如,用户输入的目标文本为“查询2020年3月5号的消费记录”,最终处理组件将识别目标文本中的上述文字,并为用户查阅对应的消费记录详情,进而将消费记录详情反馈给用户;若不完整,例如用户输入的目标文本为“查询消费记录”,那么最终处理组件将识别目标文本中的上述文字,并询问用户需要查询的消费记录的具体时间点,用户根据最终处理组件反馈的补充问题,输入补充目标文本“时间点为2020年3月5号”,最终处理组件识别补充目标文本,并结合原目标文本进行消费记录详情的查询,并将查询结果反馈给用户,进而完成当前对话流程,并由最终处理组件对该用户的上一轮对话流程进行连续处理;若目标组件集合中不包含标记组件,则在目标组件集合中筛选出最优的组件作为最终处理组件。
为了进一步优化上述技术特征,当在目标组件集合中筛选最终处理组件时,若当前目标文本与某些组件对应的文本集的相似度较高,目标组件集合中会存在包含两个以上的目标组件的情况,此时,按照处理相同或相似文本的速度,对上述文本集对应的组件进行优先级排列,优先级等级高的作为最终处理组件,对当前目标文本进行处理。例如,当前目标文本与文本集a、文本集c、文本集d的相似度高,则组件a、组件c、组件d均被筛选为目标组件,存在于目标组件集合中,那么,根据处理相同或相似的文本类型的速度,对组件a、组件c、组件d进行优先级排序,若组件a处理相同或相似的文本类型的速度大于组件c,且组件c处理相同或相似的文本类型的速度大于组件d,则按照优先级将上述组件进行排序,组件a的优先级高于组件c和组件d,组件c的优先级高于组件d;此时,在目标组件集合中调用目标组件a作为最终处理组件,对当前目标文本进行处理,处理的步骤包括:由最终处理组件识别当前目标文本的文字,判断当前目标文本的完整度,若完整,则匹配对应的答复内容,例如,用户输入的目标文本为“查询2020年3月5号的消费记录”,最终处理组件将识别目标文本中的上述文字,并为用户查阅对应的消费记录详情,进而将消费记录详情反馈给用户;若不完整,例如用户输入的目标文本为“查询消费记录”,那么最终处理组件将识别目标文本中的上述文字,并询问用户需要查询的消费记录的具体时间点,用户根据最终处理组件反馈的补充问题,输入补充目标文本“时间点为2020年3月5号”,最终处理组件识别补充目标文本,并结合原目标文本进行消费记录详情的查询,并将查询结果反馈给用户,进而,结束当前对话流程。
实施例二
为了实现上述方法,本实施例提供了对应的装置,如图2所示,
一种对话机器人能力复用的装置,包括:接收模块201,筛选模块202,标记组件判断模块203,最终处理组件确定模块204;其中,
接收模块201,用于接收目标文本;具体的,用户可以依据自身情况选择直接输入目标文本,或者输入语音,进而与本发明的对话机器人进行信息交互,若用户直接输入目标文本,则接收模块201直接获取该目标文本,若用户选择输入语音,那么,接收模块201需要将接收的语音转化为目标文本,供后续步骤使用;例如,用户发送的语音为“查询2020年3月5号的消费记录”,则接收模块201先接收该语音,并识别语音内容,将其转化为文本信息,并将该文本信息作为目标文本。
筛选模块202,用于从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;
具体的,当接收模块201获取目标文本后,需要由能够处理该目标文本类型的组件对该目标文本进行处理,即通过对该目标文本进行识别、对目标文本信息的完整度进行判断、以及根据该目标文本的识别结果匹配对应的答复内容实现处理目标文本的目的。
为了进一步优化上述技术特征,本实施例筛选模块202采用卷积神经网络算法在全部组件中筛选出能够处理该目标文本的组件,具体的,
本发明的对话机器人中设置有若干能力组件,每个组件能够处理多种不同的文本,比如,标准问和相似问等,另外,每个组件均设置有文本输出接口,用于提供该组件能够处理的文本,因此,将文本输出接口提供的每个组件能够处理的文本进行整合,获得每个组件对应处理的文本集,例如,组件a对应处理a文本集,组件b对应处理b文本集,组件c对应处理c文本集,组件d对应处理d文本集,组件e对应处理e文本集,进一步的,由筛选模块202建立每个组件与其对应的文本集之间的映射关系,并将所有组件与其对应的文本集之间的映射关系构建成一个训练集,用于训练预设模型,其中,每个映射关系中,以文本集为输入,以该文本集对应的组件为输出;训练预设模型的步骤如下:在预设分类模型中输入训练集中的任意一个文本集,通过预设模型的输入层,将该文本集传输至该预设模型的中间层,由中间层各神经元对该文本集进行识别,并匹配对应的符合其映射关系的具体组件,由输出层输出结果,并比对输出结果与训练集中的预期输出组件是否吻合,若不吻合,则将误差反馈给该预设模型,并根据该误差对该预设模型的各层权重进行重新调整,直至输出结果符合预期输出结果,则对预设模型训练完成,获得一个可以根据训练集的映射关系准确输出能够处理任一目标文本的组件的训练模型。
进一步的,利用筛选模块202训练获得的分类模型筛选出能够处理S1中获取的目标文本的组件,将上述目标文本输入至分类模型中,由分类模型的输入层获取该目标文本,并传输给中间层根据映射关系匹配相应的组件,并将匹配获得的组件传输给输出层,由输出层输出能够处理该目标文本的组件,其中,每个目标组件对应处理的文本集之间存在相似度较高的文本,因此,每个目标组件在处理相似度高的文本时,其处理能力存在交集,由于所有组件中具有处理能力存在交集的组件,因此若该目标文本与某些组件有映射关系的文本集存在相似度高的情况,则分类模型会输出不限于一个的组件,因此,将若干目标组件组合构成一个目标组件集合,该目标组件集合中的任一目标组件均满足具备处理该目标文本的能力。
当然,筛选模块202构建分类模型使用的预设算法不限于卷积神经网络算法,也可以使用BERT等算法进行分类模型的构建。
标记组件判断模块203,用于判断所述目标集合中是否包含标记组件;其中,预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件;
为了进一步优化上述技术特征,每个能力组件还预先设置一个对话接口,用于提供对话结果,对话结果包括以下两项信息:是否已经回答问题、是否未结束流程;针对对话结果中是否未结束流程的信息,包括对话流程结束状态和对话流程未结束状态,若对话结果显示某组件处于对话流程未结束状态,意味着该组件未结束上一轮的对话,则将其进行标记,由于筛选模块202,已经将所有组件中能够处理当前目标文本的组件筛选出来,并生成目标组件集合,所以,若目标组件集合中包含该组件,则优先调用该组件,避免了新组件的调用也保证了对话的连续性。
最终处理组件确定模块204,用于当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理。
为了进一步优化上述技术特征,当目标组件集合中包含标记组件时,则最终处理组件确定模块204调用标记组件作为最终处理组件对当前目标文本进行处理,例如,令筛选出的目标组件集合为C,标记组件的编号记为t,若存在标记组件t,且标记组件t属于目标组件集合C,则调用编号为t的组件作为最终处理组件处理当前目标文本;处理的步骤包括:识别当前目标文本的文字,判断当前目标文本的完整度,若完整,则匹配对应的答复内容,例如,用户输入的目标文本为“查询2020年3月5号的消费记录”,最终处理组件将识别目标文本中的上述文字,并为用户查阅对应的消费记录详情,进而将消费记录详情反馈给用户;若不完整,例如用户输入的目标文本为“查询消费记录”,那么最终处理组件将识别目标文本中的上述文字,并询问用户需要查询的消费记录的具体时间点,用户根据最终处理组件反馈的补充问题,输入补充目标文本“时间点为2020年3月5号”,最终处理组件识别补充目标文本,并结合原目标文本进行消费记录详情的查询,并将查询结果反馈给用户,进而完成当前对话流程,并由最终处理组件对该用户的上一轮对话流程进行连续处理;若目标组件集合中不包含标记组件,最终处理组件确定模块204则在目标组件集合中筛选出最优的组件作为最终处理组件。
为了进一步优化上述技术特征,当在目标组件集合中筛选最终处理组件时,若当前目标文本与某些组件对应的文本集的相似度较高,目标组件集合中会存在包含两个以上的目标组件的情况,此时,按照处理相同或相似文本的速度,对上述文本集对应的组件进行优先级排列,优先级等级高的作为最终处理组件,对当前目标文本进行处理。例如,当前目标文本与文本集a、文本集c、文本集d的相似度高,则组件a、组件c、组件d均被筛选为目标组件,存在于目标组件集合中,那么,根据处理相同或相似的文本类型的速度,对组件a、组件c、组件d进行优先级排序,若组件a处理相同或相似的文本类型的速度大于组件c,且组件c处理相同或相似的文本类型的速度大于组件d,则按照优先级将上述组件进行排序,组件a的优先级高于组件c和组件d,组件c的优先级高于组件d;此时,在目标组件集合中调用目标组件a作为最终处理组件,对当前目标文本进行处理,处理的步骤包括:由最终处理组件识别当前目标文本的文字,判断当前目标文本的完整度,若完整,则匹配对应的答复内容,例如,用户输入的目标文本为“查询2020年3月5号的消费记录”,最终处理组件将识别目标文本中的上述文字,并为用户查阅对应的消费记录详情,进而将消费记录详情反馈给用户;若不完整,例如用户输入的目标文本为“查询消费记录”,那么最终处理组件将识别目标文本中的上述文字,并询问用户需要查询的消费记录的具体时间点,用户根据最终处理组件反馈的补充问题,输入补充目标文本“时间点为2020年3月5号”,最终处理组件识别补充目标文本,并结合原目标文本进行消费记录详情的查询,并将查询结果反馈给用户,进而,结束当前对话流程。
实施例三
本实施例还提供一种计算机设备300,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图3所示,本实施例的计算机设备300至少包括但不限于:可通过系统总线相互通信连接的存储器301、处理器302。需要指出的是,图3仅示出了具有组件的计算机设备300,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器301(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器301可以是计算机设备300的内部存储单元,例如该计算机设备300的硬盘或内存。在另一些实施例中,存储器301也可以是计算机设备300的外部存储设备,例如该计算机设备300上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器301还可以既包括计算机设备300的内部存储单元也包括其外部存储设备。在本实施例中,存储器301通常用于存储安装于计算机设备300的操作系统和各类应用软件。此外,存储器301还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器302在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器302通常用于控制计算机设备300的总体操作。
具体的,在本实施例中,处理器302用于执行处理器302中存储的程序,所述程序被执行时实现如下步骤:
接收目标文本;
从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;
判断所述目标集合中是否包含标记组件;其中,预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件;
当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法步骤:
接收目标文本;
从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;
判断所述目标集合中是否包含标记组件;其中,预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件;
当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (6)
1.一种对话机器人能力复用的方法,其特征在于,包括如下步骤:
接收目标文本;
从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;
判断所述目标组件集合中是否包含标记组件;其中,预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件;
当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理;
其中,所述从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合的具体步骤如下:获取预先训练的分类模型,其中,所述分类模型可以根据输入的所述目标文本,输出能够处理所述目标文本的目标组件;将所述目标文本输入至所述分类模型,由所述分类模型输出能够处理所述目标文本的全部所述目标组件,获取所述目标组件集合;
所述预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件包括:所述对话机器人的所有组件均预先设置有对话接口,用于提供对话结果,所述对话结果包括:问题回答状态、当前流程状态;将所述对话机器人的所有组件中当前流程状态显示为对话流程未结束的组件进行标记;
所述当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理,包括如下具体步骤:确定所述目标组件集合中每个所述目标组件的优先级;筛选出所述目标组件集合中优先级最高的目标组件,确定为最终处理组件,对所述目标文本进行处理;
所述确定所述目标组件集合中每个所述目标组件的优先级中,将所述目标组件集合中每个所述目标组件处理相同文本的速度作为确定优先级的条件,进行优先级的配置,所述目标组件处理所述相同文本的速度与优先级的等级成正比。
2.根据权利要求1所述的方法,其特征在于,所述接收目标文本包括:接收输入的用户语音,并将所述用户语音转化为所述目标文本,或直接接收输入的目标文本。
3.一种用于实现权利要求1至2任一项所述方法的对话机器人能力复用的装置,其特征在于,包括:
接收模块,用于接收目标文本;
筛选模块,用于从对话机器人的所有组件中筛选出用于处理所述目标文本的目标组件集合;
标记组件判断模块,用于判断所述目标组件集合中是否包含标记组件;其中,预先给所有组件设定状态量,将所述状态量为对话流程未结束的组件进行标记,作为所述标记组件;
最终处理组件确定模块,用于当所述目标组件集合中包含所述标记组件时,调用所述标记组件作为最终处理组件处理所述目标文本,当所述目标组件集合中不包含所述标记组件时,在所述目标组件集合中筛选出处理所述目标文本的目标组件作为最终处理组件,对所述目标文本进行处理。
4.根据权利要求3所述的装置,其特征在于,所述接收目标文本包括以下情况之一:接收输入的用户语音,并将所述用户语音转化为所述目标文本;直接接收输入的目标文本。
5.一种计算机设备,所述计算机设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至2任一项所述方法的步骤。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至2任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010901813.3A CN112035643B (zh) | 2020-09-01 | 2020-09-01 | 一种对话机器人能力复用的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010901813.3A CN112035643B (zh) | 2020-09-01 | 2020-09-01 | 一种对话机器人能力复用的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112035643A CN112035643A (zh) | 2020-12-04 |
CN112035643B true CN112035643B (zh) | 2023-10-24 |
Family
ID=73587300
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010901813.3A Active CN112035643B (zh) | 2020-09-01 | 2020-09-01 | 一种对话机器人能力复用的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112035643B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108319599A (zh) * | 2017-01-17 | 2018-07-24 | 华为技术有限公司 | 一种人机对话的方法和装置 |
CN110162610A (zh) * | 2019-04-16 | 2019-08-23 | 平安科技(深圳)有限公司 | 机器人智能应答方法、装置、计算机设备及存储介质 |
CN111309889A (zh) * | 2020-02-27 | 2020-06-19 | 支付宝(杭州)信息技术有限公司 | 用于文本处理的方法和装置 |
CN111552787A (zh) * | 2020-04-23 | 2020-08-18 | 支付宝(杭州)信息技术有限公司 | 问答处理方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190295526A1 (en) * | 2018-03-26 | 2019-09-26 | Casio Computer Co., Ltd. | Dialogue control device, dialogue system, dialogue control method, and recording medium |
-
2020
- 2020-09-01 CN CN202010901813.3A patent/CN112035643B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108319599A (zh) * | 2017-01-17 | 2018-07-24 | 华为技术有限公司 | 一种人机对话的方法和装置 |
CN110162610A (zh) * | 2019-04-16 | 2019-08-23 | 平安科技(深圳)有限公司 | 机器人智能应答方法、装置、计算机设备及存储介质 |
CN111309889A (zh) * | 2020-02-27 | 2020-06-19 | 支付宝(杭州)信息技术有限公司 | 用于文本处理的方法和装置 |
CN111552787A (zh) * | 2020-04-23 | 2020-08-18 | 支付宝(杭州)信息技术有限公司 | 问答处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112035643A (zh) | 2020-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106503236A (zh) | 基于人工智能的问题分类方法以及装置 | |
CN110781180B (zh) | 一种数据筛选方法和数据筛选装置 | |
CN110162387A (zh) | 线程调度方法、装置、计算机设备及计算机可读存储介质 | |
CN110633959A (zh) | 基于图结构的审批任务创建方法、装置、设备及介质 | |
CN114416049B (zh) | 结合rpa和ai的服务接口的配置方法及装置 | |
CN102402455A (zh) | 调用动态链接库的方法和装置 | |
CN112487163B (zh) | 自动化流程的执行方法及其接口数据的获取方法、装置 | |
CN112035643B (zh) | 一种对话机器人能力复用的方法和装置 | |
CN110750295B (zh) | 一种信息处理方法,装置,电子设备和存储介质 | |
CN110532448B (zh) | 基于神经网络的文档分类方法、装置、设备及存储介质 | |
CN113868396A (zh) | 基于知识图谱的任务类智能对话构建方法及系统 | |
CN113836287A (zh) | 问答结果的确定方法、装置、计算机设备及存储介质 | |
CN112948251A (zh) | 软件自动测试方法及装置 | |
CN111400058A (zh) | 调用消息的方法、装置、计算机设备及存储介质 | |
CN110880099A (zh) | 基于工作流引擎的任务事件处理方法、装置、设备和介质 | |
CN110888971A (zh) | 机器人客服与用户的多轮交互方法和装置 | |
CN110618881A (zh) | 一种模拟消息队列的方法及系统 | |
CN109799763A (zh) | 一种针对于ecu的数据处理方法、装置及系统 | |
CN112579865B (zh) | 一种搜索关键词的调价方法、装置、存储介质及电子设备 | |
CN115543662B (zh) | 一种kafka消息数据的下发方法及相关装置 | |
CN109412931A (zh) | 利用即时通讯方式进行知识问答的方法、装置和终端设备 | |
CN115297078B (zh) | 咨询响应方法、装置、计算机设备和存储介质 | |
US11983745B2 (en) | Systems and methods for valuation of a vehicle | |
CN109840274B (zh) | 数据处理方法及装置、存储介质 | |
WO2023226204A1 (zh) | 基于rpa和ai实现ia的交通票据购买方法、装置和系统 |
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 |