基于提示学习的意图识别方法、问答方法及装置与流程
1.本公开属于自然语言处理技术领域,具体涉及一种基于提示学习的意图识别方法、问答方法及装置。
背景技术:
2.随着电信网络地不断发展,通信网络技术框架在业务场景中广度、深度地结合,相关知识数据逐渐复杂化、海量化。
3.目前,可以向用户提供电信网络的架构、运维等知识的相关问答服务。具体的,通常采用先预训练再微调的方式,通过分词器对用户提供的问题进行分词处理,再对分词后的词组进行向量化表示,并采用预训练语言模型基于向量化的词组进行文本分类,以确定用户提问的意图;进一步的,基于用户提问的意图查询并返回问题对应的答案。
4.但是,一方面,在电信网络领域的知识问答中,用户提供的问题可能包含各种知识,而采用分词器对问题进行分词易破坏问题中知识结构的完整性;另一方面,为了涵盖各种知识领域,有效识别用户提问的意图,通常需要构建大量的训练样本,且可能存在下游任务微调和预训练语言模型不匹配现象,需要对预训练语言模型的参数进行修改以适应下游任务,训练效率低,并且也可能存在对预训练语言模型的数据挖掘不充分导致分类准确性低的问题。
技术实现要素:
5.本公开实施例的目的是提供一种基于提示学习的意图识别方法、问答方法及装置,能够解决在电信网络领域的知识问答中,需要大量的训练样本,且模型训练效率低,以及对预训练语言模型的数据挖掘不充分导致分类准确性低的问题。
6.为了解决上述技术问题,本公开是这样实现的:
7.第一方面,本公开提供了一种基于提示学习的意图识别方法,该方法可以包括:接收第一查询文本;根据提示学习范式在第一查询文本中添加第一提示文本,获得第二查询文本,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测;将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的第一预测意图。
8.可选地,接收第一查询文本之前,方法还包括:获取第三查询文本,以及第二查询文本对应的实际意图;根据第三查询文本与实际意图间的关联关系确定提示学习范式,并根据提示学习范式在第三查询文本中添加第二提示文本,获得第四查询文本;将第四查询文本输入预训练语言模型中,以获取预训练语言模型基于第二提示文本对第三查询文本输出的第二预测意图;调整提示学习范式,以使实际意图与第二预测意图满足分类目标。
9.可选地,根据提示学习范式在第一查询文本中添加第一提示文本,获得第二查询文本,包括:根据提示学习范式获取第一查询文本对应的触发词;在第一查询文本中添加触发词和掩码,获得第二查询文本,触发词用于提示预训练语言模型对第一查询文本的查询
意图进行预测,掩码用于指代第一查询文本的查询意图。
10.可选地,将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的第一预测意图,包括:将第二查询文本输入预训练语言模型中,以使预训练语言模型在触发词的提示下,基于第一查询文本对掩码进行预测,获得第一查询文本的第一预测意图。
11.可选地,在第一查询文本中添加触发词和掩码,获得第二查询文本,包括:在查询文本中添加触发词和掩码,以及触发词对应的至少两个分类项,获得第二查询文本。
12.可选地,将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的第一预测意图,包括:将第二查询文本输入预训练语言模型中,以使预训练语言模型在触发词的提示下,基于第一查询文本在分类项中对掩码进行预测,获得第一查询文本的第一预测意图。
13.可选地,将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于提示文本对查询文本的预测意图,包括:将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的预测值;根据预测值在映射表中确定第一查询文本对应的第一预测意图,映射表定义预测意图与预测值的映射关系,每一预测意图对应至少一个预测值。
14.第二方面,本公开还提供了一种问答方法,该方法可以包括:接收第一查询文本,并获取第一查询文本对应的第一预测意图,第一预测意图采用第一方面的基于提示学习的意图识别方法得到;基于第一预测意图对第一查询文本进行命名实体识别;在知识图谱中根据第一预测意图、命名实体获取第一查询文本对应的答案文本。
15.第三方面,本公开还提供了一种基于提示学习的意图识别装置,该装置可以包括:文本接收模块,用于接收第一查询文本;文本构建模块,用于根据提示学习范式在第一查询文本中添加第一提示文本,获得第二查询文本,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测;分类预测模块,用于将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的第一预测意图。
16.可选地,文本接收模块,还用于获取第三查询文本,以及第二查询文本对应的实际意图;文本构建模块,还用于根据第三查询文本与实际意图间的关联关系确定提示学习范式,并根据提示学习范式在第三查询文本中添加第二提示文本,获得第四查询文本;分类预测模块,还用于将第四查询文本输入预训练语言模型中,以获取预训练语言模型基于第二提示文本对第三查询文本输出的第二预测意图;文本构建模块,还用于调整提示学习范式,以使实际意图与第二预测意图满足分类目标。
17.可选地,文本构建模块,具体用于根据提示学习范式获取第一查询文本对应的触发词;在第一查询文本中添加触发词和掩码,获得第二查询文本,触发词用于提示预训练语言模型对第一查询文本的查询意图进行预测,掩码用于指代第一查询文本的查询意图。
18.可选地,分类预测模块,具体用于将第二查询文本输入预训练语言模型中,以使预训练语言模型在触发词的提示下,基于第一查询文本对掩码进行预测,获得第一查询文本的第一预测意图。
19.可选地,文本构建模块,具体用于在查询文本中添加触发词和掩码,以及触发词对
应的至少两个分类项,获得第二查询文本。
20.可选地,分类预测模块,具体用于将第二查询文本输入预训练语言模型中,以使预训练语言模型在触发词的提示下,基于第一查询文本在分类项中对掩码进行预测,获得第一查询文本的第一预测意图。
21.可选地,分类预测模块,具体用于将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的预测值;根据预测值在映射表中确定第一查询文本对应的第一预测意图,映射表定义预测意图与预测值的映射关系,每一预测意图对应至少一个预测值。
22.第四方面,本公开还提供了一种问答装置,该装置可以包括:文本分类模块,用于接收第一查询文本,并获取第一查询文本对应的第一预测意图,第一预测意图采用第三方面的基于提示学习的意图识别装置得到;实体识别模块,用于基于第一预测意图对第一查询文本进行命名实体识别;答案查询模块,用于在知识图谱中根据第一预测意图、命名实体获取第一查询文本对应的答案文本。
23.第五方面,本公开提供了一种电子设备,该电子设备包括处理器、存储器及存储在该存储器上并可在该处理器上运行的程序或指令,该程序或指令被该处理器执行时实现如第一方面的基于提示学习的意图识别方法,或第二方面的问答方法。
24.第六方面,本公开提供了一种可读存储介质,可读存储介质上存储程序或指令,该程序或指令被处理器执行时实现如第一方面的基于提示学习的意图识别方法,或第二方面的问答方法。
25.第七方面,本公开提供了一种芯片,该芯片包括处理器和通信接口,通信接口和处理器耦合,该处理器用于运行程序或指令,实现如第一方面的基于提示学习的意图识别方法,或第二方面的问答方法。
26.第八方面,本公开提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如实现如第一方面的基于提示学习的意图识别方法,或第二方面的问答方法。
27.在本公开提供的基于提示学习的意图识别方法中,该方法对接收到的第一查询文本进行重构,根据提示学习范式在第一查询文本中添加第一提示文本,以获得第二查询文本,并将第二查询文本输入预训练语言模型中,以使预训练语言模型就第一提示文本对第一查询本文进行预测,获得第一查询文本对应的第一预测意图,其中,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测。上述方法无需对第一查询文本进行分词处理,而是采用预训练语言模型对第一查询文本整体进行预测,避免了分词对知识结构的破坏,在保持完整性的情况下能够更充分地利用预训练语言模型的信息,提高了分类的准确率;同时,采用提示学习范式对第一查询文本进行重构,将下游分类任务转换成了适配预训练语言的预测任务,提高了预训练语言模型与下游任务的适配度,从而提高了预训练语言模型对查询意图预测的准确率。
附图说明
28.图1为本公开实施例提供的基于提示学习的意图识别方法的步骤流程图之一;
29.图2为本公开实施例提供的基于提示学习的意图识别方法的步骤流程图之二;
30.图3为本公开实施例提供的一种预训练语言模型的结构示意图;
31.图4为本公开实施例提供的基于提示学习的意图识别方法的步骤流程图之三;
32.图5为本公开实施例提供的一种问答方法的步骤流程图;
33.图6为本公开实施例提供的一种5g通信网络知识图谱的示意图;
34.图7为本公开实施例提供的基于提示学习的意图识别装置的结构示意图;
35.图8为本公开实施例提供的问答装置的结构示意图
36.图9为本公开实施例提供的一种电子设备的结构示意图;
37.图10为本公开实施例提供的一种电子设备的硬件示意图。
具体实施方式
38.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
39.本公开的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
40.下面结合附图,通过具体的实施例及其应用场景对本公开实施例提供的电信产品生成进行详细地说明。
41.图1为本公开实施例提供的基于提示学习的意图识别方法的步骤流程图之一。如图1所示,该方法可以包括如下步骤101至步骤103。
42.步骤101、接收第一查询文本。
43.其中,第一查询文本可以是由查询方提供的,用于表示查询方查询意图的文本,查询意图可以表示查询方的查询目的,以描述对第一查询文本对应查询结果的预期。根据不同的应用场景,查询意图可以有不同的分类,从而可以通过对第一查询文本进行文本分类,以表示查询方基于第一查询文本的查询意图。在本公开实施例中,第一查询文本可以通过接收查询方输入的文本获得,也可以通过接收查询方输入的语音、图像等非文本数据转化获得。
44.本公开实施例中,第一查询文本可以是表示查询意图的完整问题句子,如第一查询文本可以是“为什么a会故障”、“a发生故障的原因是哪些”,或者“a的故障包括哪些”、“a可能发生哪几种故障”等;第一查询文本也可以是表示查询意图的查询词,如可以是“a的故障”、“种类”等。
45.步骤102、根据提示学习范式在第一查询文本中添加第一提示文本,获得第二查询文本,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测。
46.其中,第一预测意图可以是基于第一查询文本对查询方的查询意图预测结果,则提示学习范式可以包括一种或两种以上第一提示文本,以表示第一查询文本与其查询意图间的关联关系,如“问题-答案”、“现象-原因”、“实体-种类”等关联关系。第一提示文本可以提示预训练语言模型对第一查询文本表示的查询意图进行预测,在此基础上,第一提示文本可以是基于“问题-答案”的关联关系可以添加“···
的答案是”的第一提示文本;基于“现象-原因”的关联关系可以添加“···
是因为”、“···
的原因是”的第一提示文本;基于“实体-种类”的关联关系可以添加“···
包括”、“···
有”等。
47.本公开实施例中,提示学习范式可以有一种或两种以上,每种提示学习范式所采用的提示文本可以通过预先训练确定,通过调整提示学习范式所采用的提示文本,以使后续预训练语言模型能够更好地理解预测任务,使得预测意图能够更充分、准确地表示查询方的查询意图。
48.如,第一查询文本为“为什么a会故障”,则提示学习范式表示“问题-答案”的关联关系时,第一提示文本可以是“答案是”,获得的第二查询文本可以是“为什么a会故障,答案是
···”;第一查询文本为“a的故障”、“原因”,则提示学习范式表示“现象-原因”,第一提示文本可以是“是因为”,获得的第二查询文本可以是“a的故障,是因为
···”;或者,第一查询文本为“a的故障”、“种类”,则提示学习范式表示“实体-种类”,获得的第二查询文本可以是“a故障的种类,包括了
···”。
49.步骤103、将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的第一预测意图。
50.需要说明的是,预训练语言模型(plms,pre-trained language models)是一种通过预先收集无标签的文本数据进行自监督学习获得的模型,该预训练过程通常在文本数据中随机mask(掩码)句子的词语以构造监督信息,模型通过对被mask的词语进行预测以学习句子与词语间的关系,预训练语言模型通常具有大量丰富的文本信息。在目前的方案中,对查询文本通常先进行分词,再通过预训练语言模型对分词进行表征,进一步再通过分类器基于该表征对分词进行分类,从而确定查询方通过查询文本表示的查询意图。但是,该方案中下游分类任务确定分词在固定分类中的归属,在基于分词的分类结果对预训练语言模型进行微调时其预测的mask不出现在文本中,使得预训练语言模型的调整目标与训练任务不匹配,不能充分挖掘预训练语言模型的文本信息,且影响表征的准确性,进而影响对查询意图识别的准确性。
51.本公开实施例通过添加第一提示文本对第一查询文本进行重构获得了第二查询文本,从而将下游任务的分类改造为了预测任务,使其适配预训练语言模型的训练任务,再将第二查询文本输入预训练语言模型中。此时,预训练语言模型可以基于第一提示文本在句子中填充第一提示文本对应的提示结果,即在句子中填充第一提示文本对应的第一预测意图,使得在输入完整第一查询文本的情况下,更好地适应预训练语言模型的训练任务,充分利用其包含的文本信息,更准确地识别查询方的查询意图。
52.在本公开实施例中,预训练语言模型可以是根据查询服务相关的领域中大量的语料预训练得到的,预训练语言模型可以是ulmfit(universal language model fine-tuning,通用语言模型微调)、gpt(generative pre-training,生成式的预训练)模型、bert(bidirectional encoder representation from transformer,基于transformer的双向
编码器表示)模型等。其中,采用bert作为预训练语言模型,在文本语料中可以基于自注意力机制关注查询文本中与查询服务领域相关的具体内容,如查询服务提供无线通信领域的知识查询,则可以基于无线通信领域相关的预料训练bert作为预训练语言模型,从而bert在对查询文本进行文本分类、意图识别时能够更关注无线通信领域的具体内容,如无线通信领域的设备、协议、架构和应用等,在查询文本中不包含无线通信领域的内容时,再聚焦于查询无线通信领域相关知识的其他内容,同时bert可以对词向量进行编码,语义信息更加丰富,能够保证对查询文本预测结果的准确性。
53.其中,第一预测意图可以是对第一查询文本对应查询意图的表示,如第二查询文本为“为什么a会故障,答案是
···”,则根据第一提示文本“答案是”,预训练语言模型可以确定第一查询文本对应的第一预测意图为“造成描述现象的原因”;或者,第二查询文本为“a故障的种类,包括了
···”,则根据第一提示文本“包括了
···”,预训练语言模型可以确定第一查询文本对应的第一预测意图为“描述实体的种类”。
54.在本公开提供的基于提示学习的意图识别方法中,该方法对接收到的第一查询文本进行重构,根据提示学习范式在第一查询文本中添加第一提示文本,以获得第二查询文本,并将第二查询文本输入预训练语言模型中,以使预训练语言模型就第一提示文本对第一查询本文进行预测,获得第一查询文本对应的第一预测意图,其中,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测。上述方法无需对第一查询文本进行分词处理,而是采用预训练语言模型对第一查询文本整体进行预测,避免了分词对知识结构的破坏,在保持完整性的情况下能够更充分地利用预训练语言模型的信息,提高了分类的准确率;同时,采用提示学习范式对第一查询文本进行重构,将下游分类任务转换成了适配预训练语言的预测任务,提高了预训练语言模型与下游任务的适配度,从而提高了预训练语言模型对查询意图预测的准确率。
55.图2为本公开实施例提供的基于提示学习的意图识别方法的步骤流程图之二。如图2所示,该方法可以包括如下步骤201至步骤208。
56.步骤201、获取第三查询文本,以及第二查询文本对应的实际意图。
57.其中,第三查询文本可以是查询方在查询服务的相关领域提供的历史查询文本,也可以是根据查询服务的相关领域语料生成的查询文本,实际查询意图可以是对第三查询文本对应查询结果的描述,如实际意图可以是查询“造成描述现象的原因”、“描述操作的流程”、“描述实体的种类”等,本公开实施例对第三查询文本的来源,以及其实际意图不作具体限制。
58.如,根据查询方的输入获取第三查询文本的集合和为x={x1,x2,...,xn},其中n表示文本的长度,在n=128时第三查询文本的长度为128;第三查询文本的实际意图的集合为y={y1,y2,...,ym},其中m表示意图分类的数量,在m=17时实际意图的分类数量可以为17。
59.步骤202、根据第三查询文本与实际意图间的关联关系确定提示学习范式,并根据提示学习范式在第三查询文本中添加第二提示文本,获得第四查询文本。
60.其中,提示学习范式可以根据第三查询文本与实际意图间的关联关系,确定一种以上的第二提示文本构建,如第三查询文本与实际意图可以是“问题-答案”、“现象-原因”、“实体-种类”等关联关系,每种关联关系可以构建对应的第二提示文本,以提示模型对第三
查询文本的预测方向。在此基础上,针对不同的预测方向,可以对第三查询文本添加不同的第二提示文本,从而获得对应的第四查询文本作为训练数据,无需大量采集、构造和表征训练数据集,降低了训练成本,提高了训练效率。此时,提示学习范式可以是包括对应第二提示文本的文本模板,如“xx,第二提示文本,xx”,其中,第二提示文本前可以填充第三查询文本,第二提示文本后可以填充预训练语言模型基于第二提示文本对第三查询文本的预测结果。
61.如,对第三查询文本x基于提示学习范式进行转换,获得第四查询文本x
′
=f
prompt
(x);具体的,第四查询文本可以是x
′
={x,答案是[mask]},其中[mask]用于指代预训练语言模型对第三查询文本x所属意图类别的预测。
[0062]
步骤203、将第四查询文本输入预训练语言模型中,以获取预训练语言模型基于第二提示文本对第三查询文本输出的第二预测意图。
[0063]
其中,第四查询文本符合预训练语言模型的训练任务,通过预训练语言模型学习的句子与词语间的关系,预训练语言模型可以对第四查询文本中被[mask]指代的部分进行预测,以在第二提示文本的提示下,确定第三查询文本的第二预测意图。
[0064]
如,将第四查询文本输入预训练语言模型,通过bert中[mask]对应的预训练的隐藏层矩阵h
[mask]
,预测[mask]指代的词语v,如下公式(1)所示:
[0065][0066]
其中,有v∈v,v为相关知识领域的词表。
[0067]
图3为本公开实施例提供的一种预训练语言模型的结构示意图,如图3所示,以预训练语言模型为bert为例,以token embeddings(词嵌入张量)、segmentation embeddings(语句分块张量)、position embeddings(位置编码张量)三个组成部进行输入表示,得到输入的第二查询文本对应的向量表示;再将该向量表示输入到bertencoder中,bertencoder中包括多层bertlayer0、bertlayer1
······
bertlayern,其中,每一层bertlayer由attention()、intermediate()和output()组成,依次采用自注意力机制、全连接、归一化输出等处理,以获得第三查询文本对应的第二预测意图。
[0068]
步骤204、调整提示学习范式,以使实际意图与第二预测意图满足分类目标。
[0069]
其中,在获得第二预测意图后,可以保持预训练语言模型不变,通过实际意图与第二预测意图调整提示学习范式,以使第二提示文本能够更准确的表征第三查询文本与实际意图间的关联关系,以便预训练语言模型获得更准确的意图识别结果,从而满足对查询文本的分类目标。具体的,分类目标可以如下公式(2)所示:
[0070][0071]
其中,x为x中的第三查询文本,y
x
为第三查询文本对应的实际意图,f
prompt
(x)为x对应的第四查询文本,[mask]在第四查询文本中指代第三查询文本对应的第二预测意图。
[0072]
本公开实施例中,通过公式(2)学习最大化目标,使得调整后的提示学习范式能够使得实际意图与第二预测意图满足上述公式(2)所表示的分类目标,使得预训练语言模型能够基于合适的提示学习范式更好地理解对第三查询文本的预测方向,获得准确的第二预测意图。
[0073]
在本公开的一方法实施例中,提示学习范式还可以包括分类项作为可选项,以进一步提示预训练语言模型对预测结果的预期,如第四查询文本可以是x
′
={xa.y1b.y2c.y3...答案是[mask]},其中,a.y1b.y2c.yf···
等可以包括x对应的实际意图,以及除实际意图外的其他意图分类。预训练语言模型可以根据第四查询文本对[mask]进行预测,以在分类项中确定第二预测意图,在第二预测意图不是实际意图的情况下,对提示学习范式进行调整,以使预训练语言模型更充分地学习第三查询文本与其对应识别意图间的关联关系。
[0074]
步骤205、接收第一查询文本。
[0075]
本公开实施例中,步骤205可对应参照前述步骤101的相关描述,为避免重复,在此不再赘述。
[0076]
步骤206、根据提示学习范式获取第一查询文本对应的触发词。
[0077]
步骤207、在第一查询文本中添加触发词和掩码,获得第二查询文本,触发词用于提示预训练语言模型对第一查询文本的查询意图进行预测,掩码用于指代第一查询文本的查询意图。
[0078]
步骤208、将第二查询文本输入预训练语言模型中,以使预训练语言模型在触发词的提示下,基于第一查询文本对掩码进行预测,获得第一查询文本的第一预测意图。
[0079]
其中,提示学习范式可以确定第一提示文本的文本形式为触发词、掩码的组合,在第一查询文本后添加触发词,并通过掩码指代查询意图,从而提示预训练语言模型对掩码进行预测,以及第一查询文本与对掩码预测结果间的关联关系。具体可对应参照前述步骤101至103、201至204的相关描述,为避免重复,在此不再赘述。
[0080]
在本公开的一方法实施例中,步骤207具体包括:
[0081]
在查询文本中添加触发词和掩码,以及触发词对应的至少两个分类项,获得第二查询文本。
[0082]
则,步骤208具体包括:
[0083]
将第二查询文本输入预训练语言模型中,以使预训练语言模型在触发词的提示下,基于第一查询文本在分类项中对掩码进行预测,获得第一查询文本的第一预测意图。
[0084]
其中,根据第一查询文本可能对应的查询意图,可以确定触发词对应的意图分类,从而可以将多个意图分类作为分类项添加到第一查询文本中,此时,触发词可以提示预训练语言模型在分类项中对掩码进行预测,再确定第一查询文本的第一预测意图。具体可对应参照前述步骤101至103、201至204的相关描述,为避免重复,在此不再赘述。本公开实施例中,通过提供第一预测意图可选的分类项,将下游任务的分类重构呈多项分类项的选择任务,从而进一步提高了模型识别效率。
[0085]
需要说明的是,本公开获取的数据,包括查询文本、实际意图、知识图谱等数据,均在明确告知用户或相关数据所属方对数据的采集内容、数据用途、处理方式等信息后,在用户或相关数据所属方同意、授权的情况下访问、采集、存储并应用于后续分析处理,且可以向用户或相关数据所属方提供访问、更正、删除该数据的途径,以及撤销同意、授权的方法。
[0086]
在本公开提供的基于提示学习的意图识别方法中,该方法对接收到的第一查询文本进行重构,根据提示学习范式在第一查询文本中添加第一提示文本,以获得第二查询文本,并将第二查询文本输入预训练语言模型中,以使预训练语言模型就第一提示文本对第
一查询本文进行预测,获得第一查询文本对应的第一预测意图,其中,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测。上述方法无需对第一查询文本进行分词处理,而是采用预训练语言模型对第一查询文本整体进行预测,避免了分词对知识结构的破坏,在保持完整性的情况下能够更充分地利用预训练语言模型的信息,提高了分类的准确率;同时,采用提示学习范式对第一查询文本进行重构,将下游分类任务转换成了适配预训练语言的预测任务,提高了预训练语言模型与下游任务的适配度,从而提高了预训练语言模型对查询意图预测的准确率。
[0087]
图4为本公开实施例提供的基于提示学习的意图识别方法的步骤流程图之三。如图4所示,该方法可以包括如下步骤401至步骤404。
[0088]
步骤401、接收第一查询文本。
[0089]
步骤402、根据提示学习范式在第一查询文本中添加第一提示文本,获得第二查询文本,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测。
[0090]
本公开实施例中,步骤401至步骤402可对应参照前述步骤101至步骤102的相关描述,为避免重复,在此不再赘述。
[0091]
步骤403、将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的预测值。
[0092]
步骤404、根据预测值在映射表中确定第一查询文本对应的第一预测意图,映射表定义预测意图与预测值的映射关系,每一预测意图对应至少一个预测值。
[0093]
其中,由于对同一意图分类可能存在不同的表述,因此预训练语言模型对不同第一查询文本的不同预测值可能描述同一意图分类,如意图分类为“描述方案的流程”可能存在操作步骤、交互等表述,则预训练语言模型的预测结果为“查询方案的操作步骤”、“查询实体的交互流程”等时可能均指向“描述方案的流程”。因此,可以先对每一意图分类进行标签扩充,建立意图分类与不同预测值间的映射关系,从而根据预训练语言模型的预测值确定第一查询文本实际所属的意图分类。
[0094]
如,对意图分类a,可以定义映射表{a}={a1,a2,...,a
t
}进行标签扩充,其中,t表示对意图分类a标签扩充的数量;在此基础上,当预训练语言模型对[mask]的预测值为a
t
时,根据映射表确定该第一查询文本的第二预测意图为a,其表达函数为p(y|x)=p([mask]=φ(y)|x
′
),该表达函数中y指a在实际意图的集合y中的取值。
[0095]
在本公开提供的基于提示学习的意图识别方法中,该方法对接收到的第一查询文本进行重构,根据提示学习范式在第一查询文本中添加第一提示文本,以获得第二查询文本,并将第二查询文本输入预训练语言模型中,以使预训练语言模型就第一提示文本对第一查询本文进行预测,获得第一查询文本对应的第一预测意图,其中,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测。上述方法无需对第一查询文本进行分词处理,而是采用预训练语言模型对第一查询文本整体进行预测,避免了分词对知识结构的破坏,在保持完整性的情况下能够更充分地利用预训练语言模型的信息,提高了分类的准确率;同时,采用提示学习范式对第一查询文本进行重构,将下游分类任务转换成了适配预训练语言的预测任务,提高了
预训练语言模型与下游任务的适配度,提高了预训练语言模型对查询意图预测的准确率。
[0096]
图5为本公开实施例提供的一种问答方法的步骤流程图,如图5所示,该方法可以包括如下步骤501至步骤503。
[0097]
步骤501、接收第一查询文本,并获取第一查询文本对应的第一预测意图,第一预测意图采用图1至图4任一的基于提示学习的意图识别方法得到。
[0098]
其中,可以接收第一查询文本作为问答交互中的问题文本,步骤501根据接收的第一查询文本确定其对应的第一预测意图可以参照前述步骤步骤101至103、201至208和401至404的相关描述,为避免重复,在此不再赘述。
[0099]
步骤502、基于第一预测意图对第一查询文本进行命名实体识别。
[0100]
其中,在确定第一查询文本的第一预测意图后,可以根据分类的第一预测意图对第一查询文本进行命名实体识别(named entity recognition,ner)。基于第一预测意图,命名实体的类型可以包括问题描述、处理方法、异常原因、时间、知识等。本公开实施例中,命名实体识别可以采用不同的实体识别算法实现,如可以使用lstm(long short-term memory,长短期记忆网络)+crf(conditionalrandom fields,条件随机场)模型,也可以采用隐马尔可夫模型(hiddenmarkovmode,hmm)、最大熵(maxmiumentropy,me)、支持向量机(support vectormachine,svm)等,本公开实施例对此不作具体限制。
[0101]
步骤503、在知识图谱中根据第一预测意图、命名实体获取第一查询文本对应的答案文本。
[0102]
其中,知识图谱可以是根据查询服务相关领域的知识建立的图谱数据,包括该领域的大量案例集、运维数据等,在知识图谱中可以包括查询服务相关领域的知识块数据、知识条目数据等,以便于根据第一查询文本表示的第一预测意图,以及从第一查询文本中根据第一预测意图提取的命名实体,在知识图谱中根据第一预测意图、命名实体查询相关的知识,以获得问题文本对应的答案文本。在本公开实施例中,根据数据采集、分析、处理、查询和存储等的条件需求,可以采用图形数据库管理知识图谱,如采用neo4j数据库管理知识图谱,并基于cypher查询语言在neo4j中获取第一查询文本对应的答案文本。
[0103]
图6为本公开实施例提供的一种5g通信网络知识图谱的示意图,如图6所示,实体可以包括不同的故障现象,如“故障小区”、“设备掉电”等,以及处理不同故障现象的方案,如“自动恢复”、“故障处理”、“处理告警”、“pci修改”、“恢复供电”等等,此时,实体间的关系可以是“执行处理方案的原因”、“修复描述故障的方案”。在接收到用户输入的查询context(第一查询文本)=“cqi优良比会导致那些问题发生?”时,通过前述图1至图4的方案可以可得到context_which_intent(第一预测意图)=“find_reason_cause_which_descrip”(“查询造成描述现象的原因”),基于第一预测意图提取context_which_entity(命名实体)=“cqi优良比”。将上述内容填充到cypher查询语言的查询模板中,获得“match(n:reason{name:context_which_entity}-[r]-》(m:description)return n.name as name)”,通过输出的name获得问题文本对应的答案文本,实现一次问答交互流程。
[0104]
在本公开提供的问答方法中,采用基于提示学习的意图识别方法对第一查询文本进行分类,以确定该查询文本指示的查询意图,具体的对接收到的第一查询文本进行重构,根据提示学习范式在第一查询文本中添加第一提示文本,以获得第二查询文本,并将第二查询文本输入预训练语言模型中,以使预训练语言模型就第一提示文本对第一查询本文进
行预测,获得第一查询文本对应的第一预测意图,其中,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测;再进一步通过第一预测意图对第一查询文本进行命名实体识别,并依据第一预测意图、命名实体在知识图谱中获取第一查询文本对应的答案文本。上述方法无需对第一查询文本进行分词处理,而是采用预训练语言模型对第一查询文本整体进行预测,避免了分词对知识结构的破坏,在保持完整性的情况下能够更充分地利用预训练语言模型的信息,提高了分类的准确率;同时,采用提示学习范式对第一查询文本进行重构,将下游分类任务转换成了适配预训练语言的预测任务,提高了预训练语言模型与下游任务的适配度,提高了预训练语言模型对查询意图预测的准确率;基于对第一查询文本的准确分类能够更好地确定其查询意图,从而向查询方提供针对性更强、更适应查询意图的答案文本。
[0105]
图7为本公开实施例提供的基于提示学习的意图识别装置700的结构示意图,如图7中所示,该装置700可以包括:文本接收模块701,用于接收第一查询文本;文本构建模块702,用于根据提示学习范式在第一查询文本中添加第一提示文本,获得第二查询文本,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测;意图预测模块703,用于将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的第一预测意图。
[0106]
在本公开的一装置实施例中,文本接收模块701,还用于获取第三查询文本,以及第二查询文本对应的实际意图;文本构建模块702,还用于根据第三查询文本与实际意图间的关联关系确定提示学习范式,并根据提示学习范式在第三查询文本中添加第二提示文本,获得第四查询文本;意图预测模块703,还用于将第四查询文本输入预训练语言模型中,以获取预训练语言模型基于第二提示文本对第三查询文本输出的第二预测意图;文本构建模块702,还用于调整提示学习范式,以使实际意图与第二预测意图满足分类目标。
[0107]
在本公开的一装置实施例中,文本构建模块702,具体用于根据提示学习范式获取第一查询文本对应的触发词;在第一查询文本中添加触发词和掩码,获得第二查询文本,触发词用于提示预训练语言模型对第一查询文本的查询意图进行预测,掩码用于指代第一查询文本的查询意图。
[0108]
在本公开的一装置实施例中,意图预测模块703,具体用于将第二查询文本输入预训练语言模型中,以使预训练语言模型在触发词的提示下,基于第一查询文本对掩码进行预测,获得第一查询文本的第一预测意图。
[0109]
在本公开的一装置实施例中,文本构建模块702,具体用于在查询文本中添加触发词和掩码,以及触发词对应的至少两个分类项,获得第二查询文本。
[0110]
在本公开的一装置实施例中,意图预测模块703,具体用于将第二查询文本输入预训练语言模型中,以使预训练语言模型在触发词的提示下,基于第一查询文本在分类项中对掩码进行预测,获得第一查询文本的第一预测意图。
[0111]
在本公开的一装置实施例中,意图预测模块703,具体用于将第二查询文本输入预训练语言模型中,以获取预训练语言模型基于第一提示文本对第一查询文本输出的预测值;根据预测值在映射表中确定第一查询文本对应的第一预测意图,映射表定义预测意图与预测值的映射关系,每一预测意图对应至少一个预测值。
[0112]
本公开实施例提供的基于提示学习的意图识别装置能够实现图1至4方法实施例实现的各个过程,为避免重复,这里不再赘述。
[0113]
在本公开提供的基于提示学习的意图识别装置中,该装置对接收到的第一查询文本进行重构,根据提示学习范式在第一查询文本中添加第一提示文本,以获得第二查询文本,并将第二查询文本输入预训练语言模型中,以使预训练语言模型就第一提示文本对第一查询本文进行预测,获得第一查询文本对应的第一预测意图,其中,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测。上述方法无需对第一查询文本进行分词处理,而是采用预训练语言模型对第一查询文本整体进行预测,避免了分词对知识结构的破坏,在保持完整性的情况下能够更充分地利用预训练语言模型的信息,提高了分类的准确率;同时,采用提示学习范式对第一查询文本进行重构,将下游分类任务转换成了适配预训练语言的预测任务,提高了预训练语言模型与下游任务的适配度,提高了预训练语言模型对查询意图预测的准确率。
[0114]
图8为本公开实施例提供的一种问答装置800的结构示意图。如图8所示,该装置800可以包括:文本分类模块801,用于接收第一查询文本,并获取第一查询文本对应的第一预测意图,第一预测意图采用第三方面的基于提示学习的意图识别装置得到;实体识别模块802,用于基于第一预测意图对第一查询文本进行命名实体识别;答案查询模块803,用于在知识图谱中根据第一预测意图、命名实体获取第一查询文本对应的答案文本。
[0115]
本公开实施例提供的问答装置能够实现图5方法实施例实现的各个过程,为避免重复,这里不再赘述。
[0116]
在本公开提供的问答装置中,采用基于提示学习的意图识别装置对第一查询文本进行分类,以确定该查询文本指示的查询意图,具体的对接收到的第一查询文本进行重构,根据提示学习范式在第一查询文本中添加第一提示文本,以获得第二查询文本,并将第二查询文本输入预训练语言模型中,以使预训练语言模型就第一提示文本对第一查询本文进行预测,获得第一查询文本对应的第一预测意图,其中,提示学习范式用于提供至少一种第一提示文本,第一提示文本用于提示预训练语言模型对第一查询文本表示的查询意图进行预测;再进一步通过第一预测意图对第一查询文本进行命名实体识别,并依据第一预测意图、命名实体在知识图谱中获取第一查询文本对应的答案文本。上述方法无需对第一查询文本进行分词处理,而是采用预训练语言模型对第一查询文本整体进行预测,避免了分词对知识结构的破坏,在保持完整性的情况下能够更充分地利用预训练语言模型的信息,提高了分类的准确率;同时,采用提示学习范式对第一查询文本进行重构,将下游分类任务转换成了适配预训练语言的预测任务,提高了预训练语言模型与下游任务的适配度,提高了预训练语言模型对查询意图预测的准确率;基于对第一查询文本的准确分类能够更好地确定其查询意图,从而向查询方提供针对性更强、更适应查询意图的答案文本。
[0117]
图9为本公开实施例提供的一种电子设备900的结构示意图,如图9所示,该电子设备900可以包括处理器901,存储器902,存储在存储器902上并可在处理器901上运行的程序或指令,该程序或指令被处理器901执行时实现上述电信产品生成实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0118]
需要说明的是,图9示出的电子设备900仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0119]
图10为本公开实施例提供的一种电子设备1000的硬件示意图,如图10所示,电子设备1000包括中央处理单元(central processing unit,cpu)1001,其可以根据存储在rom(read only memory,只读存储器,)1002中的程序或者从存储部分1008加载到ram(random access memory,随机访问存储器)1003中的程序而执行各种适当的动作和处理。在ram 1003中,还存储有系统操作所需的各种程序和数据。cpu 1001、rom 1002以及ram 1003通过总线1004彼此相连。i/o(input/output,输入/输出)接口1005也连接至总线1004。
[0120]
以下部件连接至i/o接口1005:包括键盘、鼠标等的输入部分1006;包括诸如crt(cathode ray tube,阴极射线管)、lcd(liquid crystal display,液晶显示器)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如lan(local area network,无线网络)卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至i/o接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
[0121]
特别地,根据本公开的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(cpu1001)执行时,执行本技术的系统中限定的各种功能。
[0122]
本公开实施例还提供一种可读存储介质,可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述电信产品生成实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0123]
其中,处理器为上述实施例中的电子设备中的处理器。可读存储介质,包括计算机可读存储介质,如rom、ram、磁碟或者光盘等。
[0124]
本公开实施例另提供了一种芯片,芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行程序或指令,实现上述电信产品生成实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0125]
应理解,本公开实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
[0126]
本公开实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如上述的电信产品生成的步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0127]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本公开实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序
来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
[0128]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,电子设备,空调器,或者网络设备等)执行本公开各个实施例的方法。
[0129]
上面结合附图对本公开的实施例进行了描述,但是本公开并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本公开的启示下,在不脱离本公开宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本公开的保护之内。