CN116150306A - 问答机器人的训练方法、问答方法及装置 - Google Patents
问答机器人的训练方法、问答方法及装置 Download PDFInfo
- Publication number
- CN116150306A CN116150306A CN202210768212.9A CN202210768212A CN116150306A CN 116150306 A CN116150306 A CN 116150306A CN 202210768212 A CN202210768212 A CN 202210768212A CN 116150306 A CN116150306 A CN 116150306A
- Authority
- CN
- China
- Prior art keywords
- question
- training
- standard
- corpus
- answering robot
- 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
- 238000012549 training Methods 0.000 title claims abstract description 274
- 238000000034 method Methods 0.000 title claims abstract description 99
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 74
- 230000015654 memory Effects 0.000 claims description 30
- 230000006870 function Effects 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 12
- 239000013598 vector Substances 0.000 description 21
- 230000008569 process Effects 0.000 description 18
- 238000000605 extraction Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000003062 neural network model Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 201000010099 disease Diseases 0.000 description 2
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000007787 long-term memory Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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
-
- 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
- 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
-
- 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
-
- 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)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种问答机器人的训练方法及装置,用于在提高了训练得到的问答机器人运行效率的同时,又提高问答机器人的回答准确率。方法包括:获取原始问答机器人,并对原始问答机器人进行初始化处理;根据训练指令,从历史对话数据中获取语料数据;获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,在原始问答机器人预先配置的至少两套算法模型中,确定对应的训练算法模型;将训练数据集输入所述原始问答机器人中,输出预测答案;根据所述预测答案和所述标准答案,构建目标损失函数;基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种问答机器人的训练方法、问答方法及装置。
背景技术
随着互联网的发展,各类应用以及网站常常面临着巨大的用户咨询压力,传统人工客服存在响应慢、服务时间有限、流动性大等局限性。大部分客服问题其实是高频重复问题,这些问题往往都有标准的答案,可以利用机器去解决,通过构建一套智能问答机器人去自动匹配用户的提问,当用户对答案不满意时,可以再寻求人工客服的帮助,这不仅提升了用户体验也提高了客服人员的工作效率。
由此可见,在相关技术中智能问答机器人能否准确回答用户提出的问题,主要取决于:能否准确地在知识库中查找到与用户提出问题最为匹配的预设问题。
而在使用中,不同用户针对同一问题的提问方式可能是多种多样的,例如,针对“天气怎么样”这一问题,可以有以下几种提问方式:“今天下雨吗”、“今天需要带伞吗”、“今天气温多少度”、“今天穿什么衣服合适”等等,这些问题均可以视为同一问题,在知识库中这些问题其对应的答案应该都是相同的,为了保证各类提问方式均可以在知识库中查找到匹配的预设问题,这就需要知识库尽可能地存储各种问题对应的全部提问方式,从而将会导致知识库中存储的数据量暴涨,数据量地暴涨则将导致通过知识库进行问题匹配的速度降低;而如果知识库缺少海量提问方式数据的支撑,则会导致无法准确地在知识库中查找到匹配的预设问题,进而导致智能问答机器人无法给出正确的答案。
由此可见,如何保证智能问答机器人回答准确率的同时,又可以提高智能问答机器人的运行效率,成为相关技术亟待解决的问题。
发明内容
本申请实施例提供一种问答机器人的训练方法及装置,用于在提高了训练得到的问答机器人运行效率的同时,又提高问答机器人的回答准确率。
第一方面,本申请提供一种问答机器人的训练方法,包括:
根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理,其中,所述训练指令中携带有原始问答机器人对应的业务标识,所述原始问答机器人预先配置有至少两套算法模型;
根据所述训练指令,从历史对话数据中获取与所述业务标识对应的语料数据,其中,所述语料数据包括用户问题以及与所述用户问题对应的答案;
获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,其中,所述标准语料包括所述业务标识对应的标准问题以及标准答案;
在所述原始问答机器人预先配置的至少两套算法模型中,确定与所述训练数据集对应的训练算法模型;
将所述训练数据集输入所述原始问答机器人中,以使得所述原始问答机器人确定所述训练数据集中各训练数据的提问意图,针对各所述提问意图,根据所述训练算法模型进行答案搜索,输出预测答案;
根据所述预测答案和所述标准答案,构建目标损失函数;
基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
第二方面,本申请提供一种基于问答机器人的问答方法,,包括:
获取用户通过终端设备输入的待回答问题;
将所述待回答问题输入预先训练好的问答机器人,通过所述问答机器人对所述待回答问题进行语义识别,确定所述待回答问题对应的问题意图以及提问关键词;
根据所述问题意图以及所述提问关键词进行答案搜索,以获得所述待回答问题对应的应答信息,并向所述用户反馈所述应答信息。
第三方面,本申请提供一种问答机器人的训练装置,包括:
原始机器人初始化模块,用于根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理,其中,所述训练指令中携带有原始问答机器人对应的业务标识,所述原始问答机器人预先配置有至少两套算法模型;
语料获取模块,用于根据所述训练指令,从历史对话数据中获取与所述业务标识对应的语料数据,其中,所述语料数据包括用户问题以及与所述用户问题对应的答案;
训练数据集生成模块,用于获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,其中,所述标准语料包括所述业务标识对应的标准问题以及标准答案;
算法模型确定模块,用于在所述原始问答机器人预先配置的至少两套算法模型中,确定与所述训练数据集对应的训练算法模型;
训练模块,用于将所述训练数据集输入所述原始问答机器人中,以使得所述原始问答机器人确定所述训练数据集中各训练数据的提问意图,针对各所述提问意图,根据所述训练算法模型进行答案搜索,输出预测答案;根据所述预测答案和所述标准答案,构建目标损失函数;基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
第四方面,本申请提供一种基于问答机器人的问答装置,包括:
问题接收单元,用于获取用户通过终端设备输入的待回答问题;
意图识别单元,用于将所述待回答问题输入预先训练好的问答机器人,通过所述问答机器人对所述待回答问题进行语义识别,确定所述待回答问题对应的问题意图以及提问关键词;
反馈单元,用于根据所述问题意图以及所述提问关键词进行答案搜索,以获得所述待回答问题对应的应答信息,并向所述用户反馈所述应答信息。
第五方面,本申请提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面所述的方法。
第六方面,本申请提供一种计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面所述的方法。
可以看出,在本申请实施例中,在进行问答机器人训练时,训练样本数据集是根据从历史对话中提取到的语料数据与预先设置的标准语料共同构成的,由于从历史对话中提取到语料数据是由海量用户真实提问过的问题组成,相比于标准语料中的预先设置的标准问题,从历史对话中提取的语料数据包含有针对同一问题的不同提问方式(比如相似提问、模糊提问等),以使得采用该训练数据集训练得到的问答机器人的知识库中存储有针对同一问题的不同提问方式,而由于在实际使用中,用户一般不会按照预先设置好的标准问题格式进行提问,因而采用本申请实施例所提供的训练方法训练得到的问答机器人在面对真实用户的提问时,可以更快地从知识库中找到与用户当前问题相匹配的提问方式,进而可以更加高效准确地为用户反馈答案;另外在此基础上,本申请所提供的原始问答机器人中均预设了两种以上的训练算法模型,在进行模型训练过程中,可以从中选择出与训练数据集最为适配的训练算法模型,作为后续训练过程中所使用的算法模型,由于该训练算法模型是针对当前训练数据以及训练场景作为适配的算法模型,因而可以提高该问答机器人的训练效率以及训练效果。由此可见,采用本申请实施例所提供的训练方法,一方面可以更加高效地训练得到问答机器人,另外一方面,利用本申请提供的训练数据集训练完成地问答机器人,可以广泛地覆盖各类提问方式,以使得该问答机器人可以更加高效准确地为用户反馈答案。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书的一个实施例提供的一种问答机器人的训练方法的流程示意图;
图2为本说明书的一个实施例提供的一种问答机器人的训练方法的流程示意图;
图3为本说明书的一个实施例提供的一种基于问答机器人的问答方法的流程示意图;
图4为本说明书的一个实施例提供的一种问答机器人的训练装置的结构示意图;
图5为本说明书的一个实施例提供的一种基于问答机器人的问答装置的结构示意图;
图6为本说明书的一个实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应理解这样使用的数据在适当情况下可以互换,以便本说明书实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,本说明书以及权利要求书中“和/或”表示所连接对象的至少其中之一,字符“/”一般表示前后关联对象是一种“或”的关系。
如前所述,目前智能问答机器人在接收到用户输入的问题后,可以对用户输入的问题做处理,如分词、抽取关键词、同义词扩展等,然后通过关键词在知识库中查找与用户当前输入问题相似的问题集合,并根据相似度从问题集合中挑选出与用户当前输入问题最相似的问题,进而将知识库中针对该问题预先设置好的答案作为用户当前输入问题的答案,并返回给提问用户。而在实际使用中,由于不同用户针对同一问题的提问方式可能是多种多样的,为了保证各类提问方式均可以在知识库中查找到匹配的预设问题,这就需要知识库尽可能地存储各种问题对应的全部提问方式,从而将会导致知识库中存储的数据量暴涨,数据量地暴涨则将导致通过知识库进行问题匹配的速度降低;而如果知识库缺少海量提问方式数据的支撑,则会导致无法准确地在知识库中查找到匹配的预设问题,进而导致智能问答机器人无法给出正确的答案。由此可见,如何保证智能问答机器人回答准确率的同时,又可以提高智能问答机器人的运行效率,成为相关技术亟待解决的问题。
为此,本说明书实施例旨在提供一种问答机器人的训练方法,在进行问答机器人训练时,训练样本数据集是根据从历史对话中提取到的语料数据与预先设置的标准语料共同构成的,由于从历史对话中提取到语料数据是由海量用户真实提问过的问题组成,相比于标准语料中的预先设置的标准问题,从历史对话中提取的语料数据包含有针对同一问题的不同提问方式(比如相似提问、模糊提问等),以使得采用该训练数据集训练得到的问答机器人的知识库中存储有针对同一问题的不同提问方式,而由于在实际使用中,用户一般不会按照预先设置好的标准问题格式进行提问,因而采用本说明书实施例所提供的训练方法训练得到的问答机器人在面对真实用户的提问时,可以更快地从知识库中找到与用户当前问题相匹配的提问方式,进而可以更加高效准确地为用户反馈答案;另外在此基础上,本申请所提供的原始问答机器人中均预设了两种以上的训练算法模型,在进行模型训练过程中,可以从中选择出与训练数据集最为适配的训练算法模型,作为后续训练过程中所使用的算法模型,由于该训练算法模型是针对当前训练数据以及训练场景作为适配的算法模型,因而可以提高该问答机器人的训练效率以及训练效果。由此可见,采用本说明书实施例所提供的训练方法,一方面可以更加高效地训练得到问答机器人,另外一方面,利用本申请提供的训练数据集训练完成地问答机器人,可以广泛地覆盖各类提问方式,以使得该问答机器人可以更加高效准确地为用户反馈答案。
应理解,本说明书实施例提供的问答机器人的训练方法和基于问答机器人的问答方法均可以由电子设备执行或安装在电子设备中的软件执行,具体可以由终端设备或服务端设备执行。其中,问答机器人的训练方法和基于问答机器人的问答方法可以由同一电子设备执行,或者也可以由不同的电子设备执行。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
请参考图1,为本说明书的一个实施例提供的一种问答机器人的训练方法的流程示意图,该方法可以包括:
步骤11,根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理;
其中,该训练指令中携带有原始问答机器人对应的业务标识,该原始问答机器人预先配置有至少两套算法模型。
在本说明书实施例中,当需要训练针对指定业务领域(比如,物流服务领域、售后服务领域以及销售服务领域等)的问答机器人时,可以向智能客服系统发送携带有该指定业务标识的训练指令,响应于该训练指令,智能客户系统可以创建针对该业务领域的原始问答机器人,并对该原始问答机器人进行初始化处理。
这里需要说明的是,为了保证最终训练得到的问答机器人除了可以执行针对指定业务领域的问答服务任务外,还可以执行针对通用领域的问答服务任务,比如,购物应用的智能客服系统可以划分为售前客服、售后客服、维修客服以及销售客服等不同业务领域,而该些不同业务领域的客户均需要对类似单号查询、转人工、优惠推荐以及日常问答等领域的用户提问进行响应回答,则该些服务领域可以称为通用领域,而该些针对通用领域的日常基本问题,则可以成为通用问题。
在一种实施方式中,智能客服系统在创建针对该业务领域的原始问答机器人,可以获取预先设置的公共知识库,并将该公共知识库加载至原始问答机器人中,以完成对该原始问答机器人的初始化处理,具体地,本申请实施例可以按照如下方法对原始问答机器人进行初始化处理:获取预先设置的公共知识库,其中,所述公共知识库包括通用领域对应的通用语料数据,其中,所述通用语料数据包括通用问题以及与所述通用问题对应的通用答案;将该公共知识库加载至原始问答机器人中,以完成对该原始问答机器人的初始化处理。
在完成对该原始问答机器人的初始化处理后,智能客服系统可以进一步地为该原始问答机器人设置名称以及对应的业务类型,以使得在后续使用时,可以直接根据问答机器人的名称,确定当前场景下需要调用的问答机器人。
另外这里需要说明的是,该原始问答机器人上预先配置有至少两套训练算法模型,该训练算法模型在结构上可以采用神经网络来实现,比如,该预先配置的训练算法模型可以包括以下至少两种:深度神经网络模型、卷积神经网络模型、循环神经网络模型以及长短期记忆神经网络模型等。
该预先配置的训练算法模型一般是经过预先训练的模型,这里需要说明的是,针对该训练算法模型的预先训练过程与后续使用本申请实施例获得的训练数据集进行针对特定业务领域的训练过程无关,该训练算法模型一般可以直接从公开渠道获取,例如,Google公司发布的BERT中文模型、百度公司发布的ERNIE模型等,有关训练算法模型的预先训练方式以及该训练算法模型的获取方式属于本领域惯用技术手段,此处不再赘述。
另外这里需要说明的是,本说明书实施例所提供的问答机器人的整体训练过程如图2所示,主要包括预处理阶段、数据处理阶段、训练任务创建阶段以及训练阶段,由于预处理阶段、数据处理阶段以及训练任务创建阶段均属于本领域惯用技术手段,故在本说明书实施例不在进行赘述。
步骤12,根据所述训练指令,从历史对话数据中获取与所述业务标识对应的语料数据;
其中,该历史对话数据是指用户与应答者(比如智能客服、人工客服等)在一轮或多轮历史对话中产生的数据,该历史对话数据中不仅可以包括用户的提问问题,还可以包括应答者针对用户提出的问题所作出的回答答案。
在本申请实施例中,可以获取与业务标识对应的业务关键词,并以该些业务关键词作为查询关键词,在历史对话数据中查询携带有该些业务关键词的对话,进而将从历史对话数据中查询到的对话作为与业务标识对应的语料数据。
在具体应用中,历史对话数据的形式可以是多种的,比如,在用户以文字进行人机对话时,历史对话数据的形式即为文本形式;又如,在用户以语音进行人机对话时,历史对话数据的形式即为语音形式,等等。相应地,从历史对话数据中获取用户语句的方式也可以是多样的,比如,若历史对话数据的形式为文本形式,则可以直接对历史对话数据进行文本处理,提取出用户语句,如用户的提问;又如,若历史对话数据的形式为语音形式,则可以先利用自动语音识别技术(Automatic Speech Recognition,ASR),将语音形式的历史对话数据转换为文本形式的历史对话数据,然后再对文本形式的历史对话数据进行文本处理,提取出用户语句,如用户的提问,或者应答者回答等。
步骤13,获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集;
其中,该标准语料为预先设置的、与业务标识对应的标准问题以及标准答案。该标准语料可以是由工作人员(比如该业务领域的业务专家)人工编写的,或者也可以是对现有业务领域的文本数据通过业务专家进行人工标注得到的。本申请实施例对该标准语料的生成方式不做限定。
这里需要说明的是,虽然标准语料中包含了该业务领域各类问题的标准答案,但是由于标准语料是通过工作人员人工编写而成的原因,导致其中的标准问题可能无法覆盖针对该问题的全部提问方式,因而如果单纯使用该标准语料作为训练数据集来进行问答机器人的训练,则会导致训练得到的问答机器人的知识库不完整,而无法处理实际用户通过非标准问题提出的问题。
而另外一方面,通过执行步骤12从历史对话数据中获取到的语料数据,由于从历史对话中提取到语料数据是由海量用户真实提问过的问题组成,不同用户会有不同的提问习惯,因而相比于标准语料中的预先设置的标准问题,从历史对话中提取的语料数据往往可以覆盖针对同一问题的不同提问方式(比如相似提问、模糊提问等),但是其中所包含的答案是由应答方自行输入的,由于应答方(比如人工客户)的水平不一,因而导致从历史对话中提取到语料数据中可能并不一定包含标准的回答。
因而,在本说明书实施方式中,可以根据从历史对话中提取到语料数据以及标准语料组合的方式,共同来生成训练数据集,进而实现通过语料数据中用户不同的提问方式,对标准语料中各标准问题的提问方式进行补全,以使得通过该种方式生成的训练数据集中可以尽可能地覆盖针对同一问题的不同提问方式,从而可以提高使用该训练数据集训练得到的问答机器人知识库的质量,在高质量问答知识库的帮助下,问答机器人在面对真实用户的提问时,可以更快地从知识库中找到与用户当前问题相匹配的提问方式,进而可以更加高效准确地为用户反馈答案。
在本说明书实施例中,具体可以根据语料数据中用户问题与该标准语料中标注问题的相似度,来进行语料数据与标准语料的组合,进而生成训练数据集的,具体地,本说明书实施例提供的方法可以包括:确定所述语料数据与所述标准语料的相似度;根据所述语料数据与所述标准语料的相似度,确定所述标准问题的相似用户问题;根据所述语料数据、所述标准语料以及所述相似用户问题,生成训练数据集。
这里需要说明的是,如果两个用户问题所表达的意图相似,例如,用户问题1:“这件衣服有什么活动么?”,用户问题2:“这件衣服还能在便宜点么?”,这两个用户问题均表达了“询问优惠”的意图,则说明这两个用户问题在意图维度上有一定的相似性。如果单纯根据句子的意图来判断两个句子的相似度,可能会存在不准确的问题,这里考虑到句子是由一个个词语组成,而句子中的关键词则可以进一步地反映句子的主题,基于此,为可以更准确地确定语料数据与标准语料之间的相似度,在一种可选的实现方式中,确定语料数据与标准语料的相似度可以包括如下步骤:
子步骤1301,根据语义识别技术,分别确定所述语料数据中用户问题对应的第一意图,以及所述标准语料中标准问题对应的第二意图;
在本说明书实施例中,具体可以使用预先训练好的意图识别模型,分别将语料数据中的用户问题以及标准语料中标准问题输入该意图识别模型,进而通过该意图识别模型,得到用户问题对应的第一意图以及标准问题对应的第二意图。
在一种可选的实现方式中,该意图识别模型可以是基于双向长短期记忆网络(Bi-LSTM)和条件随机场(conditional random field,CRF)模型,并通过与业务场景相关的意图术语样本进行训练完成获得的模型。通过该意图识别模型对标准问题(或者用户问题)进行上下文的意图特征提取,根据提取的该意图特征进行识别,识别的过程包括运用CRF的约束规则进行词性标注及评判,进而预测出各种意图类别的概率,最终得到标准问题(或者用户问题)的意图结果。
另外这里需要说明的是,该意图识别模型还可以是基于传统机器学习算法训练得到的,也可以是基于深度学习算法训练得到,在实际应用中,可采用本领域技术人员已知的各种训练方法来训练该意图识别模型,比如可以训练基于词向量的意图识别模型、基于卷积神经网络CNN的意图识别模型以及基于循环神经网络RNN的意图识别等等,本说明书实施例对意图识别模型的结构以及意图识别模型的训练方式不作具体限定。
子步骤1302,分别确定所述用户问题对应的第一关键词,以及所述标准问题对应的第二关键词;
一般地,可以通过对句子进行分词和词性标注处理,过滤掉停用词,并按词性进行词语过滤,只保留指定词性的词语,比如名词、动词、形容词,即可得到该句子对应的关键词。
在本说明书实施例中,可以根据句子中各词语出现的频率、词性、句型以及词语模型等内容,根据预设的关键词提取工具进行关键词提取。其中,常用的关键词提取工具可以为词频-逆文本频率(Term Frequency-Inverse Document Frequency,TF-IDF)算法工具,TextRank算法工具以及隐含狄利克雷分布(Latent Dirichlet Allocation,LDA)文档主题生成模型等,本说明书实施例对使用何种关键词提取工具以及提取关键词的方式不作具体限定。
子步骤1303,根据所述第一关键词与所述第二关键词的相似度,以及所述第一意图以及所述第二意图的相似度,确定所述用户问题与所述标准问题的相似度。
在一种可选的实现方式中,可以将第一关键词与第二关键词转换为词向量,进而通过余弦相似度算法计算两个词向量的距离,并根据向量距离,来判断第一关键词与所述第二关键词之间的相似度。
具体地,在本说明书实施例中,可以将第一关键词以及第二关键词发送到word2vec模型中进行词嵌入,从而获得与该些关键词相对应的词向量。其中,word2vec模型是用于产生词嵌入的一组相关模型,在一种可选的实现方式中,word2vec模型可以被训练为重组词的语言环境的浅层(两层)神经网络。词嵌入是自然语言处理(Natural LanguageProcessing,NLP)中语言建模和特征学习技术的集合的总称,通过词嵌入可以把一个维数为所有词的数量的高维空间嵌入到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量。利用word2vec模型来将词语转换为对应的词向量,属于自然语言处理领域较为常见的技术,本说明书实施例对word2vec模型的结构以及word2vec模型的训练方式不作具体限定。
在得到word2vec模型输出的第一关键词对应的词向量a以及第二关键词对应的词向量b后,可以根据余弦相似度方法,使用如下公式[1]来计算词向量a与词向量b之间的距离:
其中,a表示第一关键词对应的词向量a,b表示第二关键词对应的词向量b,两向量之间的距离越近,则说明两个词向量越相似,进而表示两个词向量对应的关键词之间相似度越高。
当然,可选地,也可采用共享最近邻(SNN)或者其他本领域已知的各种词向量相似度计算方案,来确定第一关键词与第二关键词之间的相似度。
当通过执行子步骤1302从用户问题以及标准语料中提取到的关键词为多个时,即通过执行子步骤1302分别得到了用户问题对应的第一关键词集合以及标准语料对应的第二关键词集合,则可以通过上述方法分别计算第一关键词集合每个关键词与第二关键词集合中每个关键词之间的相似度值,并通过对计算得到的该些关键词相似度进行加权求和的方式,计算得到第一关键词集合与第二关键词集合之间的相似度,作为第一关键词与第二关键词的相似度。
按照上述计算关键词相似度的方式,同样可以对第一意图与第二意图之间的相似度进行计算,通过word2vec模型将第一意图与第二意图分别转换为第一意图向量以及第二意图向量,进而通过计算意图向量距离的方式,确定第一意图与第二意图之间的相似度,具体方案详见上文有关确定关键词相似度的相关描述,此处不再赘述。
在一种可选的实现方式中,当通过如上方法分别确定了第一关键词与第二关键词之间的相似度(为了便于描述,后文简称为关键词相似度),以及第一意图以及第二意图之间的相似度(为了便于描述,后文简称为意图相似度)后,可对关键词相似度以及意图相似度进行加权求和,将加权求和结果确定为确定用户问题与标准问题的相似度,在一种实施方式中,可以根据如下公式[2]计算用户问题与标准问题的相似度:
score=w1similarity1+w2similarity2 [2]
其中,score表示用户问题与标准问题的相似度,similarity1表示关键词相似度,w1表示关键词相似度对应的权重,similarity2表示意图相似度,w2表示意图相似度对应的权重。具体实施时,关键词相似度以及意图相似度分别对应的权重均可以根据实际需要进行设置,本说明书实施例对此不作具体限定。
当然,可选地,也可通过其他方式基于关键词相似度以及意图相似度确定用户问题与标准问题的相似度,比如可以将关键词相似度以及意图相似度中的最大值确定为用户问题与标准问题的相似度,等等,本说明书实施例对此不作具体限定。
若通过上述方案,确定语料数据中的用户问题与标准语料中的标准问题之间相似度较高,则可以确定该用户问题与该标准问题都是针对同一问题的不同提问方式,进而可以将该用户问题作为该标准问题的相似用户问题,并生成与该标准问题对应的用户问题集合,从而可以实现针对标准问题对应提问方式的扩充。
在一种可选的实现方式中,可以预先设置一阈值,通过将语料数据中的用户问题与标准语料中的标准问题之间的相似度与预设阈值进行比较,来确定是否将语料数据中的用户问题作为标准问题的相似用户问题。具体地,本发明实施例提供的方法可以包括:将所述相似度大于预设阈值的用户问题,作为所述标准问题的相似用户问题;根据所述相似用户问题,生成所述标准问题对应的用户问题集合。
则后续可以根据标准问题对应的用户问题集合以及该标准问题对应的标准答案,来生成训练数据集。另外,这里需要说明的是,若用户问题与标准问题之间的相似度小于预设阈值,虽然可以说明该条用户问题并不是标准问题的相似用户问题,但是可能存在的一种情况是,该条用户问题可能是针对该业务领域新的问题,为了避免直接将这类相似度小于预设阈值的用户问题直接丢弃,而可能对后续基于语料数据以及标准语料生成的训练数据集的完整性造成的影响,在一种可选的实现方式中,可以将与标准问题之间相似度小于预设阈值的用户问题作为新增用户问题,进而根据标准问题对应的用户问题集合、标准问题对应的标准答案以及新增用户问题共同来生成训练数据集,具体地,本说明书实施例可以根据如下方法生成训练数据集:将所述标准问题对应的标准答案,作为与所述标准问题对应的用户问题集合中各相似用户问题对应的问题答案,生成第一训练数据集;将所述相似度小于预设阈值的用户问题,作为新增用户问题;根据所述新增用户问题以及所述新增用户问题对应的答案,生成第二训练数据集;根据所述第一训练数据集以及所述第二训练数据集,生成所述训练数据集。
这里还需要说明的是,为了避免新增用户问题中存在质量较低的用户问题(比如明显存在语病,或者明显与当前业务领域不相关的问题),进而影响后续训练得到的问答机器人的质量,在一种可选的实现方式中,若用户问题与标准问题之间的相似度小于预设阈值,则可将该用户问题发送给审核平台,对该条用户问题的质量(比如语句是否通顺、是否存在语病、是否与当前业务领域相关等)进行审核,并在该用户问题通过审核平台的审核候,才将该用户问题作为新增用户问题,并用于后续的训练数据集的生成,由此可以避免直接将低质量用户问题作为新增用户问题来生成训练数据集,进而影响后续训练得到的问答机器人的质量。
采用本说明书实施例提供的上述训练数据集的生成方法,通过计算从历史对话数据中获取到的用户问题与预设标准语料中标准问题之间的相似度,来确定标准问题的相似用户问题集合,以此实现了对标准问题所对应提问方式的扩展,进而基于上述方法可以生成问题覆盖全面的高质量训练数据集,以保证后续使用该训练数据集可以训练得到高质量的问答机器人。
步骤14,在原始问答机器人预先配置的至少两套算法模型中,确定与所述训练数据集对应的训练算法模型;
在一种可选的实现方式中,可以根据训练数据集中训练数据的数据类型,来选择针对该数据类型最匹配的训练算法模型,进而将该训练算法模型作为后续进行问答机器人训练的算法模型。
其中,该训练数据集中训练数据的数据类型可以包括:文本数据、音频数据以及图像数据等。该训练数据集的数据类型可以根据该数据集中不同类型训练数据的占比来确定,比如训练数据集中的超过50%的语料数据为图像格式,则可以将该训练数据集的数据类型确定为图像数据,进而可以选择与图像数据类型作为匹配的卷积神经网络模型作为该训练数据集合对应的训练算法模型,进而可以提高后续问答机器人的训练效率以及训练效果。
步骤15,将训练数据集输入所述原始问答机器人中,以使得所述原始问答机器人确定所述训练数据集中各训练数据的提问意图,针对各所述提问意图,根据所述训练算法模型进行答案搜索,输出预测答案,根据预测答案和所述标准答案,构建目标损失函数,基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
在一种可选的实现方式中,可以将训练数据集中的训练样本数据集输入原始问答机器人中,得到该原始问答机器人输出的预测答案,利用预测答案与标准答案,构建目标损失函数,并计算训练数据集在原始问答机器人中的总损失值,其中,该损失值用于表征训练中的原始问答机器人所输出的预测答案与标准答案之间的偏差,接着,以问答机器人的损失值下降为目标,从问答机器人的最后一层网络层起,通过反向传播逐层调整问答机器人中各网络层的网络参数,直至损失值达到预设标准时,可以训练得到问答机器人。
具体地,可以从原始问答机器人的最后一层网络层起,根据原始问答机器人中各网络层的结构及不同网络层之间的连接关系及连接权重等,对原始问答机器人的损失值向前求偏导,得到各网络层的损失值,其中,各网络层的损失值用于表征在各网络层引起的检测偏差,接着,以使问答机器人的损失值下降为目标,依次基于各网络层的损失值对各网络层的网络参数进行更新。
需要说明的是,在训练目标检测模型时所使用的损失函数可以采用任意适当形式的损失函数,具体可根据实际需要进行设置,本说明书实施例对此不作具体限定。
在通过执行上述方法完成对问答机器人的训练后,会生成最终的问答机器人模型文件,并将这些模型文件上传到智能客服系统的后台服务器,供给智能客服系统调用。后续,当智能客服系统接收到用户上传的提问问题后,在确定该提问问题对应的业务领域后,可以调用与该业务领域对应的、预先训练好的问答机器人,并将该提问问题输入该问答机器人,以使得该问答机器人可以匹配发出最符合的答案,并反馈给用户。
采用本说明书实施例提供的问答机器人训练方法,在进行问答机器人训练时,训练样本数据集是根据从历史对话中提取到的语料数据与预先设置的标准语料共同构成的,由于从历史对话中提取到语料数据是由海量用户真实提问过的问题组成,相比于标准语料中的预先设置的标准问题,从历史对话中提取的语料数据包含有针对同一问题的不同提问方式(比如相似提问、模糊提问等),以使得采用该训练数据集训练得到的问答机器人的知识库中存储有针对同一问题的不同提问方式,而由于在实际使用中,用户一般不会按照预先设置好的标准问题格式进行提问,因而采用本申请实施例所提供的训练方法训练得到的问答机器人在面对真实用户的提问时,可以更快地从知识库中找到与用户当前问题相匹配的提问方式,进而可以更加高效准确地为用户反馈答案;另外在此基础上,本申请所提供的原始问答机器人中均预设了两种以上的训练算法模型,在进行模型训练过程中,可以从中选择出与训练数据集最为适配的训练算法模型,作为后续训练过程中所使用的算法模型,由于该训练算法模型是针对当前训练数据以及训练场景作为适配的算法模型,因而可以提高该问答机器人的训练效率以及训练效果。由此可见,采用本申请实施例所提供的训练方法,一方面可以更加高效地训练得到问答机器人,另外一方面,利用本申请提供的训练数据集训练完成地问答机器人,可以广泛地覆盖各类提问方式,以使得该问答机器人可以更加高效准确地为用户反馈答案。
与上述图1所示的问答机器人的训练方法相对应地,本说明书实施例还提供一种基于问答机器人的问答方法,用于在提高了训练得到的问答机器人运行效率的同时,又提高问答机器人的回答准确率。
本说明书实施例提供的基于问答机器人的问答方法,可以应用于任意有智能机器客服需求的场景,例如可以包括但不限于购物APP、金融APP、运动APP以及视频APP等应用的智能客服服务场景。下面以基于问答机器人进行电商售后服务问答这一应用场景为例,对本说明书实施例提供的基于问答机器人的问答方法进行详细说明,具体处理流程详见图3所示,主要包括以下步骤。
步骤21,获取用户通过终端设备输入的待回答问题;
用户在使用智能客服系统,可以通过终端设备输入需要咨询的待回答问题,智能客服系统接收到终端设备发送的待回答问题后,首先可以通过语义识别确定该待回答问题的所对应的业务领域。
一般来说,智能客服系统可以支持针对不同业务领域的提问做出响应回答。其中,这里的业务领域包括电商领域、金融领域、运动领域等等。具体的,接收用户在终端输入的问句,终端将问句发送至智能客服系统,由智能客服系统确定问句对应的业务类型。例如,针对“衣服不合适,如何办理退货?”,则可以确定该问句对应的业务领域为电商售后服务业务。
步骤22,将所述待回答问题输入预先训练好的问答机器人,通过所述问答机器人对所述待回答问题进行语义识别,确定所述待回答问题对应的问题意图以及提问关键词;
这里需要说明的是,智能客服系统上不同的问答机器人能够处理不同业务领域的问答需求。因而当通过执行步骤21确定用户输入的待回答问题对应的业务类型后,智能客服系统可以根据业务类型,将待回答问题分发至与业务类型对应的问答机器人。例如,针对“衣服不合适,如何办理退货?”这一待回答问题,确定该问题对应的业务类型为电商售后服务业务,则智能客服系统可以将问题分发至与电商售后服务业务对应的问答机器人。
通过问答机器人对待回答问题进行语义识别,确定待回答问题对应的问题意图以及提问关键词。
在本说明书实施例中,具体可以使用预先训练好的意图识别模型,将待回答问题输入该意图识别模型,进而通过该意图识别模型,得到待回答问题对应的问题意图。
在一种可选的实现方式中,该意图识别模型可以是基于双向长短期记忆网络(Bi-LSTM)和条件随机场(conditional random field,CRF)模型,并通过与业务场景相关的意图术语样本进行训练完成获得的模型。通过该意图识别模型对标准问题(或者提问语句用户问题)进行上下文的意图特征提取,根据提取的该意图特征进行识别,识别的过程包括运用CRF的约束规则进行词性标注及评判,进而预测出各种意图类别的概率,最终得到待回答问题的问题意图。本说明书实施例对意图识别模型的结构以及意图识别模型的训练方式不作具体限定。
在一种可选的实现方式中,可以通过对句子进行分词和词性标注处理,过滤掉停用词,并按词性进行词语过滤,只保留指定词性的词语,比如名词、动词、形容词,即可得到该句子对应的关键词,本说明书实施例对使用何种关键词提取工具以及提取关键词的方式不作具体限定。
步骤23,根据通过执行步骤22确定的问题意图以及提问关键词进行答案搜索,以获得所述待回答问题对应的应答信息,并向所述用户反馈所述应答信息。
问答机器人将问题意图以及提问关键词作为搜索关键词,按照预先训练的算法模型在知识库中进行答案搜索,并获取与待回答问题对应的应答信息,并向所述用户反馈所述应答信息。
采用本说明书实施例提供的基于问答机器人的问答方法,由于问答机器人的训练样本数据集是根据从历史对话中提取到的语料数据与预先设置的标准语料共同构成的,而从历史对话中提取到语料数据是由海量用户真实提问过的问题组成,相比于标准语料中的预先设置的标准问题,从历史对话中提取的语料数据包含有针对同一问题的不同提问方式(比如相似提问、模糊提问等),以使得采用该训练数据集训练得到的问答机器人的知识库中存储有针对同一问题的不同提问方式,而由于在实际使用中,用户一般不会按照预先设置好的标准问题格式进行提问,因而采用本申请实施例所提供的基于问答机器人的问答方法,在面对真实用户的提问时,可以更快地从知识库中找到与用户当前问题相匹配的提问方式,进而可以更加高效准确地为用户反馈答案。
此外,与上述图1所示的问答机器人的训练方法相对应地,本说明书实施例还提供一种问答机器人的训练装置,用于在提高了训练得到的问答机器人运行效率的同时,又提高问答机器人的回答准确率。图4是本申请实施例提供的一种问答机器人的训练装置的结构示意图,包括:原始机器人初始化模块401,语料获取模块402,训练数据集生成模块403,算法模型确定模块404以及训练模块405。
其中,原始机器人初始化模块401,用于根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理,其中,所述训练指令中携带有原始问答机器人对应的业务标识,所述原始问答机器人预先配置有至少两套算法模型;
语料获取模块402,用于根据所述训练指令,从历史对话数据中获取与所述业务标识对应的语料数据,其中,所述语料数据包括用户问题以及与所述用户问题对应的答案;
训练数据集生成模块403,用于获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,其中,所述标准语料包括所述业务标识对应的标准问题以及标准答案;
算法模型确定模块404,用于在所述原始问答机器人预先配置的至少两套算法模型中,确定与所述训练数据集对应的训练算法模型;
训练模块405,用于将所述训练数据集输入所述原始问答机器人中,以使得所述原始问答机器人确定所述训练数据集中各训练数据的提问意图,针对各所述提问意图,根据所述训练算法模型进行答案搜索,输出预测答案;根据所述预测答案和所述标准答案,构建目标损失函数;基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
采用本说明书实施例提供的问答机器人训练装置,在进行问答机器人训练时,训练样本数据集是根据从历史对话中提取到的语料数据与预先设置的标准语料共同构成的,由于从历史对话中提取到语料数据是由海量用户真实提问过的问题组成,相比于标准语料中的预先设置的标准问题,从历史对话中提取的语料数据包含有针对同一问题的不同提问方式(比如相似提问、模糊提问等),以使得采用该训练数据集训练得到的问答机器人的知识库中存储有针对同一问题的不同提问方式,而由于在实际使用中,用户一般不会按照预先设置好的标准问题格式进行提问,因而采用本申请实施例所提供的训练方法训练得到的问答机器人在面对真实用户的提问时,可以更快地从知识库中找到与用户当前问题相匹配的提问方式,进而可以更加高效准确地为用户反馈答案;另外在此基础上,本申请所提供的原始问答机器人中均预设了两种以上的训练算法模型,在进行模型训练过程中,可以从中选择出与训练数据集最为适配的训练算法模型,作为后续训练过程中所使用的算法模型,由于该训练算法模型是针对当前训练数据以及训练场景作为适配的算法模型,因而可以提高该问答机器人的训练效率以及训练效果。由此可见,采用本申请实施例所提供的训练装置,一方面可以更加高效地训练得到问答机器人,另外一方面,利用本申请提供的训练数据集训练完成地问答机器人,可以广泛地覆盖各类提问方式,以使得该问答机器人可以更加高效准确地为用户反馈答案。
可选地,所述原始机器人初始化模块401包括:
公共知识库获取子模块,用于获取预先设置的公共知识库,其中,所述公共知识库包括通用领域对应的通用语料数据,其中,所述通用语料数据包括通用问题以及与所述通用问题对应的通用答案;
初始化子模块,用于基于所述第一词语的词特征和所述第二词语的词特征,确定所述用户语句与所述标准问句之间在词语维度的第二相似度;
第三相似度确定子模块,用于将所述公共知识库加载至所述原始问答机器人中,以完成对所述原始问答机器人的初始化处理。
可选地,所述训练数据集生成模块403包括:
相似度确定子模块,用于确定所述语料数据与所述标准语料的相似度;
相似用户问题确定子模块,用于根据所述语料数据与所述标准语料的相似度,确定所述标准问题的相似用户问题;
训练数据集生成子模块,用于根据所述语料数据、所述标准语料以及所述相似用户问题,生成训练数据集。
可选地,相似度确定子模块,具体用于:对所述语料数据与所述标准语料进行语义识别,分别确定所述语料数据中用户问题对应的第一意图,以及所述标准语料中标准问题对应的第二意图;分别确定所述用户问题对应的第一关键词,以及所述标准问题对应的第二关键词;根据所述第一关键词与所述第二关键词的相似度,以及所述第一意图以及所述第二意图的相似度,确定所述用户问题与所述标准问题的相似度。
可选地,所述相似用户问题确定子模块,具体用于:将所述相似度大于预设阈值的用户问题,作为所述标准问题的相似用户问题;根据所述相似用户问题,生成所述标准问题对应的用户问题集合。
可选地,所述训练数据集生成子模块,具体用于:将所述标准问题对应的标准答案,作为与所述标准问题对应的用户问题集合中各相似用户问题对应的答案,生成第一训练数据集;将所述相似度小于预设阈值的用户问题,作为新增用户问题;根据所述新增用户问题以及所述新增用户问题对应的答案,生成第二训练数据集;根据所述第一训练数据集以及所述第二训练数据集,生成所述训练数据集。
可选地,所述算法模型确定模块404:
数据类型确定子模块,用于确定所述训练数据集中训练数据的数据类型;
模型确定子模块,用于根据所述训练数据的数据类型,确定与所述训练数据集对应的训练算法模型。
可选地,所述原始问答机器人预先配置的算法模型包括以下至少两种:深度神经网络模型、卷积神经网络模型、循环神经网络模型、长短期记忆神经网络模型。
显然,本说明书实施例的问答机器人的训练装置可以作为上述图1所示的问答机器人的训练方法的执行主体,因此能够实现问答机器人的训练方法在图1所实现的功能。由于原理相同,在此不再赘述。
此外,与上述图3所示的基于问答机器人的问答方法相对应地,本说明书实施例还提供一种基于问答机器人的问答装置,用于在提高了训练得到的问答机器人运行效率的同时,又提高问答机器人的回答准确率。图5是本申请实施例提供的一种基于问答机器人的问答装置的结构示意图,包括:问题接收单元501,意图识别单元502以及反馈单元503。
其中,问题接收单元501,用于获取用户通过终端设备输入的待回答问题;
意图识别单元502,用于将所述待回答问题输入预先训练好的问答机器人,通过所述问答机器人对所述待回答问题进行语义识别,确定所述待回答问题对应的问题意图以及提问关键词;
反馈单元503,用于根据所述问题意图以及所述提问关键词进行答案搜索,以获得所述待回答问题对应的应答信息,并向所述用户反馈所述应答信息
采用本说明书实施例提供的基于问答机器人的问答方法,由于问答机器人的训练样本数据集是根据从历史对话中提取到的语料数据与预先设置的标准语料共同构成的,而从历史对话中提取到语料数据是由海量用户真实提问过的问题组成,相比于标准语料中的预先设置的标准问题,从历史对话中提取的语料数据包含有针对同一问题的不同提问方式(比如相似提问、模糊提问等),以使得采用该训练数据集训练得到的问答机器人的知识库中存储有针对同一问题的不同提问方式,而由于在实际使用中,用户一般不会按照预先设置好的标准问题格式进行提问,因而采用本申请实施例所提供的基于问答机器人的问答方法,在面对真实用户的提问时,可以更快地从知识库中找到与用户当前问题相匹配的提问方式,进而可以更加高效准确地为用户反馈答案。
图6是本说明书的一个实施例电子设备的结构示意图。请参考图6,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上问答机器人的训练装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理,其中,所述训练指令中携带有原始问答机器人对应的业务标识,所述原始问答机器人预先配置有至少两套算法模型;
根据所述训练指令,从历史对话数据中获取与所述业务标识对应的语料数据,其中,所述语料数据包括用户问题以及与所述用户问题对应的回答;
获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,其中,所述标准语料包括所述业务标识对应的标准问题以及标准答案;
在所述原始问答机器人预先配置的至少两套算法模型中,确定与所述训练数据集对应的训练算法模型;
将所述训练数据集输入所述原始问答机器人中,以使得所述原始问答机器人确定所述训练数据集中各训练数据的提问意图,针对各所述提问意图,根据所述训练算法模型进行答案搜索,输出预测答案;
根据所述预测答案和所述标准答案,构建目标损失函数;
基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
上述如本说明书图1所示实施例揭示的问答机器人的训练装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
应理解,本说明书实施例的电子设备可以实现问答机器人的训练装置在图1所示实施例的功能。由于原理相同,本说明书实施例在此不再赘述。
当然,除了软件实现方式之外,本说明书的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法,并具体用于执行以下操作:
根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理,其中,所述训练指令中携带有原始问答机器人对应的业务标识,所述原始问答机器人预先配置有至少两套算法模型;
根据所述训练指令,从历史对话数据中获取与所述业务标识对应的语料数据,其中,所述语料数据包括用户问题以及与所述用户问题对应的答案;
获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,其中,所述标准语料包括所述业务标识对应的标准问题以及标准答案;
在所述原始问答机器人预先配置的至少两套算法模型中,确定与所述训练数据集对应的训练算法模型;
将所述训练数据集输入所述原始问答机器人中,以使得所述原始问答机器人确定所述训练数据集中各训练数据的提问意图,针对各所述提问意图,根据所述训练算法模型进行答案搜索,输出预测答案;
根据所述预测答案和所述标准答案,构建目标损失函数;
基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
总之,以上所述仅为本说明书的较佳实施例而已,并非用于限定本说明书的保护范围。凡在本说明书的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本说明书的保护范围之内。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
Claims (10)
1.一种问答机器人的训练方法,其特征在于,包括:
根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理,其中,所述训练指令中携带有原始问答机器人对应的业务标识,所述原始问答机器人预先配置有至少两套算法模型;
根据所述训练指令,从历史对话数据中获取与所述业务标识对应的语料数据,其中,所述语料数据包括用户问题以及与所述用户问题对应的答案;
获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,其中,所述标准语料包括所述业务标识对应的标准问题以及标准答案;
在所述原始问答机器人预先配置的至少两套算法模型中,确定与所述训练数据集对应的训练算法模型;
将所述训练数据集输入所述原始问答机器人中,以使得所述原始问答机器人确定所述训练数据集中各训练数据的提问意图,针对各所述提问意图,根据所述训练算法模型进行答案搜索,输出预测答案;
根据所述预测答案和所述标准答案,构建目标损失函数;
基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
2.根据权利要求1所述的方法,其特征在于,根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理,具体包括:
获取预先设置的公共知识库,其中,所述公共知识库包括通用领域对应的通用语料数据,其中,所述通用语料数据包括通用问题以及与所述通用问题对应的通用答案;
将所述公共知识库加载至所述原始问答机器人中,以完成对所述原始问答机器人的初始化处理。
3.根据权利要求1所述的方法,其特征在于,获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,具体包括:
确定所述语料数据与所述标准语料的相似度;
根据所述语料数据与所述标准语料的相似度,确定所述标准问题的相似用户问题;
根据所述语料数据、所述标准语料以及所述相似用户问题,生成训练数据集。
4.根据权利要求3所述的方法,其特征在于,确定所述语料数据与所述标准语料的相似度,具体包括:
对所述语料数据与所述标准语料进行语义识别,分别确定所述语料数据中用户问题对应的第一意图,以及所述标准语料中标准问题对应的第二意图;
分别确定所述用户问题对应的第一关键词,以及所述标准问题对应的第二关键词;
根据所述第一关键词与所述第二关键词的相似度,以及所述第一意图以及所述第二意图的相似度,确定所述用户问题与所述标准问题的相似度。
5.根据权利要求3所述的方法,其特征在于,根据所述语料数据与所述标准语料的相似度,确定所述标准问题的相似用户问题,具体包括:
将所述相似度大于预设阈值的用户问题,作为所述标准问题的相似用户问题;
根据所述相似用户问题,生成所述标准问题对应的用户问题集合。
6.根据权利要求5所述的方法,其特征在于,根据所述语料数据、所述标准语料以及所述相似用户问题,生成训练数据集,具体包括:
将所述标准问题对应的标准答案,作为与所述标准问题对应的用户问题集合中各相似用户问题对应的答案,生成第一训练数据集;
将所述相似度小于预设阈值的用户问题,作为新增用户问题;
根据所述新增用户问题以及所述新增用户问题对应的答案,生成第二训练数据集;
根据所述第一训练数据集以及所述第二训练数据集,生成所述训练数据集。
7.一种基于问答机器人的问答方法,其特征在于,包括:
获取用户通过终端设备输入的待回答问题;
将所述待回答问题输入预先训练好的问答机器人,通过所述问答机器人对所述待回答问题进行语义识别,确定所述待回答问题对应的问题意图以及提问关键词;
根据所述问题意图以及所述提问关键词进行答案搜索,以获得所述待回答问题对应的应答信息,并向所述用户反馈所述应答信息。
8.一种问答机器人的训练装置,其特征在于,包括:
原始机器人初始化模块,用于根据接收到的训练指令,获取原始问答机器人,并对所述原始问答机器人进行初始化处理,其中,所述训练指令中携带有原始问答机器人对应的业务标识,所述原始问答机器人预先配置有至少两套算法模型;
语料获取模块,用于根据所述训练指令,从历史对话数据中获取与所述业务标识对应的语料数据,其中,所述语料数据包括用户问题以及与所述用户问题对应的回答;
训练数据集生成模块,用于获取预设的、与所述业务标识对应的标准语料,根据所述语料数据以及所述标准语料,生成训练数据集,其中,所述标准语料包括所述业务标识对应的业务领域内的标准问题以及标准答案;
算法模型确定模块,用于在所述原始问答机器人预先配置的至少两套算法模型中,确定与所述训练数据集对应的训练算法模型;
训练模块,用于将所述训练数据集输入所述原始问答机器人中,以使得所述原始问答机器人根据所述训练算法模型,输出预测答案;根据所述预测答案和所述标准答案,构建目标损失函数;基于所述目标损失函数对所述原始问答机器人进行迭代训练,得到目标问答机器人。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210768212.9A CN116150306A (zh) | 2022-07-01 | 2022-07-01 | 问答机器人的训练方法、问答方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210768212.9A CN116150306A (zh) | 2022-07-01 | 2022-07-01 | 问答机器人的训练方法、问答方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116150306A true CN116150306A (zh) | 2023-05-23 |
Family
ID=86353215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210768212.9A Pending CN116150306A (zh) | 2022-07-01 | 2022-07-01 | 问答机器人的训练方法、问答方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116150306A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116860950A (zh) * | 2023-09-04 | 2023-10-10 | 北京市电通电话技术开发有限公司 | 一种术语对话机器人语料更新方法及系统 |
CN117892799A (zh) * | 2024-03-15 | 2024-04-16 | 中国科学技术大学 | 以多层次任务为导向的金融智能分析模型训练方法及系统 |
-
2022
- 2022-07-01 CN CN202210768212.9A patent/CN116150306A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116860950A (zh) * | 2023-09-04 | 2023-10-10 | 北京市电通电话技术开发有限公司 | 一种术语对话机器人语料更新方法及系统 |
CN116860950B (zh) * | 2023-09-04 | 2023-11-14 | 北京市电通电话技术开发有限公司 | 一种术语对话机器人语料更新方法及系统 |
CN117892799A (zh) * | 2024-03-15 | 2024-04-16 | 中国科学技术大学 | 以多层次任务为导向的金融智能分析模型训练方法及系统 |
CN117892799B (zh) * | 2024-03-15 | 2024-06-04 | 中国科学技术大学 | 以多层次任务为导向的金融智能分析模型训练方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110502738A (zh) | 中文命名实体识别方法、装置、设备和查询系统 | |
CN117520523B (zh) | 数据处理方法、装置、设备及存储介质 | |
CN117609444B (zh) | 一种基于大模型的搜索问答方法 | |
CN110597966A (zh) | 自动问答方法及装置 | |
CN112434533B (zh) | 实体消歧方法、装置、电子设备及计算机可读存储介质 | |
JP7121819B2 (ja) | 画像処理方法及び装置、電子機器、コンピュータ可読記憶媒体並びにコンピュータプログラム | |
CN114678014A (zh) | 意图识别方法、装置、计算机设备及计算机可读存储介质 | |
CN116150306A (zh) | 问答机器人的训练方法、问答方法及装置 | |
CN116089567A (zh) | 一种搜索关键词的推荐方法、装置、设备和存储介质 | |
CN114282528A (zh) | 一种关键词提取方法、装置、设备及存储介质 | |
CN113868377A (zh) | 相似度联合模型训练、语义匹配方法及装置 | |
CN115146021A (zh) | 文本检索匹配模型的训练方法、装置、电子设备及介质 | |
CN113505196B (zh) | 基于词性的文本检索方法、装置、电子设备及存储介质 | |
CN114153946A (zh) | 一种智能检索方法、装置、设备及存储介质 | |
CN113673237A (zh) | 模型训练、意图识别方法、装置、电子设备及存储介质 | |
CN114638231B (zh) | 实体链接方法、装置及电子设备 | |
CN117131273A (zh) | 资源搜索方法、装置、计算机设备、介质及产品 | |
CN114254634B (zh) | 一种多媒体数据的挖掘方法、装置、存储介质及设备 | |
CN115114910B (zh) | 文本处理方法、装置、设备、存储介质及产品 | |
CN116992111B (zh) | 数据处理方法、装置、电子设备及计算机存储介质 | |
US11934794B1 (en) | Systems and methods for algorithmically orchestrating conversational dialogue transitions within an automated conversational system | |
CN116628187B (zh) | 一种文本分类方法、装置、电子设备和存储介质 | |
CN118377909B (zh) | 基于通话内容的客户标签确定方法、装置及存储介质 | |
CN117216203A (zh) | 交互问答方法、装置、计算机设备及介质 | |
CN119311857A (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 |