问答的处理方法及装置与流程
未命名
07-23
阅读:103
评论:0
1.本发明涉及计算机技术领域,具体涉及一种问答的处理方法及装置。
背景技术:
2.现有对问答的处理,一般采用分类、聚类或相似度匹配等算法对用户语句中的输入问题进行意图识别,进而检索专家积累的知识语料库进行回复。
3.现有方法中的问答的处理方法主要用于日常知识检索、知识问答场景,对问答的处理逻辑简单,支持问答语料及场景单一。对qa问答、图谱问答、任务型问答及基础闲聊问答同时存在的多种问答场景的支持度较低,难以应对复杂的综合性问答场景。并且,对复杂性问答、多轮对话问答等存在计算能力及效率不足的问题。
4.因此,如何提出一种方法,能够解决现有问答的处理技术中,功能简单、场景单一、效率不高的问题,具有十分重要的意义。
技术实现要素:
5.本发明提供一种问答的处理方法及装置,用以解决现有技术中问答的处理中无法在多种不同场景中实现高效且准确问答的处理的技术问题。
6.第一方面,本发明提供一种问答的处理方法,包括:
7.根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;
8.在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果;
9.在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;
10.其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。
11.在一个实施例中,所述根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式,包括:
12.根据预先设定的关键词字典和预先设定的正则表达式,确定所述task场景预设规则;
13.根据自然语言框架rasa框架中内置的多轮对话管理策略,确定所述对话状态检测规则;
14.将所述目标用户语句与所述task场景预设规则匹配,确定所述目标用户语句的问答模式中的场景模式,并将所述目标用户语句与所述对话状态检测规则匹配,确定所述目标用户语句的问答模式中的对话模式。
15.在一个实施例中,所述将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果,包括:
16.获取训练样本,对所述训练样本进行数据增强;
17.根据数据增强后的训练样本,训练语言表征模型bert模型,得到训练后的bert模型;
18.将所述目标用户语句输入所述训练后的bert模型,得到所述目标用户语句的句向量;
19.将所述目标用户语句通过人工设定的特征工程获得稀疏向量;
20.拼接所述句向量和所述稀疏向量,并将拼接后得到的向量输入全连接层与softmax层,确定所述目标用户语句的识别结果。
21.在一个实施例中,所述对所述训练样本进行数据增强,包括:
22.对所述训练样本中与意图分类无关的词槽进行标记;
23.根据人工确定的种子负样本与所述意图分类无关的词槽,生成训练负样本;
24.将所述训练样本进行分词,对分词后得到的词槽中未标记的词槽进行近义词替换;
25.对近义词替换后的样本进行过采样,平衡不同类别的样本数量,得到均衡样本;
26.将所述训练负样本和所述均衡样本,作为数据增强后的训练样本。
27.在一个实施例中,所述将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果,包括:
28.将所述目标用户语句并行输入所述kbqa问答算法与所述qa问答算法;
29.根据所述kbqa问答算法确定所述目标用户语句的kbqa匹配结果,根据所述qa问答算法确定所述目标用户语句的qa匹配结果;
30.根据预先设置的优先级,将所述kbqa匹配结果与所述qa匹配结果中优先级高的匹配结果作为所述问答融合模型的匹配结果;
31.其中,所述qa问答算法中的匹配是基于余弦相似度匹配确定的。
32.在一个实施例中,在所述目标用户语句与所述问答融合模型不匹配的情况下,
33.将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;
34.在所述增强型意图识别算法无法识别所述目标用户语句情况下,根据默认的回答策略,输出回答结果。
35.在一个实施例中,在所述增强型意图识别算法无法识别所述目标用户语句情况下,
36.根据预设的修正规则,调整所述增强型意图识别算法的识别率,输出回答结果。
37.第二方面,本发明还提供一种问答的处理装置,包括:
38.问答模式确定模块,用于根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;
39.问答融合模型匹配模块,用于在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果;
40.增强型意图识别算法匹配模块,用于在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确
定所述目标用户语句的识别结果;
41.其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。
42.第三方面,本发明还提供一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一种的问答的处理方法的步骤。
43.第四方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一种的问答的处理方法的步骤。
44.本发明提供的问答的处理方法、装置、电子设备及存储介质,通过对目标用户语句的问答模式进行判断,针对具体的问答模式采取对应问答模式场景的问答处理方式,实现了多种问答场景的高效处理。与此同时,有针对性的通过基于kbqa问答算法与qa问答算法的融合模型对知识型问答的处理,通过增强型意图识别算法对task场景问答的处理,实现了对常规算法的优化,提升了处理效率与准确性。
附图说明
45.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
46.图1为本发明提供的问答的处理方法的流程示意图;
47.图2为本发明提供的rasa信息处理流程图;
48.图3为本发明提供的增强型意图识别算法结构图;
49.图4为本发明提供的样本数据增强流程图;
50.图5为本发明提供的融合规则流程图;
51.图6为应用本发明提供的问答的处理方法的流程示意图;
52.图7为本发明提供的问答的处理装置的结构示意图;
53.图8为本发明提供的电子设备的结构示意图。
具体实施方式
54.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
55.图1为本发明提供的问答的处理方法的流程示意图。参照图1,本发明提供的问答的处理方法可以包括:
56.s110、根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;
57.s120、在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答
融合模型的匹配结果;
58.s130、在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;
59.其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。
60.本发明提供的问答的处理方法的执行主体可以是电子设备、电子设备中的部件、集成电路、或芯片。该电子设备可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本或者个人数字助理(personal digital assistant,pda)等,非移动电子设备可以为服务器、网络附属存储器(network attached storage,nas)、个人计算机(personal computer,pc)、电视机(television,tv)、柜员机或者自助机等,本发明不作具体限定。
61.下面以计算机执行本发明提供的问答的处理方法为例,详细说明本发明的技术方案。
62.需要说明的是,问答一般包含四种,分别是task场景问答、基础闲聊问答、图谱kbqa问答以及qa问答。task场景问答是针对任务信息,执行具体的操作。比如执行开灯命令等。基础闲聊问答中集成了基础的问答功能,用于交互闲聊的内容。图谱kbqa问答以及qa问答,均属于知识型问答。其中,kbqa问答是通过知识图谱查询,对图库中的数据进行问答查询。例如“查询linux123的状态”,会通过识别实体如linux123与类别之后,进行图谱查询得出结果。qa问答,通过设置大量的知识问答对,通过匹配实现确定结果。
63.在步骤s110中,根据预先定义的task场景规则确定目标用户语句的问答模式是否为task场景,根据对话状态检测规则确定目标用户语句的问答模式是否为多轮对话的模式。
64.针对是否为task场景的判断,是通过预先定义的task场景规则确认的。预先定义的task场景规则是通过预先构建的task场景专家库。将常用的任务相关内容信息比如执行**命令、创建**任务、启动**服务等信息录入task场景专家库,将目标用户语句与task场景专家库中的信息进行比对实现对任务信息的判断。
65.可选的,针对目标用户语句是否为多轮对话模式的判断,可以借助rasa框架进行。rasa框架内置多种多轮对话管理策略,如最常用的“表单”策略,可以方便用户进行多轮对话的设计。根据rasa框架确定目标用户语句是否处于多轮对话模式中。
66.可以理解的是,通过对目标用户语句的问答模式进行判断,可以初步对当前目标用户语句的问答进行筛选,根据筛选的结果,针对性的对目标用户语句进行处理,可以提高问答识别的效率。
67.在步骤s120中,通过步骤s110中确定目标用户语句的问答模式不属于task场景模式,并且目标用户语句的问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定目标用户语句与问答融合模型的匹配结果。
68.在确定目标用户语句不属于task场景模式,且目标用户语句为非多轮对话的情况下,则该目标用户语句极可能为知识型问答语句,所以可以将目标用户语句输入问答融合
模型,进行知识型问答的检测。
69.在步骤s130中,在确定问答模式属于task场景模式或者多轮对话模式的情况下,直接将目标用户语句输入增强型意图识别算法,确定目标用户语句的识别结果。
70.可以理解的是,在确定问答模式属于task场景模型或者多轮对话模式的情况下,通过构建的数据增强型意图识别算法,将目标用户语句数据增强型意图识别算法,确定目标用户语句的识别结果。通过数据增强型的意图识别算法,提升了识别的准确率。
71.其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。
72.kbqa(knowledge base question answering,基于知识库问答)问答算法,是通过对输入的语句进行语义理解和解析,进而利用知识库进行查询、推理得出答案。知识库是用于知识管理的一种特殊的数据库,用于相关领域知识的采集、整理及提取。知识库中的知识是求解问题所需领域知识的集合,包括一些基本事实、规则和其他相关信息。qa问答算法为通过知识库中的指示进行相似度的检索,得到符合匹配阈值的问题答案。
73.可选的,可以根据预先设定的融合规则,将kbqa问答算法与qa问答算法融合,得到问答融合模型。将目标用户输入语句输入问答融合模型中的kbqa算法与qa算法,确定kbqa算法与qa算法中匹配程度更好的算法的输出作为所述问答融合模型的输出。
74.本发明提供的问答的处理方法,通过对目标用户语句的问答模式进行判断,针对具体的问答模式采取对应问答模式场景的问答处理方式,实现了多种问答场景的高效处理。与此同时,有针对性的通过基于kbqa问答算法与qa问答算法的融合模型对知识型问答的处理,通过增强型意图识别算法对task场景问答的处理,实现了对常规算法的优化,提升了处理效率与准确性。
75.在一个实施例中,根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式,包括:根据预先设定的关键词字典和预先设定的正则表达式,确定所述task场景预设规则;根据自然语言框架rasa框架中内置的多轮对话管理策略,确定所述对话状态检测规则;将所述目标用户语句与所述task场景预设规则匹配,确定所述目标用户语句的问答模式中的场景模式,并将所述目标用户语句与所述对话状态检测规则匹配,确定所述目标用户语句的问答模式中的对话模式。
76.具体地,根据预先设定的关键词字典和预先设定的正则表达式,确定task场景的预设规则,用于匹配task场景的问答语句。将目标用户语句与所述task场景预设规则匹配,对输入的目标用户语句进行判断,确定目标用户语句是否为task场景的问答语句。
77.其次,还对当前目标用户语句是否正在多轮对话状态中进行检测。其中,对多轮对话状态的检测可以通过自然语言框架rasa框架进行检测。rasa框架内置多种多轮对话管理策略,如最常用的“表单”策略,可以方便用户进行多轮对话的设计。所以可以基于rasa框架,确定当前问答是否为多轮对话的问答模式。
78.具体地,rasa的信息处理流程如图2本发明提供的rasa信息处理流程图所示。首先接受目标用户语句信息,并将该信息送到interpreter解析模块,将目标用户语句信息内容转变为一个字典,其中包括原始信息,意图,实体等。接下来会把字典送给跟踪模块tracker,用于记录对话状态并跟踪对话进度的。策略模块policy会接收到tracker当前的状态,并根据这个状态选择一个合适的执行模块action。action一方面会把信息发送给
tracker,让它记录下当前的状态,另一方面还会返回输出结果。
79.将目标用户语句与基于rasa框架对话状态检测规则匹配,确定所述目标用户语句的问答模式是否为多轮对话模式。
80.可以理解的是,通过分层检测的思想,先对问答模式进行判断,再对目标用户语句进行意图识别,在实现多场景情形识别的情况下,提升了意图识别的识别速度。
81.本发明提供的问答的处理方法,通过确定task场景预设规则与对话状态检测规则,实现对目标用户语句的问答模式进行判断,针对具体的问答模式采取对应问答模式场景的问答处理方式,实现了多种问答场景的高效处理。
82.在一个实施例中,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果,包括:获取训练样本,对所述训练样本进行数据增强;根据数据增强后的训练样本,训练语言表征模型bert模型,得到训练后的bert模型;将所述目标用户语句输入所述训练后的bert模型,得到所述目标用户语句的句向量;将所述目标用户语句通过人工设定的特征工程获得稀疏向量;拼接所述句向量和所述稀疏向量,并将拼接后得到的向量输入全连接层与softmax层,确定所述目标用户语句的识别结果。
83.本发明提出一种增强型意图识别算法,根据增强型意图识别算法对目标用户语句的意图进行识别,确定目标用户语句的识别结果,算法的结构图如图3本发明提供的增强型意图识别算法结构图所示。
84.增强型意图识别算法从网络结构上将输入端分为两部分进行处理。左端分支是通过将目标用户语句输入训练后的语言表征模型bert模型得到目标用户语句的句向量。其中,bert模型是基于数据增强后的训练样本进行训练的。右端的分支包括将目标用户语句通过人工设定的特征工程获得稀疏向量。其中特征工程可以选取可以辅助提升意图识别的特征,如表1特征工程设定表所示:
85.表1特征工程设定表
86.feature1feature2feature3feature4......匹配**正则匹配ip正则包含某字典以**开头......
87.将左端分支得到的句向量与右端分支得到的稀疏向量进行拼接操作。可以理解为,右端的向量是为了给左端bert输出的向量增加辅助分类的特征信息。拼接后的向量再连接全连接层与softmax层,整个增强型意图识别模型的网络结构便构建完毕。
88.将目标用户语句输入构建好的增强型意图识别模型得到对应的句向量和稀疏向量,拼接所述句向量和所述稀疏向量,并将拼接后得到的向量输入全连接层与softmax层,最终确定目标用户语句的识别结果。在实际生产环境中,通过增强型意图识别算法,对以往较难识别的用户语句的意图识别能力有明显提升。
89.本发明提供的问答的处理方法,通过对常规意图识别算法进行改进,构建增强型意图识别算法,提高了目标用户语句的意图识别效率与识别准确性。
90.在一个实施例中,对所述训练样本进行数据增强,包括:对所述训练样本中与意图分类无关的词槽进行标记;根据人工确定的种子负样本与所述意图分类无关的词槽,生成训练负样本;将所述训练样本进行分词,对分词后得到的词槽中未标记的词槽进行近义词替换;对近义词替换后的样本进行过采样,平衡不同类别的样本数量,得到均衡样本;将所述训练负样本和所述均衡样本,作为数据增强后的训练样本。
91.可选的,对训练样本进行数据增强的步骤可以如图4本发明提供的样本数据增强流程图所示。对训练样本进行数据增强的步骤可以包括数据标记、生成负样本、数据增强、过采样。
92.数据标记:在确定原始意图训练样本时,将其中与意图分类无关的词槽标记出来。这些词槽对意图分类无关但是经常变换影响意图识别模型的训练。例如“创建[集群001]的群组”,可以将“集群001”用中括号标记,这样做的目的是为了在下一步的负样本生成时可以自动识别。
[0093]
生成负样本:负样本可以分为两部分,种子负样本与自动生成的负样本。种子负样本是在编写训练样本时通过人工整理的特别设计的样本,这些样本容易与正类别意图混淆。自动生成的负样本是数据标记中标记出来的与意图分类无关的词槽样本,将它们自动的补充到负样本的类别中。这样可以在强型意图识别算法中,训练模型可以准确学习到样本中词的权重,降低正类别中词槽的权重同时升高关键词的权重。
[0094]
数据增强:通过采用近义词替换的方式来扩展样本较少的类别。在实现过程中,通过分词后的样本进行近义词替换。其中,不对数据标记步骤中标记的词槽进行替换。例如,原始目标用户输入语句为“如何启动hadoop”,通过分词后变成“如何”、“启动”、“hadoop”,进行近义词替换后得到“怎么”、“开启”、“hadoop”。
[0095]
过采样:经过近义词数据增强后的样本多数情况下可以达到数据均衡,个别类别可能会由于词语的近义词数量不够而增加后的样本依然较少。可以采用过采样的方法来提升这些类别的样本数量。
[0096]
本发明提供的问答的处理方法,通过对训练样本进行数据增强,将训练样本输入增强型意图识别模型进行训练,从而根据增强型意图识别算法对task场景问答的处理,提升了增强型意图识别算法的准确性。
[0097]
在一个实施例中,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果,包括:将所述目标用户语句并行输入所述kbqa问答算法与所述qa问答算法;根据所述kbqa问答算法确定所述目标用户语句的kbqa匹配结果,根据所述qa问答算法确定所述目标用户语句的qa匹配结果;根据预先设置的优先级,将所述kbqa匹配结果与所述qa匹配结果中优先级高的匹配结果作为所述问答融合模型的匹配结果;其中,所述qa问答算法中的匹配是基于余弦相似度匹配确定的。
[0098]
可选的,kbqa问答算法与qa问答算法均属于对知识库中存储的知识进行检索,均为通过对存在库中的知识进行相似度的检索,得到符合阈值的问题答案。
[0099]
kbqa问答算法采用基于语义解析的方式,对输入的目标用户语句进行命名实体识别与关系抽取操作,将得到的实体与关系放到图数据库中进行检索得到答案。
[0100]
qa问答算法引入es(elasticsearch,相似度搜索)进行相似问题检索。es中除了倒排索引可以采用基于tf-idf的向量化方式与余弦相似度进行相似向量的匹配。
[0101]
其中,相似度算法采用余弦相似度,计算公式如下:
[0102][0103]
其中,cosθ为余弦相似度值,a为输入的目标用户语句,b为存入库中的每条候选语句。
[0104]
在实际上线时,可以先将向量a,b进行单位化处理,这样公式中的分母为1,只需要计算分子的部分即可。cos余弦角度越接近1,那么两个向量的相似度就越接近,则目标用户语句与存入库中的候选语句的相似度就越高。es接收到用户输入数据后,首先通过倒排索引找到若干个候选问题,再通过余弦相似度公式得出相似度数值,最后通过降序排序,找到最相似的匹配结果。
[0105]
可选的,可以采用python多线程的方式,将目标用户语句并行输入kbqa算法与qa算法,可以同时给出预测结果。在实际生产环境中,kbqa和qa的查询耗时均在300ms~400ms左右,如果串行的执行查询操作总耗时在700ms~800ms左右,而并行查询则仅需400ms,大幅缩短了问答响应时间。
[0106]
并行查询得到结果后,为了找到更加匹配的答案,需要问答融合模型的融合的规则。如图5本发明提供的融合规则流程图所示。可以设定答案选择的优先级,定级标准可以根据2个kbqa算法与qa算法的性能高低情况、图谱和问答对的数据的质量、大小情况确定。其中,kbqa算法由于需要命名实体识别和关系抽取的2大步骤,整体的算法问答匹配效果优于qa问答算法。当两个算法都查询到结果时,优先选择图谱问答的结果作为答案。但当qa算法以极高的相似度匹配中了结果,此时需要优选qa算法的匹配结果。因为问答对的答案一般是人工整理的,匹配结果一般比kbqa算法返回的结果更加合理。
[0107]
本发明提供的问答的处理方法,通过对kbqa问答算法与qa问答算法进行融合,得到问答融合模型。通过问答融合模型,实现了对知识型问答的高性能处理。
[0108]
在一个实施例中,在所述目标用户语句与所述问答融合模型不匹配的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;在所述增强型意图识别算法无法识别所述目标用户语句情况下,根据默认的回答策略,输出回答结果。
[0109]
具体地,在确定目标用户语句与问答融合模型不匹配的情况下,将用户语句输入增强型意图识别算法进一步确定目标用户语句的识别结果。若确定增强型意图识别算法无法识别目标用户语句,可以根据默认的回答策略,输出回答结果。
[0110]
可以理解的是,确定目标用户语句与问答融合模型不匹配的情况下,可以说明目标用户语句极可能为基础闲聊问答,所以可以根据增强型意图识别算法实现对目标用户语句的意图识别。
[0111]
可选的,例如用户随意输入了一串随机字符“asdfgh”,则可以通过rasa框架的fallbackpolicy策略给出设定好的默认回答,如“我还不理解您的意思,请换个说法”。
[0112]
本发明提供的问答的处理方法,通过对目标用户语句的问答模式进行判断,针对具体的问答模式采取对应问答模式场景的问答处理方式,实现了多种问答场景的高效处理。在增强型意图识别算法无法识别目标用户语句情况下,根据默认的回答策略,输出回答结果,实现了无法识别用户意图时,可以对相应应答的设置。
[0113]
在一个实施例中,在所述增强型意图识别算法无法识别所述目标用户语句情况下,根据预设的修正规则,调整所述增强型意图识别算法的识别率,输出回答结果。
[0114]
可选的,在确定增强型意图识别算法无法识别所述目标用户语句情况下,基于预先设定的修正规则,对增强型意图识别算法的识别率进行修正,修正识别率后再次进行增强型意图识别算法的识别,输出识别的回答结果。修正的目的是应对一些边缘场景语句,例
如“创建执行重启hadoop集群作业群组”,此时模型直接判断有时候会给出一个不高的识别率,但是这种问句属于“创建**群组”的标准问句,可以通过修正识别率,输出再次识别的结果。
[0115]
本发明提供的问答的处理方法,通过根据预设的修正规则,调整所述增强型意图识别算法的识别率,在增强型意图识别算法无法识别所述目标用户语句情况下,依然实现回答结果的输出。实现了对目标用户语句识别的全方位覆盖。
[0116]
下面以一应用本发明提供的问答的处理方法的流程示意图图6为例,说明本发明提供的技术方案:
[0117]
对目标用户语句的处理架构流程将task场景、kbqa问答、qa问答以及闲聊场景4种问答场景检测融合为一体,整体架构设计采用分层的模块化的思想进行设计,可以拆分为4部分part1~part4。
[0118]
part1部分针对task场景问答定义了task场景检测与对话状态检测2种功能。根据task场景预设规则与对话状态检测规则对目标用户语句进行匹配检测,判断当前目标用户语句是否属于task场景规则或此时的对话是否正处于多轮对话中。
[0119]
part2部分包括图谱kbqa问答与qa问答组成的问答融合模型。在确定问答模式不属于task场景模式,并且问答模式为非多轮对话模式的情况下,目标用户语句在这里会并行传入这两部分进行kbqa问答与qa问答的匹配。
[0120]
part3部分处理闲聊语句与部分在part1中未能满足预设规则的task场景语句。通过在part3部分嵌入增强型意图识别算法实现。增强型意图识别算法实现对part2中未能匹配的目标用户语句进行识别。同时,还设置默认回答策略,当最终无法识别用户意图时,可以设置默认回答策略完成应答。
[0121]
part4部分接收满足part1要求的目标用户语句,即满足问答模式属于task场景模式,或者满足问答模式为多轮对话模式。通过与part3中相同增强型意图识别算法模型进行意图识别。与此同时,增加准确率修正的部分,因此所有经过该模块的语句都会在后续满足设定的阈值。
[0122]
本发明还提供一种问答的处理装置,该装置与上文描述的问答的处理方法可相互对应参照。
[0123]
图7为本发明提供的问答的处理装置的结构示意图,如图7所示,该装置包括:
[0124]
问答模式确定模块710,用于根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;
[0125]
问答融合模型匹配模块720,用于在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果;
[0126]
增强型意图识别算法匹配模块730,用于在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;
[0127]
其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。
[0128]
本发明提供的问答的处理装置,通过对目标用户语句的问答模式进行判断,针对
具体的问答模式采取对应问答模式场景的问答处理方式,实现了多种问答场景的高效处理。与此同时,有针对性的通过基于kbqa问答算法与qa问答算法的融合模型对知识型问答的处理,通过增强型意图识别算法对task场景问答的处理,实现了对常规算法的优化,提升了处理效率与准确性。
[0129]
在一个实施例中,问答模式确定模块710具体用于:
[0130]
根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式,包括:
[0131]
根据预先设定的关键词字典和预先设定的正则表达式,确定所述task场景预设规则;
[0132]
根据自然语言框架rasa框架中内置的多轮对话管理策略,确定所述对话状态检测规则;
[0133]
将所述目标用户语句与所述task场景预设规则匹配,确定所述目标用户语句的问答模式中的场景模式,并将所述目标用户语句与所述对话状态检测规则匹配,确定所述目标用户语句的问答模式中的对话模式。
[0134]
在一个实施例中,问答融合模型匹配模块720具体用于:
[0135]
将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果,包括:
[0136]
获取训练样本,对所述训练样本进行数据增强;
[0137]
根据数据增强后的训练样本,训练语言表征模型bert模型,得到训练后的bert模型;
[0138]
将所述目标用户语句输入所述训练后的bert模型,得到所述目标用户语句的句向量;
[0139]
将所述目标用户语句通过人工设定的特征工程获得稀疏向量;
[0140]
拼接所述句向量和所述稀疏向量,并将拼接后得到的向量输入全连接层与softmax层,确定所述目标用户语句的识别结果。
[0141]
在一个实施例中,问答融合模型匹配模块720还具体用于:
[0142]
对所述训练样本进行数据增强,包括:
[0143]
对所述训练样本中与意图分类无关的词槽进行标记;
[0144]
根据人工确定的种子负样本与所述意图分类无关的词槽,生成训练负样本;
[0145]
将所述训练样本进行分词,对分词后得到的词槽中未标记的词槽进行近义词替换;
[0146]
对近义词替换后的样本进行过采样,平衡不同类别的样本数量,得到均衡样本;
[0147]
将所述训练负样本和所述均衡样本,作为数据增强后的训练样本。
[0148]
在一个实施例中,问答融合模型匹配模块720还具体用于:
[0149]
将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果,包括:
[0150]
将所述目标用户语句并行输入所述kbqa问答算法与所述qa问答算法;
[0151]
根据所述kbqa问答算法确定所述目标用户语句的kbqa匹配结果,根据所述qa问答算法确定所述目标用户语句的qa匹配结果;
[0152]
根据预先设置的优先级,将所述kbqa匹配结果与所述qa匹配结果中优先级高的匹配结果作为所述问答融合模型的匹配结果;
[0153]
其中,所述qa问答算法中的匹配是基于余弦相似度匹配确定的。
[0154]
在一个实施例中,增强型意图识别算法匹配模块730具体用于:
[0155]
在所述目标用户语句与所述问答融合模型不匹配的情况下,
[0156]
将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;
[0157]
在所述增强型意图识别算法无法识别所述目标用户语句情况下,根据默认的回答策略,输出回答结果。
[0158]
在一个实施例中,增强型意图识别算法匹配模块730还具体用于:
[0159]
在所述增强型意图识别算法无法识别所述目标用户语句情况下,
[0160]
根据预设的修正规则,调整所述增强型意图识别算法的识别率,输出回答结果。
[0161]
本发明还提供一种电子设备,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(communication interface)820、存储器(memory)830和通信总线(bus)840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行问答的处理方法的步骤,例如包括:
[0162]
根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;
[0163]
在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果;
[0164]
在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;
[0165]
其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。
[0166]
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0167]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的问答的处理方法的步骤,例如包括:
[0168]
根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;
[0169]
在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情
况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果;
[0170]
在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;
[0171]
其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。
[0172]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例提供的问答的处理方法的步骤,例如包括:
[0173]
根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;
[0174]
在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果;
[0175]
在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;
[0176]
其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。
[0177]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0178]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0179]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
技术特征:
1.一种问答的处理方法,其特征在于,包括:根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果;在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。2.根据权利要求1所述的问答的处理方法,其特征在于,所述根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式,包括:根据预先设定的关键词字典和预先设定的正则表达式,确定所述task场景预设规则;根据自然语言框架rasa框架中内置的多轮对话管理策略,确定所述对话状态检测规则;将所述目标用户语句与所述task场景预设规则匹配,确定所述目标用户语句的问答模式中的场景模式,并将所述目标用户语句与所述对话状态检测规则匹配,确定所述目标用户语句的问答模式中的对话模式。3.根据权利要求1所述的问答的处理方法,其特征在于,所述将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果,包括:获取训练样本,对所述训练样本进行数据增强;根据数据增强后的训练样本,训练语言表征模型bert模型,得到训练后的bert模型;将所述目标用户语句输入所述训练后的bert模型,得到所述目标用户语句的句向量;将所述目标用户语句通过人工设定的特征工程获得稀疏向量;拼接所述句向量和所述稀疏向量,并将拼接后得到的向量输入全连接层与softmax层,确定所述目标用户语句的识别结果。4.根据权利要求3所述的问答的处理方法,其特征在于,所述对所述训练样本进行数据增强,包括:对所述训练样本中与意图分类无关的词槽进行标记;根据人工确定的种子负样本与所述意图分类无关的词槽,生成训练负样本;将所述训练样本进行分词,对分词后得到的词槽中未标记的词槽进行近义词替换;对近义词替换后的样本进行过采样,平衡不同类别的样本数量,得到均衡样本;将所述训练负样本和所述均衡样本,作为数据增强后的训练样本。5.根据权利要求1所述的问答的处理方法,其特征在于,所述将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果,包括:将所述目标用户语句并行输入所述kbqa问答算法与所述qa问答算法;根据所述kbqa问答算法确定所述目标用户语句的kbqa匹配结果,根据所述qa问答算法确定所述目标用户语句的qa匹配结果;根据预先设置的优先级,将所述kbqa匹配结果与所述qa匹配结果中优先级高的匹配结果作为所述问答融合模型的匹配结果;其中,所述qa问答算法中的匹配是基于余弦相似度匹配确定的。
6.根据权利要求1所述的问答的处理方法,其特征在于,在所述目标用户语句与所述问答融合模型不匹配的情况下,将所述目标用户语句输入所述增强型意图识别算法,确定所述目标用户语句的识别结果;在所述增强型意图识别算法无法识别所述目标用户语句情况下,根据默认的回答策略,输出回答结果。7.根据权利要求1所述的问答的处理方法,其特征在于,在所述增强型意图识别算法无法识别所述目标用户语句情况下,根据预设的修正规则,调整所述增强型意图识别算法的识别率,输出回答结果。8.一种问答的处理装置,其特征在于,包括:问答模式确定模块,用于根据task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;问答融合模型匹配模块,用于在所述问答模式不属于task场景模式,并且所述问答模式为非多轮对话模式的情况下,将所述目标用户语句输入问答融合模型,确定所述目标用户语句与所述问答融合模型的匹配结果;增强型意图识别算法匹配模块,用于在所述问答模式属于task场景模式,或者所述问答模式为多轮对话模式的情况下,将所述目标用户语句输入增强型意图识别算法,确定所述目标用户语句的识别结果;其中,所述问答融合模型是基于图谱kbqa问答算法与问答对qa问答算法融合得到的。9.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的问答的处理方法的步骤。10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的问答的处理方法的步骤。
技术总结
本发明提供一种问答的处理方法及装置,涉及计算机技术领域。所述方法包括:根据Task场景预设规则与对话状态检测规则,确定目标用户语句的问答模式;在问答模式不属于Task场景模式,并且问答模式为非多轮对话模式的情况下,将目标用户语句输入问答融合模型,确定目标用户语句与问答融合模型的匹配结果;在问答模式属于Task场景模式,或者问答模式为多轮对话模式的情况下,将目标用户语句输入增强型意图识别算法,确定目标用户语句的识别结果。本发明提供的问答的处理方法及装置,通过针对具体的问答模式采取对应问答模式场景的问答处理方式,并对问答识别算法进行优化,实现了多种问答场景的高效处理。答场景的高效处理。答场景的高效处理。
技术研发人员:段德峰 谢军 马维晶 刘虹 王璐 黄丽云 马建军 张珍 张松蕾 胡建村
受保护的技术使用者:中国移动通信集团有限公司
技术研发日:2022.01.04
技术公布日:2023/7/22
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
