一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

知识抽取方法、模型的训练方法、装置、设备和介质与流程

2023-02-06 21:30:33 来源:中国专利 TAG:


1.本公开涉及人工智能领域,具体涉及自然语言处理、深度学习、云计算等技术领域,尤其涉及知识抽取方法、知识抽取模型的训练方法、装置、设备和介质。


背景技术:

2.在企业的办公场景中,员工沉淀下来的文本(如知识库文档、会议内容、日报、周报、okr(objectives and key results,目标与关键成果)等)包含许多特定领域的知识att(attention,关注点),不同职能序列的员工根据自身的工作方向会有不同的关注点。如何有效的从这些非结构化的文本中挖掘出有用的关键信息,以辅助知识推荐、提升员工的办公效率是非常重要的。


技术实现要素:

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.根据本公开的还一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开上述一方面提出的知识抽取方法,或者,实现本公开上述另一方面提出的知识抽取模型的训练方法。
29.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
30.附图用于更好地理解本方案,不构成对本公开的限定。其中:
31.图1为本公开实施例一所提供的知识抽取方法的流程示意图;
32.图2为本公开实施例二所提供的知识抽取方法的流程示意图;
33.图3为本公开所提供的知识抽取模型对应的知识抽取框架示意图;
34.图4为本公开实施例三所提供的知识抽取方法的流程示意图;
35.图5为本公开实施例四所提供的知识抽取模型的训练方法的流程示意图;
36.图6为本公开实施例五所提供的知识抽取模型的训练方法的流程示意图;
37.图7为本公开实施例六所提供的知识抽取模型的训练方法的流程示意图;
38.图8为本公开所提供的抽样样例;
39.图9为本公开所提供的基于prompt mrc的特定领域知识点抽取服务的完整流程示意图;
40.图10为本公开实施例七所提供的知识抽取装置的结构示意图;
41.图11为本公开实施例八所提供的知识抽取模型的训练装置的结构示意图;
42.图12示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。
具体实施方式
43.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
44.在企业的办公场景中,员工沉淀下来的文本包含许多特定领域的知识att,如何有效地从这些非结构化的文本中挖掘出有用的关键信息,并根据这些关注信息推荐合适的相关文档、解决方案等,是企业知识管理非常关注的问题之一。
45.尽管员工沉淀下来的文本数量较多,但是由于文本中包含的有效信息比较稀疏,同时也缺乏统一方法获取多种知识类型下的知识信息(或称为知识点),导致在实际场景中构建特定领域信息资源池较为困难。因此,如何挖掘员工产生的文本中的有效信息,以辅助知识推荐、提升办公效率,显得尤为重要。
46.目前,知识信息抽取任务主要分为“嵌套型”(一个知识点可能属于多种知识类型,比如“知识推荐”同时属于产品和算法这两种知识类型)信息抽取任务和“非嵌套型”(一个知识点仅属于一种知识类型)信息抽取任务。
47.其中,“非嵌套型”信息抽取任务大多采用序列标注方式求解,其基本框架为:(1)首先通过深度神经网络(比如cnn(convolutional neural network,卷积神经网络)、lstm(long short-term memory,长短期记忆网络)、transformer等)对输入文本进行编码,提取输入文本的语义特征;(2)再利用crf(conditional random filed,条件随机场)作为序列标注层,预测出知识点的边界(如bio模式,b-知识点开始位置,i-知识点其他位置,o-其他字符),进而解析出最终结果。
48.需要说明的是,以cnn、lstm为代表的传统神经网络方法,需要大量的领域内有监督语料,从头开始训练网络参数,以便模型能较好地学到与任务相关的信息。而大规模预训练模型(比如bert(bidirectional encoder representations from transformer,基于transformer的双向编码器表示)、ernie(enhanced language representation with informative entities,一种知识增强的语义表示模型)等)的出现,不仅缓解了需要大规模语料进行从头训练的困境,同时也丰富了文本的编码表达,带来了更强的语义信息。
49.其中,“嵌套型”信息抽取任务的解决方法是通过构建一个pipelined的模型结构,即先抽取输入文本中所有的实体信息,然后再判断每个实体的实体类型。
50.尽管信息抽取任务在实际业务场景中广泛存在,以神经网络为基础的信息抽取任务具有较多的研究,但在“嵌套型”信息抽取任务和“非嵌套型”信息抽取任务的求解模式上仍然存在如下几个方面的不足:
51.一方面,序列标注方法需要预测知识点(比如实体)中每个字符对应的标签(如bio,b-实体开始位置,i-实体其他位置,o-其他字符)。即,只能将单个标签分配给特定字符,因此只能解决“非嵌套型”信息抽取任务的情况。如果想要通过序列标注的方式处理“嵌套型”信息抽取任务,则需要在输出层训练多个crf层,这样增加了模型的复杂度。
52.另一方面,当前成熟的“嵌套型”信息抽取任务一般是采用pipeline的结构(先抽取输入文本中所有的实体信息,再对实体进行分类),尽管这种方式比较简单,但拆分后的两个子任务都存在概率误差,实体抽取的错误直接会导致整体正确率的降低。而且,将“嵌套型”信息抽取任务和“非嵌套型”信息抽取任务分开考虑本身也不够简洁。
53.针对上述存在的至少一项问题,本公开提出一种知识抽取方法、知识抽取模型的训练方法、装置、设备和介质。
54.下面参考附图描述本公开实施例的知识抽取方法、知识抽取模型的训练方法、装置、设备和介质。
55.图1为本公开实施例一所提供的知识抽取方法的流程示意图。
56.本公开实施例以该知识抽取方法被配置于知识抽取装置中来举例说明,该知识抽取装置可以应用于任一电子设备中,以使该电子设备可以执行知识抽取功能。
57.其中,电子设备可以为任一具有计算能力的设备,例如可以为pc(personal computer,个人电脑)、移动终端、服务器等,移动终端例如可以为车载设备、手机、平板电脑、个人数字助理、穿戴式设备等具有各种操作系统、触摸屏和/或显示屏的硬件设备。
58.如图1所示,该知识抽取方法可以包括以下步骤:
59.步骤101,获取待抽取文本和提示信息,其中,提示信息用于指示待抽取文本中待抽取的信息。
60.在本公开实施例中,待抽取文本可以包括知识库文档、会议内容、日报、周报、okr等,本公开对此不做限制。
61.在本公开实施例中,对待抽取文本的获取方式不作限制,比如,待抽取文本可以是在线采集的,例如待抽取文本可以是通过网络爬虫技术在线采集的,或者,待抽取文本也可以为线下采集,或者,待抽取文本也可以为用户输入的,等等,本公开对此不做限制。
62.在本公开实施例中,提示信息可以用于指示待抽取文本中待抽取的信息。其中,提示信息可以根据需要进行设定。
63.作为一种示例,可以根据特定的领域方向(比如具体的应用领域方向),设定提示信息,比如,当应用领域方向为算法方向时,提示信息可以为“算法方向的技能关注点”,再比如,当应用领域方向为推荐业务方向时,提示信息可以为“推荐业务方向的关注点”,等等,在此不一一列举。
64.作为另一种示例,为了适用于所有的应用领域方向或应用场景,可以设定或构造一个宽泛的提示信息,以应用于不同的知识类型场景。比如,提示信息可以为“文本中的知识点”、“文本中的实体”等。
65.举例而言,假设待抽取文本为“更新用户行为模型:itg更新用户行为模型,提升识别率,依赖地图星云的服务,已与地图星云团队沟通,获取性能测试许可。”,提示信息可以为“文本中的知识点”。
66.步骤102,将待抽取文本和提示信息进行拼接,以得到输入文本。
67.在本公开实施例中,可以将待抽取文本和提示信息进行拼接,得到输入文本。
68.仍以上述示例进行说明,对上述待抽取文本和提示信息进行拼接,得到的输入文本比如可以为“文本中的知识点更新用户行为模型:itg更新用户行为模型,提升识别率,依赖地图星云的服务,已与地图星云团队沟通,获取性能测试许可。”,或者“更新用户行为模
型:itg更新用户行为模型提升识别率依赖地图星云的服务已与地图星云团队沟通获取性能测试许可。文本中的知识点”。
69.需要说明的是,上述对待抽取文本和提示信息进行拼接的示例仅是示例性的,在实际应用中,可以根据需要选择具体的拼接方式,对待抽取文本和提示信息进行拼接,本公开对此不做限制。
70.步骤103,对输入文本进行特征提取,以得到输入文本的语义特征。
71.在本公开实施例中,可以对输入文本进行特征提取,以得到输入文本的语义特征,比如,可以采用bert模型、ernie模型等对输入文本进行特征提取,得到输入文本的语义特征。
72.步骤104,分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,以得到多个知识类型中至少一个知识类型下的知识点。
73.在本公开实施例中,知识点可以包括实体、短语、重要词汇、文本片段等。
74.需要说明的是,知识点的个数可以为一个,或者也可以为多个,本公开对此不做限制。
75.在本公开实施例中,知识类型可以用于指示知识点所属的类型,比如,知识点为“分布式部署”,该知识点所属的类型(即知识类型)可以为“后端”,再比如,知识点为“知识推荐”,该知识点所属的类型(即知识类型)可以为“产品”或“算法”。
76.在本公开实施例中,多个知识类型可以是预先设定的,即多个知识类型是已知的。
77.在本公开实施例中,针对多个知识类型中的任一知识类型,该任一知识类型可以具有对应的知识抽取模型。
78.在本公开实施例中,可以分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,得到多个知识类型中至少一个知识类型下的知识点。
79.也就是说,在分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取后,可以得到多个知识类型中的部分知识类型下的知识点,或者也可以得到多个知识类型中的全部知识类型下的知识点,本公开对此不做限制。
80.本公开实施例的知识抽取方法,通过获取待抽取文本和提示信息,其中,提示信息用于指示待抽取文本中待抽取的信息;将待抽取文本和提示信息进行拼接,以得到输入文本;对输入文本进行特征提取,以得到输入文本的语义特征;分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,以得到多个知识类型中至少一个知识类型下的知识点。由此,可以实现基于多个已知的知识类型对应的知识抽取模型,对待抽取文本中与提示信息匹配的知识点的抽取,不仅可以从待抽取文本中抽取与提示信息匹配的知识点,还可以同时确定该知识点所属的知识类型。而且,可以实现对多个知识类型下的知识点的共同抽取,以满足不同用户的抽取需求。
81.需要说明的是,本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均在征得用户同意的前提下进行,并且均符合相关法律法规的规定,且不违背公序良俗。
82.为了清楚说明本公开上述实施例中是如何分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,以得到多个知识类型中至少一个知识类型下的知识点的,本公开还提出一种知识抽取方法。
83.图2为本公开实施例二所提供的知识抽取方法的流程示意图。
84.如图2所示,该知识抽取方法可以包括以下步骤:
85.步骤201,获取待抽取文本和提示信息,其中,提示信息用于指示待抽取文本中待抽取的信息。
86.步骤202,将待抽取文本和提示信息进行拼接,以得到输入文本。
87.步骤201至步骤202的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
88.在本公开实施例的一种可能的实现方式中,可以在待抽取文本的首个字符之前添加分隔符,并可以在分隔符之前拼接提示信息,其中,提示信息的最后一个字符可以与分隔符相邻。
89.在本公开实施例中,分隔符可以用于隔离待抽取文本和提示信息,比如可以为[sep]。
[0090]
作为一种示例,假设待抽取文本text为“完成模型分布式部署,上线知识推荐项目。”,提示信息prompt为“文本关注点”,在待抽取文本的首个字符之前添加分隔符[sep],并在分隔符之前拼接提示信息,得到的输入文本比如可以为“[cls]文本关注点[sep]完成模型分布式部署,上线知识推荐项目。[sep]”,其中,[cls]为起始符。
[0091]
由此,通过分割符连接待抽取文本和提示信息,即将待抽取文本和提示信息进行拼接,可以便于后续处理中待抽取文本和提示信息之间进行充分的语义交互。
[0092]
在本公开实施例的另一种可能的实现方式中,可以在待抽取文本的最后一个字符之后添加分隔符,并可以在分隔符之后拼接提示信息,其中,提示信息的首个字符可以与分隔符相邻。
[0093]
仍以上述例子进行示例,输入文本比如可以为“[cls]完成模型分布式部署,上线知识推荐项目。[sep]文本关注点[sep]”,其中,[cls]为起始符。
[0094]
由此,可以实现通过不同方式,将待抽取文本和提示信息进行拼接,可以提升该方法的灵活性和适用性。
[0095]
步骤203,对输入文本进行特征提取,以得到输入文本的语义特征。
[0096]
步骤203的解释说明可以参见本公开任一实施例中的相关描述,在此不做赘述。
[0097]
步骤204,针对多个知识类型中的任一知识类型,采用知识类型对应的第一分类网络对语义特征进行分类,以得到第一分类标签。
[0098]
需要说明的是,步骤104中对知识点和知识类型的解释说明同样适用于该实施例中,在此不再赘述。
[0099]
在本公开实施例中,第一分类标签可以用于指示知识点在待抽取文本中的起始位置,即指示知识点的首字符在待抽取文本中的位置。
[0100]
在本公开实施例中,针对多个知识类型中的任一知识类型,该任一知识类型对应的知识抽取模型可以包括第一分类网络,并可以采用该任一知识类型对应的第一分类网络对语义特征进行分类,以得到第一分类标签。
[0101]
需要说明的是,在采用任一知识类型对应的第一分类网络对语义特征进行分类时,得到的第一分类标签的个数可以为但不限于为一个,本公开对此不做限制。
[0102]
作为一种示例,针对任一知识类型,可以采用该任一知识类型对应的第一分类网
络对语义特征进行分类,以得到待抽取文本中各字符的分类标签,并可以从各分类标签中确定第一分类标签。比如,第一分类网络可以为二分类网络,假设二分类网络输出的标签为0表示对应字符不为知识点的首字符,二分类网络输出的标签为1表示对应字符为知识点的首字符,则第一分类标签可以为1的标签。
[0103]
步骤205,采用知识类型对应的第二分类网络对语义特征进行分类,以得到第二分类标签。
[0104]
在本公开实施例中,第二分类标签可以用于指示知识点在待抽取文本中的结束位置,即指示知识点的尾字符在待抽取文本中的位置。
[0105]
在本公开实施例中,针对多个知识类型中的任一知识类型,该任一知识类型对应的知识抽取模型可以包括第二分类网络,并可以采用任一知识类型对应的第二分类网络对语义特征进行分类,以得到第二分类标签。
[0106]
需要说明的是,在采用任一知识类型对应的第二分类网络对语义特征进行分类时,得到的第二分类标签的个数可以为但不限于为一个,本公开对此不做限制。
[0107]
作为一种示例,可以采用该任一知识类型对应的第二分类网络对语义特征进行分类,以得到待抽取文本中各字符的分类标签,并可以从各分类标签中确定第二分类标签。比如,第二分类网络可以为二分类网络,假设二分类网络输出的标签为0表示对应字符不为知识点的尾字符,二分类网络输出的标签为1表示对应字符为知识点的尾字符,则第二分类标签可以为1的标签。
[0108]
步骤206,根据第一分类标签和第二分类标签,确定知识类型下的知识点。
[0109]
在本公开实施例中,可以根据第一分类标签和第二分类标签,确定上述任一知识类型下的知识点。
[0110]
作为一种可能的实现方式,针对任一知识类型,可以对待抽取文本,从该知识类型对应的第一分类标签所指示的知识点的起始位置开始截取,截取至该知识类型对应的第二分类标签所指示的知识点的结束位置,以得到该知识类型下的知识点。
[0111]
作为一种示例,当得到的第一分类标签和第二分类标签的个数均为一个时,对待抽取文本,可以直接从第一分类标签所指示的知识点的起始位置开始截取,截取至第二分类标签所指示的知识点的结束位置,以得到知识类型下的知识点。
[0112]
作为再一种示例,当得到的第一分类标签和第二分类标签的个数均为多个时,比如,第一分类标签包括第一分类标签1和第一分类标签2,第二分类标签包括第二分类标签1和第二分类标签2,对待抽取文本,可以从第一分类标签1所指示的知识点的起始位置开始截取,截取至距离第一分类标签1最近的第二分类标签2(即第二分类标签2对应的字符与第一分类标签1对应的字符之间的距离,小于第二分类标签1对应的字符与第一分类标签1对应的字符之间的距离)所指示的知识点的结束位置,得到某一个知识类型下的知识点1,并可以从第一分类标签2所指示的知识点的起始位置开始截取,截取至距离第一分类标签2最近的第二分类标签1所指示的知识点的结束位置,得到上述某一个知识类型下的知识点2。
[0113]
需要说明的是,上述对待抽取文本中知识类型下的知识点的截取方向可以为从左往右,或者也可以为从右往左等,本公开对此不做限制。
[0114]
由此,可以实现通过第一分类标签和第二分类标签,有效且准确地确定知识类型下的知识点。
[0115]
可以理解的是,第一分类标签和第二分类标签是成对出现的,即每一个知识类型下的知识点均对应着至少一个第一分类标签和至少一个第二分类标签。
[0116]
在本公开的任意一个实施例之中,针对至少一个知识类型的任一知识类型,在确定待抽取文本中知识类型下的知识点之后,可以从资源池中获取与知识类型匹配的候选资源;并可以从各候选资源中,确定与知识类型下的知识点匹配的目标资源,且可以展示目标资源。
[0117]
在本公开实施例中,资源池中可以存储多种知识类型下的信息资源。
[0118]
在本公开实施例中,候选资源可以为资源池中与上述任一知识类型匹配的信息资源,且候选资源的数量可以为一个,或者也可以为多个,本公开对此不做限制。
[0119]
在本公开实施例中,目标资源可以为候选资源中与上述任一知识类型下的知识点匹配的信息资源,且目标资源的数量可以为一个,或者也可以为多个,本公开对此不做限制。
[0120]
举例而言,在企业的办公场景中,在从员工a产生的文本(在本公开中记为待抽取文本)中,挖掘到某个知识类型下的知识点之后,可以从资源池中获取与该知识类型匹配的候选资源,并可以从候选资源中确定与知识类型下的知识点匹配的目标资源,并可以向员工a展示目标资源,以精准地向员工a进行知识推荐,可以提升员工的办公效率。
[0121]
综上,在确定待抽取文本中各知识类型下的知识点之后,可以基于各知识类型和各知识类型下的知识点,准确地从资源池中获取向用户推荐的目标资源,可以改善用户的使用体验。
[0122]
作为一种示例,为了同时实现“嵌套型”信息和“非嵌套型”信息的抽取任务,本公开的知识抽取模型可以在输出端采用2*num(num为知识类型的数量)个二分类网络或二分类模型,即任一知识类型对应的知识抽取模型包括一个用于预测该任一知识类型下的知识点在待抽取文本中的起始位置的第一分类网络,和一个用于预测该任一知识类型下的知识点在待抽取文本中的结束位置的第二分类网络,该知识抽取模型对应的知识抽取网络框架可以如图3所示,由此,该知识抽取模型不仅可以从待抽取文本中抽取与提示信息匹配的知识点,还可以同时确定该知识点所属的知识类型。
[0123]
本公开实施例的知识抽取方法,通过针对多个知识类型中的任一知识类型,采用知识类型对应的第一分类网络对语义特征进行分类,以得到第一分类标签,其中,第一分类标签用于指示知识点在待抽取文本中的起始位置;采用知识类型对应的第二分类网络对语义特征进行分类,以得到第二分类标签,其中,第二分类标签用于指示知识点在待抽取文本中的结束位置;根据第一分类标签和第二分类标签,确定知识类型下的知识点。由此,可以实现通过任一知识类型对应的第一分类网络和第二分类网络对知识点在待抽取文本中起始位置和结束位置的预测,有效且准确的确定与提示信息匹配的知识点。
[0124]
为了清楚说明上述实施例中是如何分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,以得到多个知识类型中至少一个知识类型下的知识点的,本公开还提出一种知识抽取方法。
[0125]
图4为本公开实施例三所提供的知识抽取方法的流程示意图。
[0126]
如图4所示,该知识抽取方法可以包括以下步骤:
[0127]
步骤401,获取待抽取文本和提示信息,其中,提示信息用于指示待抽取文本中待
抽取的信息。
[0128]
步骤402,将待抽取文本和提示信息进行拼接,以得到输入文本。
[0129]
步骤403,对输入文本进行特征提取,以得到输入文本的语义特征。
[0130]
步骤401至步骤403的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
[0131]
步骤404,针对多个知识类型中的任一知识类型,采用知识类型对应的序列标注模型对语义特征进行序列标注,以得到第一标注标签和第二标注标签。
[0132]
需要说明的是,步骤104中对知识点和知识类型的解释说明同样适用于该实施例中,在此不再赘述。
[0133]
在本公开实施例中,第一标注标签可以用于指示知识点在待抽取文本中的起始位置,比如第一标注标签可以用b(begin)表示。
[0134]
在本公开实施例中,第二标注标签可以用于指示知识点在待抽取文本中的结束位置,比如第二标注标签可以用e(end)表示。
[0135]
在本公开实施例中,针对多个知识类型中的任一知识类型,该任一知识类型对应的知识抽取模型可以包括序列标注模型,并可以采用该任一知识类型对应的序列标注模型对语义特征进行序列标注,以得到第一标注标签和第二标注标签。
[0136]
需要说明的是,在采用任一知识类型对应的序列标注模型对语义特征进行序列标注时,得到的第一标注标签和第二标注标签是成对出现的,且第一标注标签和第二标注标签的个数均可以为但不限于为一个,本公开对此不做限制。
[0137]
作为一种示例,针对任一知识类型,可以采用该任一知识类型对应的序列标注模型对语义特征进行序列标注,以得到待抽取文本中各字符的标注标签,从而可以从各标注标签中确定第一标注标签和第二标注标签。比如,可以将标签b作为第一标注标签,将标签e作为第二标注标签。
[0138]
步骤405,根据第一标注标签和第二标注标签,确定知识类型下的知识点。
[0139]
在本公开实施例中,可以根据第一标注标签和第二标注标签,确定上述任一知识类型下的知识点。
[0140]
作为一种可能的实现方式,针对任一知识类型,可以对待抽取文本,可以从该知识类型对应的第一标注标签所指示的知识点的起始位置开始截取,截取至该知识类型对应的第二标注标签所指示的知识点的结束位置,可以得到该知识类型下的知识点。
[0141]
作为一种示例,当得到的第一标注标签和第二标注标签的个数均为一个时,对待抽取文本,可以直接从第一标注标签所指示的知识点的起始位置开始截取,截取至第二标注标签所指示的知识点的结束位置,以得到知识类型下的知识点。
[0142]
作为再一种示例,当得到的第一标注标签和第二标注标签的个数均为多个时,比如,第一标注标签包括第一标注标签1和第一标注标签2,第二标注标签包括第二标注标签1和第二标注标签2,对待抽取文本,可以从第一标注标签1所指示的知识点的起始位置开始截取,截取至距离第一标注标签1最近的第二标注标签1所指示的知识点的结束位置,得到某一个知识类型下的知识点1,并可以从第一标注标签2所指示的知识点的起始位置开始截取,截取至距离第一标注标签2最近的第二标注标签2所指示的知识点的结束位置,得到上述某一个知识类型下的知识点2。
[0143]
需要说明的是,上述对待抽取文本中知识类型下的知识点的截取方向可以为从左往右,或者也可以为从右往左等,本公开对此不做限制。
[0144]
由此,可以实现通过第一标注标签和第二标注标签,有效且准确地确定知识类型下的知识点。
[0145]
本公开实施例的知识抽取方法,通过针对多个知识类型中的任一知识类型,采用知识类型对应的序列标注模型对语义特征进行序列标注,以得到第一标注标签和第二标注标签;根据第一标注标签和第二标注标签,确定知识类型下的知识点,其中,第一标注标签用于指示知识点在待抽取文本中的起始位置,第二标注标签用于指示知识点在待抽取文本中的结束位置。由此,可以实现通过任一知识类型对应的序列标注模型对知识点在待抽取文本中起始位置和结束位置的预测,有效且准确的确定与提示信息匹配的知识类型下的知识点。
[0146]
上述为知识抽取模型的应用方法(即知识抽取方法)所对应的各实施例,本公开还提出一种知识抽取模型的训练方法。
[0147]
图5为本公开实施例四所提供的知识抽取模型的训练方法的流程示意图。
[0148]
如图5所示,该知识抽取模型的训练方法可以包括以下步骤:
[0149]
步骤501,获取训练文本和提示信息,其中,提示信息用于指示训练文本中待抽取的信息,训练文本的标注信息用于指示至少一个标注知识类型与标注知识点之间的对应关系。
[0150]
在本公开实施例中,训练文本可以包括知识库文档、会议内容、日报、周报、okr等,本公开对此不做限制。
[0151]
在本公开实施例中,对训练文本的获取方式不作限制,比如,训练文本可以从现有的训练集获取,或者训练文本也可以在线采集,比如可以通过网络爬虫技术在线获取,或者,训练文本也可以为用户提供的,等等,本公开对此不做限制。
[0152]
在本公开实施例中,提示信息可以用于指示训练文本中待抽取的信息,且提示信息可以是根据需要而设定的。
[0153]
作为一种示例,可以根据特定的领域方向(比如具体的应用领域方向),设定提示信息,比如,当应用领域方向为算法方向时,提示信息可以为“算法方向的技能关注点”,再比如,当应用领域方向为推荐业务方向时,提示信息可以为“推荐业务方向的关注点”,等等,在此不一一列举。
[0154]
作为另一种示例,为了适用于所有的应用领域方向或应用场景,可以设定或构造一个宽泛的提示信息,以应用于不同的知识类型场景。比如,提示信息可以为“文本中的知识点”、“文本中的实体”等。
[0155]
在本公开实施例中,标注知识点可以用于指示训练文本包括的知识点,其中,知识点可以包括实体、短语、重要词汇、文本片段等,本公开对此不做限制。
[0156]
在本公开实施例中,标注知识点可以为一个,或者也可以多个,本公开对此不做限制。
[0157]
在本公开实施例中,标注知识类型可以用于指示训练文本包括的知识点所属的知识类型,其中,知识类型比如可以为“后端”、“前端”、“产品”、“算法”等,本公开对此不做限制。
[0158]
在本公开实施例中,标注知识类型可以为一个,或者也可以多个,本公开对此不做限制。
[0159]
在本公开实施例中,训练文本的标注信息可以用于指示至少一个标注知识类型与标注知识点之间的对应关系。
[0160]
需要说明的是,训练文本的标注信息指示的标注知识类型与标注知识点之间的对应关系的数量可以为一个,或者也可以为多个,本公开对此不做限制。
[0161]
作为一种示例,训练文本为“完成模型分布式部署,上线知识推荐项目。”,该训练文本的标注信息指示了标注知识类型“后端”与“分布式部署”之间的对应关系、标注知识类型“算法”与“知识推荐”之间的对应关系,以及标注知识类型“产品”与“知识推荐”之间的对应关系。
[0162]
步骤502,将训练文本和提示信息进行拼接,以得到输入文本。
[0163]
需要说明的是,将训练文本和提示信息进行拼接的方法与步骤202中对待抽取文本和提示信息进行拼接的方法类似,在此不做赘述。
[0164]
步骤503,对输入文本进行特征提取,以得到输入文本的语义特征。
[0165]
在本公开实施例中,可以对输入文本进行特征提取,以得到输入文本的语义特征,比如,可以采用bert模型、ernie模型等对输入文本进行特征提取,得到输入文本的语义特征。
[0166]
步骤504,采用多个知识类型对应的知识抽取模型分别对语义特征进行知识抽取,以得到多个知识类型中至少一个预测知识类型下的预测知识点。
[0167]
在本公开实施例中,预测知识类型可以是多个知识类型中的一个,或者多个,本公开对此不做限制。
[0168]
在本公开实施例中,可以采用多个知识类型对应的知识抽取模型分别对语义特征进行知识抽取,可以得到多个知识类型中至少一个预测知识类型下的预测知识点。
[0169]
步骤505,根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,对多个知识类型的知识抽取模型进行联合训练。
[0170]
在本公开实施例中,可以根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,对多个知识类型的知识抽取模型进行联合训练。
[0171]
本公开实施例的知识抽取方法,通过获取训练文本和提示信息,其中,提示信息用于指示训练文本中待抽取的信息,训练文本的标注信息用于指示至少一个标注知识类型与标注知识点之间的对应关系;将训练文本和提示信息进行拼接,以得到输入文本;对输入文本进行特征提取,以得到输入文本的语义特征;采用多个知识类型对应的知识抽取模型分别对语义特征进行知识抽取,以得到多个知识类型中至少一个预测知识类型下的预测知识点;根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,对多个知识类型的知识抽取模型进行联合训练。由此,基于深度学习技术,对知识抽取模型进行训练,可以提升模型预测结果的准确性和可靠性。
[0172]
为了清楚说明本公开上述实施例中是如何采用多个知识类型对应的知识抽取模型分别对语义特征进行知识抽取,以得到多个知识类型中至少一个预测知识类型下的预测知识点的,本公开还提出一种知识抽取模型的训练方法。
[0173]
图6为本公开实施例五所提供的知识抽取模型的训练方法的流程示意图。
[0174]
如图6所示,该知识抽取模型的训练方法可以包括以下步骤:
[0175]
步骤601,获取训练文本和提示信息,其中,提示信息用于指示训练文本中待抽取的信息,训练文本的标注信息用于指示至少一个标注知识类型与标注知识点之间的对应关系。
[0176]
步骤602,将训练文本和提示信息进行拼接,以得到输入文本。
[0177]
步骤603,对输入文本进行特征提取,以得到输入文本的语义特征。
[0178]
步骤601至步骤603的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
[0179]
步骤604,针对多个知识类型中的任一知识类型,采用知识类型对应的第一分类网络对语义特征进行分类,以得到训练文本中各字符的第一分类标签。
[0180]
在本公开实施例中,各字符的第一分类标签可以用于指示对应字符是否为对应的知识类型下的知识点的首字符,即各字符的第一分类标签可以用于指示对应字符是否为对应的知识类型下的知识点在训练文本中的起始位置。
[0181]
在本公开实施例中,针对多个知识类型中的任一知识类型,该任一知识类型对应的知识抽取模型可以包括第一分类网络,可以采用该任一知识类型对应的第一分类网络对语义特征进行分类,以得到训练文本中各字符的第一分类标签。
[0182]
步骤605,采用知识类型对应的第二分类网络对语义特征进行分类,以得到各字符的第二分类标签。
[0183]
在本公开实施例中,各字符的第二分类标签可以用于指示对应字符是否为对应的知识类型下的知识点的尾字符,即各字符的第二分类标签可以用于指示对应字符是否为对应的知识类型下的知识点在训练文本中的结束位置。
[0184]
在本公开实施例中,针对多个知识类型中的任一知识类型,该任一知识类型对应的知识抽取模型还可以包括第二分类网络,可以采用该任一知识类型对应的第二分类网络对语义特征进行分类,以得到训练文本中各字符的第二分类标签。
[0185]
可以理解的是,知识抽取模型的第一分类网络和第二分类网络之间相互独立。
[0186]
步骤606,在各第一分类标签中包含第一目标标签,且各第二分类标签中包含第二目标标签的情况下,将知识类型作为预测知识类型,并根据第一目标标签和第二目标标签,确定预测知识类型下的预测知识点。
[0187]
其中,第一目标标签可以用于指示对应字符为预测知识点的首字符。
[0188]
需要说明的是,在采用任一知识类型对应的第一分类网络对语义特征进行分类时,得到的训练文本中各字符的第一分类标签中所包含的第一目标标签的个数可以为但不限于为一个,本公开对此不做限制。
[0189]
比如,假设训练文本为“完成模型分布式部署,上线知识推荐项目。”,可以采用知识类型(比如产品)对应的第一分类网络对语义特征进行分类,得到的第一分类标签1指示预测到的字符“知”为对应的知识类型“产品”下的知识点的首字符,可以采用知识类型(比如后端)对应的第一分类网络对语义特征进行分类,得到的第一分类标签2指示预测得到的字符“分”为对应的知识类型“后端”下的知识点的首字符。
[0190]
其中,第二目标标签可以用于指示对应字符为预测知识点的尾字符。
[0191]
需要说明的是,在采用任一知识类型对应的第二分类网络对语义特征进行分类
时,得到的训练文本中各字符的第二分类标签中所包含的第二目标标签的个数可以为但不限于为一个,本公开对此不做限制。
[0192]
比如,仍以上述例子进行示例,训练文本为“完成模型分布式部署,上线知识推荐项目。”,可以采用知识类型(比如产品)对应的第二分类网络对语义特征进行分类,得到的第二分类标签1指示预测到的字符“荐”为对应的知识类型“产品”下的知识点的尾字符,可以采用知识类型(比如后端)对应的第二分类网络对语义特征进行分类,得到的第二分类标签2指示预测得到的字符“署”为对应的知识类型“后端”下的知识点的尾字符。
[0193]
在本公开实施例中,在各第一分类标签中包含第一目标标签,且各第二分类标签中包含第二目标标签的情况下,可以将对应知识类型作为预测知识类型,并可以根据第一目标标签和第二目标标签,确定预测知识类型下的预测知识点。
[0194]
作为一种可能的实现方式,可以对训练文本,从第一目标标签所指示的预测知识点的首字符开始截取,截取至第二目标标签所指示的预测知识点的尾字符,可以得到预测知识类型下的预测知识点。
[0195]
作为一种示例,当第一目标标签和第二目标标签的个数均为一个时,对训练文本,可以直接从第一目标标签所指示的预测知识点的首字符开始截取,截取至第二目标标签所指示的预测知识点的尾字符,以得到预测知识类型下的预测知识点。
[0196]
作为再一种示例,当得到的第一目标标签和第二目标标签的个数均为多个时,比如,第一目标标签包括第一目标标签1和第一目标标签2,第二目标标签包括第二目标标签1和第二目标标签2,对训练文本,可以从第一目标标签1所指示的预测知识点的首字符开始截取,截取至距离第一目标标签1最近的第二目标标签1所指示的预测知识点的尾字符,得到该预测知识类型下的预测知识点1,并可以从第一目标标签2所指示的预测知识点的首字符开始截取,截取至距离第一目标标签2最近的第二目标标签2所指示的预测知识点的尾字符,得到该预测知识类型下的预测知识点2。
[0197]
需要说明的是,上述对训练文本中预测知识类型下的预测知识点的截取方向可以为从左往右,或者也可以为从右往左等,本公开对此不做限制。
[0198]
步骤607,根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,对多个知识类型的知识抽取模型进行联合训练。
[0199]
步骤607的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
[0200]
在本公开实施例的一种可能的实现方式中,针对多个知识类型中的任一知识类型,该任一知识类型对应的知识抽取模型还可以包括序列标注模型,可以将语义特征输入知识类型对应的序列标注模型,以得到知识类型对应的序列标注模型输出的训练文本中各字符的预测标签;在各字符的预测标签中包含第一预测标签和第二预测标签的情况下,可以将知识类型作为预测知识类型,并可以根据第一预测标签和第二预测标签,确定预测知识类型下的预测知识点。
[0201]
其中,第一预测标签可以用于指示对应字符为预测知识点的首字符,第二预测标签可以用于指示对应字符为预测知识点的尾字符。
[0202]
在本公开实施例中,各字符的预测标签可用于指示对应字符是否为对应知识类型下的知识点的首字符、尾字符、其他字符等。
[0203]
比如,训练文本为“完成模型分布式部署,上线知识推荐项目。”,各字符的预测标
签分别为:o、o、o、o、b、o、o、o、e、o、o、o、b、o、o、e、o、o、o,其中,b可以用于指示对应字符为对应知识类型下的知识点的首字符,且b为第一预测标签;e可以用于指示对应字符为对应知识类型下的知识点的尾字符,且e为第二预测标签,o可以用于指示对应字符为对应知识类型下的知识点的其他字符。
[0204]
需要说明的是,上述例子中对各字符的预测标签的表示仅是示例性的,在实际应用中,可以根据需要对各字符的预测标签进行设置,本公开对此不做限制。
[0205]
作为一种可能的实现方式,对训练文本,可以从第一预测标签所指示的预测知识点的首字符开始截取,截取至第二预测标签所指示的预测知识点的尾字符,由此,可以得到预测知识类型下的预测知识点。
[0206]
由此,可以采用各知识类型对应的序列标注模型,实现对训练文本中各知识类型下的知识点的有效预测。
[0207]
本公开实施例的知识抽取模型的训练方法,通过针对多个知识类型中的任一知识类型,采用知识类型对应的第一分类网络对语义特征进行分类,以得到训练文本中各字符的第一分类标签;采用知识类型对应的第二分类网络对语义特征进行分类,以得到各字符的第二分类标签;在各第一分类标签中包含第一目标标签,且各第二分类标签中包含第二目标标签的情况下,将知识类型作为预测知识类型,并根据第一目标标签和第二目标标签,确定预测知识类型下的预测知识点;其中,第一目标标签用于指示对应字符为预测知识点的首字符,第二目标标签用于指示对应字符为预测知识点的尾字符。由此,可以实现基于各知识类型对应的第一分类网络和第二分类网络对知识点在训练文本中的首尾字符的预测,有效确定预测知识类型下的预测知识点。
[0208]
为了清楚说明本公开任一实施例中,是如何根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,对多个知识类型的知识抽取模型进行联合训练的,本公开还提出一种知识抽取模型的训练方法。
[0209]
图7为本公开实施例六所提供的知识抽取模型的训练方法的流程示意图。
[0210]
如图7所示,该知识抽取模型的训练方法可以包括以下步骤:
[0211]
步骤701,获取训练文本和提示信息,其中,提示信息用于指示训练文本中待抽取的信息,训练文本的标注信息用于指示至少一个标注知识类型与标注知识点之间的对应关系。
[0212]
步骤702,将训练文本和提示信息进行拼接,以得到输入文本。
[0213]
步骤703,对输入文本进行特征提取,以得到输入文本的语义特征。
[0214]
步骤704,采用多个知识类型对应的知识抽取模型分别对语义特征进行知识抽取,以得到多个知识类型中至少一个预测知识类型下的预测知识点。
[0215]
步骤701至步骤704的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
[0216]
步骤705,将各标注知识类型和各预测知识类型进行比对,以将相同的标注知识类型和预测知识类型作为第一知识类型,和/或,将不同的标注知识类型和预测知识类型作为第二知识类型。
[0217]
在本公开实施例中,第一知识类型可以是各标注知识类型和各预测知识类型中,标注知识类型和预测知识类型相同时对应的知识类型。
[0218]
在本公开实施例中,第二知识类型可以是各标注知识类型中除去第一知识类型后的知识类型和各预测知识类型中除去第一知识类型后的知识类型,即标注知识类型和预测知识类型之间不相同时对应的标注知识类型和预测知识类型。
[0219]
在本公开实施例中,可以将各标注知识类型和各预测知识类型进行比对,并可以将相同的标注知识类型和预测知识类型作为第一知识类型,和/或,将不同的标注知识类型和预测知识类型作为第二知识类型。
[0220]
举例说明,假设多个知识类型包括知识类型1、知识类型2、知识类型3、知识类型4以及知识类型5,标注知识类型包括知识类型1、知识类型3、知识类型4,预测知识类型包括知识类型1和知识类型2,其中,知识类型1为第一知识类型,知识类型2、知识类型3以及知识类型4为第二知识类型。
[0221]
步骤706,根据属于第一知识类型的预测知识点和标注知识点之间的差异,生成第一损失值,和/或,根据属于第二知识类型下的预测知识点或标注知识点,生成第二损失值。
[0222]
在本公开实施例中,可以根据属于第一知识类型的预测知识点和标注知识点之间的差异,生成第一损失值。
[0223]
作为一种可能的实现方式,针对任一第一知识类型,可以确定属于该第一知识类型的标注知识点中首字符在训练文本中的第一位置和属于该第一知识类型的预测知识点中首字符在训练文本中的第二位置之间的第一差异;并可以确定属于该第一知识类型的标注知识点中尾字符在训练文本中的第三位置和属于该第一知识类型的预测知识点中尾字符在训练文本中的第四位置之间的第二差异;最后,可以根据第一差异和第二差异,确定第一损失值。
[0224]
由此,可以实现根据属于第一知识类型下的知识点(包括标注知识点或预测知识点)的首字符和尾字符在训练文本中位置差异,即用于指示训练文本中知识点首字符的正标签之间的位置差异和尾字符的正标签之间的位置差异,来确定损失值,从而可根据损失值对模型进行训练,以提升模型的训练效果,即提升模型的预测精度。
[0225]
需要说明的是,对于训练文本,属于第一知识类型下的知识点(包括标注知识点或预测知识点)的首字符和尾字符在训练文本中所占的比例较小,即用于指示训练文本中知识点首尾字符的正标签稀疏,而不属于第一知识类型下的知识点的首字符和尾字符在训练文本中所占的比例较大,即不用于指示训练文本的知识点首尾字符的负标签占比较大。为了防止知识抽取模型在训练过程中出现过拟合的现象,还可以计算负标签的损失。因此,在本公开实施例的一种可能的实现方式中,还可以通过以下几个步骤确定第一损失值:
[0226]
首先,可以根据第一差异和第二差异,确定第一子损失值。
[0227]
其中,第一子损失值与上述第一差异为正向关系(即呈正相关关系),且第一子损失值与上述第二差异也为正向关系(即呈正相关关系),即第一差异或第二差异越小,第一子损失值的取值越小,反之,第一差异或第二差异越大,第一子损失值的取值越大。
[0228]
作为一种示例,可以根据第一差异,确定首字符对应的损失值,并根据第二差异,确定尾字符对应的损失值,最后可以确定首字符对应的损失值lossstart和尾字符对应的损失值lossend之和,以将首字符对应的损失值lossstart和尾字符对应的损失值lossend之和作为第一子损失值。
[0229]
其次,可以根据第一文本和第二文本之间的第三差异,确定第二子损失值。
[0230]
其中,第一文本可以是从训练文本中去除属于第一知识类型的标注知识点的首字符和尾字符得到的,第二文本可以是从训练文本中去除属于第一知识类型的预测知识点的首字符和尾字符得到的。
[0231]
比如,训练文本为“完成模型分布式部署,上线知识推荐项目。”,假设属于第一知识类型的标注知识点的首字符为“知”、尾字符为“荐”,属于该第一知识类型的预测知识点的首字符为“知”、尾字符为“目”,第一文本为“完成模型分布式部署,上线识推项目。”,第二文本为“完成模型分布式部署,上线识推荐项。”。
[0232]
作为一种可能的实现方式,可以根据第一文本和第二文本之间的第三差异,确定第一文本中各字符的字符损失值;并可以根据设定比例,从第一文本的各字符中确定目标字符;从而,可以根据各目标字符的字符损失值,确定第二子损失值。
[0233]
在本公开实施例中,设定比例可以为预先设定的,比如,可以为50%,20%等,本公开对此不做限制。
[0234]
在本公开实施例中,目标字符可以是根据设定比例从第一文本的各字符中确定的,比如,可以根据设定比例,随机从第一文本的各字符中选取设定比例的目标字符。
[0235]
作为一种可能的实现方式,设定比例可以根据训练文本的字符总数确定,比如,设定比例可以与训练文本的字符总数成负相关关系,即训练文本的字符总数越大,设定比例越小,训练文本的字符总数越小,设定比例越大。由此,可以控制目标字符在适合的范围,不至于目标字符的数量太大或者太小。
[0236]
需要说明的是,第二子损失值与上述第一文本和第二文本之间的第三差异为正向关系(即呈正相关关系),即第一文本和第二文本之间的第三差异越小,字符损失值越小,第二子损失值的取值越小,反之,第一文本和第二文本之间的第三差异越大,字符损失值越大,第二子损失值的取值越大。
[0237]
由此,通过对负标签进行负采样操作,仅需要基于负标签对应的部分字符即各目标字符对应的字符损失值,可以有效确定负标签对应的损失值,而无需采用负标签对应的全部字符对应的字符损失值以确定负标签对应的损失值,可以便于后续的计算,且可以避免知识抽取模型在训练过程中出现过拟合的现象。
[0238]
再者,可以根据第一子损失值和第二子损失值,确定第一知识类型的类型损失值。
[0239]
比如,可以确定第一子损失值和第二子损失值之和,并可以将第一子损失值和第二子损失值之和作为第一知识类型对应的类型损失值。
[0240]
最后,可以根据各第一知识类型的类型损失值,确定第一损失值。
[0241]
比如,可以确定各第一知识类型的类型损失值之和,并可以将各第一知识类型的类型损失值之和作为第一损失值。或者,可以对各第一知识类型的类型损失值进行加权求和,以得到第一损失值。
[0242]
由此,通过融合正标签的第一子损失值和负标签的第二子损失值,可以有效确定第一损失值,且可以避免知识抽取模型在训练过程中出现过拟合的现象。
[0243]
在本公开实施例中,可以根据属于第二知识类型下的预测知识点或标注知识点,生成第二损失值。
[0244]
比如,可以根据属于第二知识类型下的预测知识点或标注知识点的个数,生成第二损失值。其中,个数与第二损失值之间为正向关系,即个数越大,第二损失值越大,个数越
小,第二损失值越小。
[0245]
或者,可以根据属于各第二知识类型下的预测知识点或标注知识点中首字符和尾字符在训练文本中的位置,确定各第二知识类型的类型损失值,从而可以根据各第二知识类型的类型损失值,确定第二损失值。比如,可以确定各第二知识类型的类型损失值之和,并可以将各第二知识类型的类型损失值之和作为第二损失值。或者,可以对各第二知识类型的类型损失值进行加权求和,以得到第二损失值。
[0246]
步骤707,根据第一损失值和/或第二损失值,对多个知识类型的知识抽取模型进行联合训练。
[0247]
在本公开实施例中,可以根据第一损失值和/或第二损失值,对多个知识类型的知识抽取模型进行联合训练。
[0248]
作为一种示例,可以根据第一损失值,对多个知识类型的知识抽取模型进行联合训练,以使第一损失值的取值最小化;或者,根据第二损失值,对多个知识类型的知识抽取模型进行联合训练,以使第二损失值的取值最小化。
[0249]
作为另一种示例,可以根据第一损失值和第二损失值,对多个知识类型的知识抽取模型进行联合训练,比如,可以将第一损失值和第二损失值进行加权求和,以得到目标损失值,或者,可以将第一损失值和第二损失值之和,作为目标损失值,从而可以根据目标损失值对多个知识类型的知识抽取模型进行联合训练,以使得目标损失值最小化。
[0250]
需要说明的是,上述仅以模型训练的终止条件为损失值最小化进行示例,实际应用时,还可以设置其他终止条件,比如,训练次数达到设定次数,训练时长达到设定时长,损失值收敛等等,本公开对此并不做限制。
[0251]
可以理解的是,在对训练文本中的知识点进行预测时,在存在第一知识类型和第二知识类型的情况下,也可能存在知识类型未预测到对应的知识点的情况,仍以上述例子进行说明,训练文本对应的知识类型包括知识类型1、知识类型2、知识类型3、知识类型4以及知识类型5,标注知识类型包括知识类型1、知识类型3、知识类型4,预测知识类型包括知识类型1和知识类型2,其中,知识类型1为第一知识类型,知识类型2、知识类型3以及知识类型4为第二知识类型,然而,对于知识类型5,知识类型5不属于标注知识类型,也不属于预测知识类型(即知识类型5没有预测到对应的知识点),在本公开中,可以将多个知识类型中除了第一知识类型和第二知识类型外的知识类型作为第三知识类型,比如,上述例子中知识类型5属于第三知识类型。为了提升模型的预测精度,还可以确定第三知识类型的损失值,并根据第三知识类型的损失值对多个知识类型的知识抽取模型进行联合训练。即,在本公开实施例的一种可能的实现方式中,还可以根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,确定多个知识类型的第三损失值;根据多个知识类型的第三损失值,确定第四损失值;根据第四损失值,对多个知识类型的知识抽取模型进行联合训练。
[0252]
也就是说,根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,确定多个知识类型中任一知识类型(包括第一知识类型、第二知识类型和第三知识类型)对应的第三损失值,并可以根据该多个知识类型的第三损失值,确定第四损失值,比如可以确定多个知识类型的第三损失值之和,并将多个知识类型的第三损失值之和作为第四损失值,或者,可以将多个知识类型的第三损失值进行加权求和,以得到第四损失值。从而,本公开中,可以根据第四损失值,对多个知识类型的知识抽取模型进行联合训练。
[0253]
作为一种示例,可以根据第四损失值对多个知识类型的知识抽取模型进行联合训练,以使得第四损失值最小化。
[0254]
需要说明的是,上述仅以模型训练的终止条件为第四损失值最小化进行示例,实际应用时,还可以设置其他终止条件,比如,训练次数达到设定次数,训练时长达到设定时长,第四损失值收敛等等,本公开对此并不做限制。
[0255]
由此,通过综合考虑各种知识类型对应的损失值,对知识抽取模型进行训练,可以提高模型的预测精度,即提高模型抽取结果的准确性和可靠性。
[0256]
本公开实施例的知识抽取模型的训练方法,通过将各标注知识类型和各预测知识类型进行比对,以将相同的标注知识类型和预测知识类型作为第一知识类型,和/或,将不同的标注知识类型和预测知识类型作为第二知识类型;根据属于第一知识类型的预测知识点和标注知识点之间的差异,生成第一损失值,和/或,根据属于第二知识类型下的预测知识点或标注知识点,生成第二损失值;根据第一损失值和/或第二损失值,对多个知识类型的知识抽取模型进行联合训练。由此,可以实现根据多个知识类型下的预测知识点和标注知识点,对多个知识类型的知识抽取模型进行联合训练,以提升模型预测结果的准确性。
[0257]
综上,使用本公开任一实施例所提供的方法,可以从海量的非结构化文本中自动提取重要的知识点,特别地,当需要同时抽取多种知识类型下的知识点时,可以通过图3所提供的知识抽取框架能极大的简化知识抽取模型。
[0258]
本公开中,通过将知识抽取问题转换成抽取式的阅读理解任务,并通过构造自然语言抽取目标(prompt,用于提示学习),本公开中记为提示信息,来代替阅读理解中的问题,以此来达到较好的抽取效果,主要包括以下几个方面:
[0259]
第一方面,通过prompt代替问题,结合待抽取文本作为模型输入,构造抽取式mrc(machine reading comprehension,阅读理解)任务范式。
[0260]
第二方面,基于预训练大模型构建输入编码器,在输出端通过预测知识点或att的首尾位置的方式,来确定文本中的各知识点,联合计算标签损失,同时挖掘多种知识类型下的知识点。
[0261]
第三方面,通过负采样计算负标签损失,防止模型过拟合。
[0262]
具体地,首先可以根据特定领域方向构造自然语言抽取目标prompt,比如,prompt可以为“算法方向的技能关注点”、“推荐业务方向的关注点”等,或者,为了适用于所有的应用场景,可以构造一个宽泛的抽取目标prompt,以应用于不同的知识类型场景,比如,prompt可以为“文本中的知识点”、“文本中的实体”等。通过prompt显式的将待抽取文本的提示信息引入到模型中,增强语义交互理解;其次,待抽取文本经过预训练大模型编码后,通过2*num(知识类型数量)个二分类网络或二分类模型来预测不同知识类型下知识点的首尾位置,统一解决嵌套和非嵌套情况;最后在计算负标签损失时,可以采用负采样操作,防止模型过拟合。
[0263]
本公开所提供的知识抽取方法,可以借助强大的预训练模型,并巧妙的转换问题模式,可以实现在采用少量训练样本对模型进行训练的场景下,仍能获取较好的抽取效果。
[0264]
作为一种示例,采用图3所示的知识抽取模型,可以结合以下步骤,对上述过程进行详细说明:
[0265]
步骤一,数据构造。可以将att挖掘的输入数据转换成抽取式阅读理解数据形式(f
<question,text>

answer),其中,采用prompt的方式构造“question”,并将prompt和待抽取文本text拼接之后作为知识抽取模型的输入,以此可以高效的融合外部自然语言提示信息;answer即为抽取到的知识点。
[0266]
传统的信息抽取任务或知识抽取任务主要通过序列标注的方式来求解,该方法将待抽取文本作为输入,通过编码器encoder crf的方式抽取特定的实体或知识点。此范式在实体无嵌套(不同实体属于不同类别,不存在字符重叠现象)的情况能够获取较好的抽取效果,但无法解决实体嵌套(一个实体可能属于多个实体类型)的情况。
[0267]
基于此,本公开实施例所提供的知识抽取方法,可以转换知识抽取任务为阅读理解任务。其模式为,对于给定的问题在待抽取文本中抽取对应的答案片段(学习f<question,text>

answer的映射):通过预测答案的开始位置和结束位置,来抽取最终的实体信息。可以自定义抽取目标,通过prompt的方式构造mrc中question,完整的数据样例可如表1所示:
[0268]
表1
[0269][0270]
对抽取目标prompt和待抽取文本text进行拼接,构造输入文本:“[cls]prompt[sep]text[sep]”。
[0271]
以表1中数据进行举例说明,构造的输入文本为“[cls]文本中的知识点[sep]更新用户行为模型:itg更新用户行为模型,提升识别率,依赖地图星云的服务,已与地图星云团队沟通,获取性能测试许可。[sep]”。
[0272]
步骤二,将构造的输入文本输入至ernie等预训练大模型中,可以使prompt和text经过网络编码后充分进行语义交互,得到对应的语义特征。
[0273]
步骤三,分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,以对多个知识类型中至少一个知识类型下的知识点进行预测。
[0274]
其中,在知识抽取模型的输出层,为每个知识类型对应的知识抽取模型设计2个二分类模型(每个知识类型的输出网络相互独立),在本公开中记为第一分类网络和第二分类网络,可以分别预测在该知识类型下知识点的起始位置和结束位置。
[0275]
从而,对待抽取文本,可以从预测到的对应知识类型下的知识点的起始位置开始截取,截取至该对应知识类型下的知识点的结束位置,从而可以得到该对应知识类型下的知识点。
[0276]
需要说明的是,由于抽取结果仅存在于待抽取文本text中,因此在知识抽取模型的训练阶段,仅计算训练文本对应的输出部分的损失值,以根据损失值对知识抽取模型进行训练;而在预测阶段,也仅仅是在待抽取文本text对应的输出层上预测最终的结果。
[0277]
还需要说明的是,采用上述结构设计,知识抽取模型不仅可以抽取出文本中存在的多个知识点,而且还能区分相同知识点属于不同知识类型的情况,比如抽取样例中prompt为“文本关注点”,text为“完成模型分布式部署,上线知识推荐项目。”,知识类型包
括“后端”、“算法”和“产品”,抽取到的知识点“知识推荐”同属于知识类型“算法”和“产品”,该抽取样例如图8所示。
[0278]
如此,本公开的知识抽取模型可以同时解决嵌套和非嵌套知识抽取任务,本公开的知识抽取模型通过在输出端采用2*num(知识类别的数量)个二分类的预测方式,不仅可以抽取出文本中知识点的首尾位置,同时还能预测知识点所属的知识类型。
[0279]
其中,在知识抽取模型的训练阶段,训练阶段的第一子损失值可以为开始位置损失与结束位置损失之和,其定义如下:
[0280]
loss=loss
start
loss
end
=ce(y
start
,p
start
) ce(y
end
,p
end
);
[0281]
其中,loss
start
为根据属于第一知识类型(将相同的标注知识类型和预测知识类型作为第一知识类型)的标注知识点中首字符在训练文本中的第一位置y
start
和属于第一知识类型的预测知识点中首字符在训练文本中的第二位置p
start
之间的第一差异,并通过损失函数ce(y
start
,p
start
)确定的损失值。其中,ce表示交叉熵损失函数(cross entropy)。
[0282]
其中,loss
end
为根据属于第一知识类型(将相同的标注知识类型和预测知识类型作为第一知识类型)的标注知识点中尾字符在训练文本中的第三位置y
end
和属于第一知识类型的预测知识点中尾字符在训练文本中的第四位置p
end
之间的第二差异,并通过损失函数ce(y
end
,p
end
)确定的损失值。
[0283]
由于训练文本中正标签(指示知识点的首尾位置)非常稀疏,负标签(不用于指示知识点的首尾位置)的数量占绝大多数,为了防止训练过拟合,可以计算负标签损失(在本公开中记为第二子损失值)。其中,在计算负标签损失时,可以采用负采样操作(即在计算负标签对应位置的损失时,根据预先设定的阈值,概率性的放弃损失计算(可以通过dropout实现)),可以进一步改善模型的训练效果。
[0284]
具体地,可以根据第一文本和第二文本之间的第三差异,确定第一文本中各字符的字符损失值,其中,第一文本是从训练文本中去除属于第一知识类型的标注知识点的首字符和尾字符得到的,第二文本是从训练样本中去除属于第一知识类型的预测知识点的首字符和尾字符得到的;可以根据设定比例,从第一文本的各字符中确定目标字符;并可以根据各目标字符的字符损失值,确定第二子损失值。
[0285]
进一步地,可以根据第一子损失值和第二子损失值,确定第一知识类型的类型损失值;并可以根据各第一知识类型的类型损失值,确定第一损失值。
[0286]
综上,本公开的基于prompt mrc的特定领域知识点抽取服务的完整流程示意图如图9所示。
[0287]
在本公开中,可以根据第一损失值对多个知识类型的知识抽取模型进行训练,即对多个知识类型的知识抽取模型的参数进行调整,以使第一损失值可以最小化。
[0288]
本公开所提供的知识抽取方法可以适用于任何细分领域场景下的知识抽取问题或信息抽取问题,包括但不限于职能序列知识关注点抽取、命名实体识别、评论抽取等。比如,可以根据企业员工沉淀的文本,主动发现员工的关注点,以此来建立人与人、人与知识、知识与人的充分连接,使知识在工作中被最大化复用和流动,形成生产-消费的正循环。
[0289]
本公开采用的知识抽取模型、知识抽取方法及知识抽取思想不依赖于产品,适用于任何特定领域的知识点抽取场景,主要包括以下几个部分:输入数据构造、多知识类型下的知识点预测以及负采样损失计算。在数据构造阶段,可以根据具体的业务场景,构造合适
的抽取目标,为目标抽取提供额外的提示信息;在模型编码和知识类型下的知识点预测上,不仅可以更换当前先进的预训练大模型,也可以根据实际情况对模型进行进一步预训练,可以提升网络的编码能力;在目标抽取上,采用2*num(知识类型的数量)个二分类模型,分别预测不同知识类型下的知识关注点(在本公开中记为知识点)的首尾位置,做到多个知识类型下的知识点的统一抽取;最后,可以通过负采样方式计算负标签的损失函数,防止模型过拟合。
[0290]
本公开的知识抽取方法可以应用在对不同职能方向知识关注点的资源构建上,通过统一的建模方式,将多个知识类型的知识点抽取整合到一个模型框架中,极大的简化了知识抽取的复杂度。职能序列知识关注点挖掘作为一些企业知识管理中知识分发系统项目最基础的一环,其作用是为下游的“知识点-文档”和“知识点-专家”的匹配、推荐提供优质的资源底库,促进知识生产-消费的正循环。
[0291]
本公开的知识抽取方法的有益效果至少可以包括:
[0292]
1、可以根据业务需求构造抽取目标(prompt),巧妙的将传统的序列标准问题转换成mrc方式求解,以通过引入额外的外部信息,进一步提升信息抽取的能力;
[0293]
2、根据抽取信息(在本公开中记为知识点)所属的知识类别的数量可以构造多个二分类网络,联合抽取信息嵌套与非嵌套的情况,使得知识抽取框架更加优雅简洁;
[0294]
3、根据具体业务对预测结果进行一定的规则处理,可以进一步提升抽取效果,使得抽取各职能方向的知识关注点的准确率均在90%以上,达到了实用的标准;
[0295]
综上所述,本公开提供的知识抽取方法,可以运用到任何信息抽取的业务场景中,具有较强的实践意义和较高的扩展性。
[0296]
与上述图1至图4实施例提供的知识抽取方法相对应,本公开还提供一种知识抽取装置,由于本公开实施例提供的知识抽取装置与上述图1至图4实施例提供的知识抽取方法相对应,因此在知识抽取方法的实施方式也适用于本公开实施例提供的知识抽取装置,在本公开实施例中不再详细描述。
[0297]
图10为本公开实施例七所提供的知识抽取装置的结构示意图。
[0298]
如图10所示,该知识抽取装置1000可以包括:第一获取模块1001、拼接模块1002、提取模块1003以及抽取模块1004。
[0299]
其中,第一获取模块1001,用于获取待抽取文本和提示信息,其中,提示信息用于指示待抽取文本中待抽取的信息。
[0300]
拼接模块1002,用于将待抽取文本和提示信息进行拼接,以得到输入文本。
[0301]
提取模块1003,用于对输入文本进行特征提取,以得到输入文本的语义特征。
[0302]
抽取模块1004,用于分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,以得到多个知识类型中至少一个知识类型下的知识点。
[0303]
在本公开实施例的一种可能的实现方式中,知识抽取模型包括第一分类网络和第二分类网络,抽取模块1004,具体可以用于:针对多个知识类型中的任一知识类型,采用知识类型对应的第一分类网络对语义特征进行分类,以得到第一分类标签,其中,第一分类标签用于指示知识点在待抽取文本中的起始位置;采用知识类型对应的第二分类网络对语义特征进行分类,以得到第二分类标签,其中,第二分类标签用于指示知识点在待抽取文本中的结束位置;根据第一分类标签和第二分类标签,确定知识类型下的知识点。
[0304]
在本公开实施例的一种可能的实现方式中,抽取模块1004,具体可以用于:对待抽取文本,从第一分类标签所指示的知识点的起始位置开始截取,截取至第二分类标签所指示的知识点的结束位置,以得到知识类型下的知识点。
[0305]
在本公开实施例的一种可能的实现方式中,知识抽取模型包括序列标注模型,抽取模块1004,具体可以用于:针对多个知识类型中的任一知识类型,采用知识类型对应的序列标注模型对语义特征进行序列标注,以得到第一标注标签和第二标注标签;根据第一标注标签和第二标注标签,确定知识类型下的知识点;其中,第一标注标签用于指示知识点在待抽取文本中的起始位置,第二标注标签用于指示知识点在待抽取文本中的结束位置。
[0306]
在本公开实施例的一种可能的实现方式中,抽取模块1004,具体可以用于:对待抽取文本,从第一标注标签所指示的知识点的起始位置开始截取,截取至第二标注标签所指示的知识点的结束位置,以得到知识类型下的知识点。
[0307]
在本公开实施例的一种可能的实现方式中,拼接模块1002,具体可以用于:在待抽取文本的首个字符之前添加分隔符;在分隔符之前拼接提示信息,其中,提示信息的最后一个字符与分隔符相邻。
[0308]
在本公开实施例的一种可能的实现方式中,装置1000还可以包括:
[0309]
第二获取模块,用于针对至少一个知识类型的任一知识类型,从资源池中获取与知识类型匹配的候选资源。
[0310]
确定模块,用于从各候选资源中,确定与知识类型下的知识点匹配的目标资源。
[0311]
展示模块,用于展示目标资源。
[0312]
本公开实施例的知识抽取装置,通过获取待抽取文本和提示信息,其中,提示信息用于指示待抽取文本中待抽取的信息;将待抽取文本和提示信息进行拼接,以得到输入文本;对输入文本进行特征提取,以得到输入文本的语义特征;分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,以得到多个知识类型中至少一个知识类型下的知识点。由此,可以实现基于多个已知的知识类型对应的知识抽取模型,对待抽取文本中与提示信息匹配的知识点的抽取,不仅可以从待抽取文本中抽取与提示信息匹配的知识点,还可以同时确定该知识点所属的知识类型。而且,可以实现对多个知识类型下的知识点的共同抽取,以满足不同用户的抽取需求。
[0313]
与上述图5至图7实施例提供的知识抽取模型的训练方法相对应,本公开还提供一种知识抽取模型的训练装置,由于本公开实施例提供的知识抽取模型的训练装置与上述图5至图7实施例提供的知识抽取模型的训练方法相对应,因此在知识抽取模型的训练方法的实施方式也适用于本公开实施例提供的知识抽取模型的训练装置,在本公开实施例中不再详细描述。
[0314]
图11为本公开实施例八所提供的知识抽取模型的训练装置的结构示意图。
[0315]
如图11所示,该知识抽取模型的训练装1100可以包括:获取模块1101、拼接模块1102、提取模块1103、抽取模块1104以及训练模块1105。
[0316]
其中,获取模块1101,用于获取训练文本和提示信息,其中,提示信息用于指示训练文本中待抽取的信息,训练文本的标注信息用于指示至少一个标注知识类型与标注知识点之间的对应关系。
[0317]
拼接模块1102,用于将训练文本和提示信息进行拼接,以得到输入文本。
[0318]
提取模块1103,用于对输入文本进行特征提取,以得到输入文本的语义特征。
[0319]
抽取模块1104,用于采用多个知识类型对应的知识抽取模型分别对语义特征进行知识抽取,以得到多个知识类型中至少一个预测知识类型下的预测知识点。
[0320]
训练模块1105,用于根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,对多个知识类型的知识抽取模型进行联合训练。
[0321]
在本公开实施例的一种可能的实现方式中,知识抽取模型包括第一分类网络和第二分类网络,抽取模块1104,具体可以用于:针对多个知识类型中的任一知识类型,采用知识类型对应的第一分类网络对语义特征进行分类,以得到训练文本中各字符的第一分类标签;采用知识类型对应的第二分类网络对语义特征进行分类,以得到各字符的第二分类标签;在各第一分类标签中包含第一目标标签,且各第二分类标签中包含第二目标标签的情况下,将知识类型作为预测知识类型,并根据第一分类标签和第二分类标签,确定预测知识类型下的预测知识点;其中,第一目标标签用于指示对应字符为预测知识点的首字符,第二目标标签用于指示对应字符为预测知识点的尾字符。
[0322]
在本公开实施例的一种可能的实现方式中,知识抽取模型包括序列标注模型,抽取模块1104,具体可以用于:针对多个知识类型中的任一知识类型,将语义特征输入知识类型对应的序列标注模型,以得到知识类型对应的序列标注模型输出的训练文本中各字符的预测标签;在各字符的预测标签中包含第一预测标签和第二预测标签的情况下,将知识类型作为预测知识类型,并根据第一预测标签和第二预测标签,确定预测知识类型下的预测知识点;其中,第一预测标签用于指示对应字符为预测知识点的首字符,第二预测标签用于指示对应字符为预测知识点的尾字符。
[0323]
在本公开实施例的一种可能的实现方式中,其中,训练模块1105,具体可以用于:将各标注知识类型和各预测知识类型进行比对,以将相同的标注知识类型和预测知识类型作为第一知识类型,和/或,将不同的标注知识类型和预测知识类型作为第二知识类型;根据属于第一知识类型的预测知识点和标注知识点之间的差异,生成第一损失值,和/或,根据属于第二知识类型下的预测知识点或标注知识点,生成第二损失值;根据第一损失值和/或第二损失值,对多个知识类型的知识抽取模型进行联合训练。
[0324]
在本公开实施例的一种可能的实现方式中,训练模块1105,具体可以用于:针对任一第一知识类型,确定属于第一知识类型的标注知识点中首字符在训练文本中的第一位置和属于第一知识类型的预测知识点中首字符在训练文本中的第二位置之间的第一差异;确定属于第一知识类型的标注知识点中尾字符在训练文本中的第三位置和属于第一知识类型的预测知识点中尾字符在训练文本中的第四位置之间的第二差异;根据第一差异和第二差异,确定第一损失值。
[0325]
在本公开实施例的一种可能的实现方式中,训练模块1105,具体可以用于:根据第一差异和第二差异,确定第一子损失值;根据第一文本和第二文本之间的第三差异,确定第二子损失值;其中,第一文本是从训练文本中去除属于第一知识类型的标注知识点的首字符和尾字符得到的,第二文本是从训练文本中去除属于第一知识类型的预测知识点的首字符和尾字符得到的;根据第一子损失值和第二子损失值,确定第一知识类型的类型损失值;根据各第一知识类型的类型损失值,确定第一损失值。
[0326]
在本公开实施例的一种可能的实现方式中,训练模块1105,具体可以用于:根据第
一文本和第二文本之间的第三差异,确定第一文本中各字符的字符损失值;根据设定比例,从第一文本的各字符中确定目标字符;根据各目标字符的字符损失值,确定第二子损失值。
[0327]
本公开实施例的知识抽取模型的训练装置,通过获取训练文本和提示信息,其中,提示信息用于指示训练文本中待抽取的信息,训练文本的标注信息用于指示至少一个标注知识类型与标注知识点之间的对应关系;将训练文本和提示信息进行拼接,以得到输入文本;对输入文本进行特征提取,以得到输入文本的语义特征;采用多个知识类型对应的知识抽取模型分别对语义特征进行知识抽取,以得到多个知识类型中至少一个预测知识类型下的预测知识点;根据各标注知识类型下的标注知识点和各预测知识类型下的预测知识点,对多个知识类型的知识抽取模型进行联合训练。由此,基于深度学习技术,对知识抽取模型进行训练,可以提升模型预测结果的准确性和可靠性。
[0328]
为了实现上述实施例,本公开还提供一种电子设备,该电子设备可以包括至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开上述任一实施例提出的知识抽取方法,或者,执行本公开上述任一实施例提出的知识抽取模型的训练方法。
[0329]
为了实现上述实施例,本公开还提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开上述任一实施例提出的知识抽取方法,或者,执行本公开上述任一实施例提出的知识抽取模型的训练方法。
[0330]
为了实现上述实施例,本公开还提供一种计算机程序产品,该计算机程序产品包括计算机程序,计算机程序在被处理器执行时实现本公开上述任一实施例提出的知识抽取方法,或者,实现本公开上述任一实施例提出的知识抽取模型的训练方法。
[0331]
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
[0332]
图12示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。其中,电子设备可以包括上述实施例中的服务端、客户端。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
[0333]
如图12所示,电子设备1200包括计算单元1201,其可以根据存储在rom(read-only memory,只读存储器)1202中的计算机程序或者从存储单元1208加载到ram(random access memory,随机访问/存取存储器)1203中的计算机程序,来执行各种适当的动作和处理。在ram 1203中,还可存储电子设备1200操作所需的各种程序和数据。计算单元1201、rom 1202以及ram 1203通过总线1204彼此相连。i/o(input/output,输入/输出)接口1205也连接至总线1204。
[0334]
电子设备1200中的多个部件连接至i/o接口1205,包括:输入单元1206,例如键盘、鼠标等;输出单元1207,例如各种类型的显示器、扬声器等;存储单元1208,例如磁盘、光盘等;以及通信单元1209,例如网卡、调制解调器、无线通信收发机等。通信单元1209允许电子
设备1200通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0335]
计算单元1201可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1201的一些示例包括但不限于cpu(central processing unit,中央处理单元)、gpu(graphic processing units,图形处理单元)、各种专用的ai(artificial intelligence,人工智能)计算芯片、各种运行机器学习模型算法的计算单元、dsp(digital signal processor,数字信号处理器)、以及任何适当的处理器、控制器、微控制器等。计算单元1201执行上文所描述的各个方法和处理,例如上述知识抽取方法或知识抽取模型的训练方法。例如,在一些实施例中,上述知识抽取方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1208。在一些实施例中,计算机程序的部分或者全部可以经由rom1202和/或通信单元1209而被载入和/或安装到电子设备1200上。当计算机程序加载到ram 1203并由计算单元1201执行时,可以执行上文描述的知识抽取方法或知识抽取模型的训练方法的一个或多个步骤。备选地,在其他实施例中,计算单元1201可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行上述知识抽取方法或知识抽取模型的训练方法。
[0336]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、fpga(field programmable gate array,现场可编程门阵列)、asic(application-specific integrated circuit,专用集成电路)、assp(application specific standard product,专用标准产品)、soc(system on chip,芯片上系统的系统)、cpld(complex programmable logic device,复杂可编程逻辑设备)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0337]
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0338]
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、ram、rom、eprom(electrically programmable read-only-memory,可擦除可编程只读存储器)或快闪存储器、光纤、cd-rom(compact disc read-only memory,便捷式紧凑盘只读存储器)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0339]
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(cathode-ray tube,阴极射线管)或者
lcd(liquid crystal display,液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0340]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:lan(local area network,局域网)、wan(wide area network,广域网)、互联网和区块链网络。
[0341]
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务(virtual private server,虚拟专用服务器)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
[0342]
其中,需要说明的是,人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术以及机器学习/深度学习、大数据处理技术、知识图谱技术等几大方向。
[0343]
深度学习是机器学习领域中一个新的研究方向。它是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。
[0344]
云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
[0345]
根据本公开实施例的技术方案,通过获取待抽取文本和提示信息,其中,提示信息用于指示待抽取文本中待抽取的信息;将待抽取文本和提示信息进行拼接,以得到输入文本;对输入文本进行特征提取,以得到输入文本的语义特征;分别采用多个知识类型对应的知识抽取模型对语义特征进行知识抽取,以得到多个知识类型中至少一个知识类型下的知识点。由此,可以实现基于多个已知的知识类型对应的知识抽取模型,对待抽取文本中与提示信息匹配的知识点的抽取,不仅可以从待抽取文本中抽取与提示信息匹配的知识点,还可以同时确定该知识点所属的知识类型。而且,可以实现对多个知识类型下的知识点的共同抽取,以满足不同用户的抽取需求。
[0346]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提出的技术方案所期望的结果,本文在此不进行限制。
[0347]
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献