CN114611519A - 一种文本的实体关系抽取方法、装置及电子设备 - Google Patents
一种文本的实体关系抽取方法、装置及电子设备 Download PDFInfo
- Publication number
- CN114611519A CN114611519A CN202210332714.7A CN202210332714A CN114611519A CN 114611519 A CN114611519 A CN 114611519A CN 202210332714 A CN202210332714 A CN 202210332714A CN 114611519 A CN114611519 A CN 114611519A
- Authority
- CN
- China
- Prior art keywords
- entity
- loss
- target
- relationship
- category
- 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
- 238000000605 extraction Methods 0.000 title claims abstract description 36
- 238000004821 distillation Methods 0.000 claims abstract description 73
- 238000000034 method Methods 0.000 claims abstract description 28
- 239000011159 matrix material Substances 0.000 claims description 64
- 238000012549 training Methods 0.000 claims description 55
- 239000013598 vector Substances 0.000 claims description 38
- 238000013140 knowledge distillation Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 23
- 238000002372 labelling Methods 0.000 claims description 23
- 230000011218 segmentation Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 7
- 238000003058 natural language processing Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 210000004205 output neuron Anatomy 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- 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
- G06F40/295—Named entity recognition
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种文本的实体关系抽取方法、装置及电子设备,获取待处理的目标文本;调用目标识别模型对所述目标文本进行识别,确定与目标文本对应的实体关系识别结果。该目标识别模型对应的模型结构包括蒸馏损失模块和类别增量模块,可以通过蒸馏损失模块获得基础识别模型到目标识别模型的蒸馏损失,通过类别增量模块确定新增类别分类损失,实现了基于该模型结构解决在新增实体、关系类别后需要进行数据的重新标注产生的人力成本增加的问题,并且可以实现模型的持续学习,节约了重新学习的时间成本,提升了实体关系的抽取效率。
Description
技术领域
本申请涉及信息处理技术领域,更具体的说是涉及一种文本的实体关系抽取方法、装置及电子设备。
背景技术
自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。自然语言处理通常包括文本处理、语义理解、智能问答以及知识图谱等技术。其中,实体识别和关系抽取是自然语言处理应用中最基本的部分。
通常会通过机器学习模型对文本中的实体和关系进行抽取,但是在实际的应用场景中,每隔一段时间,业务场景中可能会对实体和/或关系的类别进行重新定义,实体或关系类别的增加会带来较大的人工标注量,即需要对机器学习模型的训练样本进行重新标注,然后重新训练,从而耗费巨大的人力成本,并且降低了实体关系的抽取效率。
发明内容
有鉴于此,本申请提供如下技术方案:
一种文本的实体关系抽取方法,包括:
获取待处理的目标文本;
调用目标识别模型对所述目标文本进行识别,确定与所述目标文本对应的实体关系识别结果;
其中,所述目标识别模型对应的模型结构包括知识蒸馏模块和类别增量模块,所述知识蒸馏模块用来获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,所述类别增量模块用来获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,以使得通过所述基础识别模型、所述蒸馏损失和所述新增类别分类损失确定所述目标识别模型,所述目标识别模型和所述基础识别模型对应的识别任务相同。
可选地,所述方法还包括:
获取目标训练样本数据,所述目标训练样本数据标注有针对所述新增实体关系类别的第一实体关系类别标注数据;
基于所述基础识别模型对所述目标训练样本数据进行识别,得到第二实体关系类别标注数据;
通过所述目标识别模型对应的模型结构中的矩阵填充模块,生成与所述第一实体关系类别标注数据以及所述第二实体类别标注数据对应的词向量矩阵;
通过所述知识蒸馏模块对所述词向量矩阵进行处理,得到蒸馏损失;
通过所述类别增量模块对所述词向量矩阵进行处理,得到新增类别分类损失;
基于所述蒸馏损失、所述新增类别分类损失和所述目标训练样本数据,确定所述目标识别模型。
可选地,所述方法还包括:
获取第一文本数据以及与所述第一文本数据相匹配的实体关系类别信息;
基于所述实体关系类别信息对所述第一文本数据进行实体关系标注,得到第一训练样本;
对所述第一训练样本进行分词,并基于分词结果进行词向量表示,获得词向量矩阵;
基于所述词向量矩阵确定损失函数;
基于所述损失函数和所述第一训练样本进行训练,得到基础识别模型。
可选地,所述基于所述词向量矩阵确定损失函数,包括:
利用所述基础识别模型对分词结果中的每一词进行预测,得到与每一词对应的预测实体和关系;
基于预测实体,确定与每一所述词标注的实体之间的实体交叉熵损失;
基于预测关系,确定与每一所述词标注的关系之间的关系交叉熵损失;
根据所述实体交叉熵损失和所述关系交叉熵损失,确定损失函数。
可选地,所述蒸馏损失包括实体蒸馏损失和关系蒸馏损失,所述新增类别分类损失包括新增实体类别分类损失和新增关系分累损失,所述方法还包括:
确定所述矩阵填充模块中的词向量矩阵中每一新增节点对应的类别信息;
若所述类别信息表征所述新增节点为实体类别,基于所述实体蒸馏损失和所述新增实体类别分类损失,确定所述节点的总体损失;
若所述类别信息表征所述新增节点为关系类别,基于所述关系蒸馏损失和所述新增关系类别分类损失,确定所述节点的总体损失;
基于每一新增节点的总体损失,确定所述目标识别模型的损失函数。
可选地,所述获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,包括:
通过所述目标识别模型对相对于所述基础识别模型的新增实体关系类别对应的数据样本进行预测,得到预测的实体关系数据;
基于所述预测的实体关系数据和所述第一实体关系标注数据,确定与所述新增实体关系类别信息对应的实体关系抽取的新增类别分类损失。
可选地,其中,获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,包括:
确定与所述基础识别模型对应的第一实体关系分类概率分布;
获得所述目标识别模型对应的训练阶段中的第二实体关系分类概率分布;
根据所述第一实体关系分类概率分布和所述第二实体关系分类概率分布,确定蒸馏损失。
可选地,所述方法还包括:
若获取到针对所述目标识别模型的新增实体类别和/或关系类别;
基于所述目标识别模型以及与所述新增实体类别和/或关系类别对应的训练样本,对所述目标识别模型进行更新,得到更新后的目标识别模型,所述更新后的目标识别模型能够对新增实体类别和/或关系类别以及所述目标识别模型对应的原有实体类别的文本进行实体关系抽取。
一种文本的实体关系抽取装置,包括:
获取单元,用于获取待处理的目标文本;
调用单元,用于调用目标识别模型对所述目标文本进行识别,确定与所述目标文本对应的实体关系识别结果;
其中,所述目标识别模型对应的模型结构包括知识蒸馏模块和类别增量模块,所述知识蒸馏模块用来获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,所述类别增量模块用来获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,以使得通过所述基础识别模型、所述蒸馏损失和所述新增类别分类损失确定所述目标识别模型,所述目标识别模型和所述基础识别模型对应的识别任务相同。
一种电子设备,包括:
存储器,用于存储应用程序和所述应用程序运行所产生的数据;
处理器,用于执行所述应用程序,以实现如上述中任一项所述的文本的实体关系抽取方法。
经由上述的技术方案可知,本申请公开一种文本的实体关系抽取方法、装置及电子设备,获取待处理的目标文本;调用目标识别模型对所述目标文本进行识别,确定与目标文本对应的实体关系识别结果。该目标识别模型对应的模型结构包括蒸馏损失模块和类别增量模块,可以通过蒸馏损失模块获得基础识别模型到目标识别模型的蒸馏损失,通过类别增量模块确定新增类别分类损失,实现了基于该模型结构解决在新增实体、关系类别后需要进行数据的重新标注产生的人力成本增加的问题,并且可以实现模型的持续学习,节约了重新学习的时间成本,提升了实体关系的抽取效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种文本的实体关系抽取方法的流程示意图;
图2为本申请实施例提供的一种目标识别模型的结构示意图;
图3为本申请实施例提供的一种矩阵填充的示意图;
图4为本申请实施例提供的一种应用场景的示意图;
图5为本申请实施例提供的一种文本的实体关系抽取装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,如下:
实体是一个系统内可定义的事物或概念,如人名、角色、地名、事件等。对应的,实体识别任务是识别文本句子中存在的实体以及类别。
关系抽取:关系定义为两个或多个实体之间的联系,关系抽取就是通过学习文本中多实体之间的语义联系,来识别其关系。关系抽取的输入是一段文本,输出通常是一个三元组:(实体1,关系,实体2)。例如,输入的文本“李四的住址是和平街”,经过关系抽取后,输出的三元组为(李四,住址,和平街)。关系抽取任务是识别句子中任意两个实体的关系,可以建模为文本分类任务。
无结构信息抽取是指联合实体关系抽取任务,目的是从文本中抽取三元组,如,(头实体,关系,尾实体)。
参见图1,为本申请实施例提供的一种文本的实体关系抽取方法的流程示意图,该方法可以包括以下步骤:
S101、获取待处理的目标文本。
其中,待处理的目标文本是指需要进行实体关系抽取的文本,可以是一段文本内容,也可以是一句话。目标文本可以是获取的原始文本信息,即未经过任何处理的文本,也可以是经过文本预处理后的文本,如对文本内容进行格式统一、重复内容去重,或者进行数据清洗等预处理后的文本。
S102、调用目标识别模型对目标文本进行识别,确定与目标文本对应的实体关系识别结果。
通过目标识别模型识别获得的实体关系识别结果主要是通过三元组的形式体现,即得到的实体关系识别结果为[实体1,关系,实体2]。
在本申请实施例中的目标识别模型并不是采用通用的识别模型的模型结构,即并不是对与所述目标识别模型对应的识别任务的所有样本数据进行标注后得到目标训练样本,再通过神经网络训练得到的。而是在已有的实体关系识别模型的基础上,仅需对增量样本进行实体关系标注后得到的神经网络模型。具体的,所述目标识别模型对应的模型结构包括知识蒸馏模块和类别增量模块,所述知识蒸馏模块用来获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,所述类别增量模块用来获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,以使得通过所述基础识别模型、所述蒸馏损失和所述新增类别分类损失确定所述目标识别模型。其中,所述目标识别模型和基础识别模型对应的识别任务相同。
本申请对应的应用场景是在已有的识别模型的基础上新增了实体和/或关系的类别后,针对文本的实体关系抽取的场景。其中,已有的识别模型为基础识别模型,其用于对未增加实体和/或关系类别之前的已有的实体关系进行抽取。而目标识别模型可以对新增了实体和/或关系的类别后对应的文本进行识别,但是二者的识别任务相同。例如,基础识别模型和目标识别模型均是对用户信息领域中的实体关系进行抽取。举例说明,在基础识别模型进行训练时,已有的实体类别包括第一实体类别和第二实体类别,关系类别包括第一关系类别和第二关系类别,此时基础识别模型可以识别到的结果是第一实体类别、第二实体类别、第一关系类别和第二关系类别对应的实体关系三元组。若新增了第三实体类别后,目标识别模型可以识别得到第一实体类别、第二实体类别、第三实体类别和第一关系类别、第二关系类别对应的实体关系三元组。在获得目标识别模型时,本申请实施例无需在新增第三实体类别后对所有的样本数据进行重新的实体关系标注,而是仅标注与第三实体类别相关的实体关系即可,其原有的实体关系标注数据是通过基础识别模型获得的。
具体的,在本申请实施例中目标识别模型具有特定的模型结构,其包括知识蒸馏模块和类别增量模块,知识蒸馏模块可以将基础识别模型的知识迁移到目标识别模型,即可以获得基础识别模型蒸馏到目标识别模型的蒸馏损失。新增类别识别模型基于普通分类问题学习新增类别的知识,即可以获得新增类别分类损失,从而可以根据蒸馏损失和新增分类损失确定目标识别模型的损失函数。基于该损失函数和原有的基础识别模型的蒸馏知识获得目标识别模型。从而可以解决实体、关系类别同时增加的问题,也降低了数据标注及模型重新训练的成本,减少模型的灾难性遗忘。
在本申请实施例中还提供了一种目标识别模型的构建方法,该方法可以包括以下步骤:
S201、获取目标训练样本。
所述目标训练样本数据标注有针对新增实体关系类别的第一实体关系类别标注数据。
S202、基于基础识别模型对目标训练样本数据进行识别,得到第二实体关系类别标注数据。
S203、通过目标识别模型对应的模型结构中的矩阵填充模块,生成与第一实体关系类别标注数据以及第二实体类别标注数据对应的词向量矩阵。
S204、通过知识蒸馏模块对词向量矩阵进行处理,得到蒸馏损失。
S205、通过类别增量模块对词向量矩阵进行处理,得到新增类别分类损失。
S206、基于蒸馏损失、新增类别分类损失和目标训练样本数据,确定目标识别模型。
目标训练样本数据可以是仅包括新增实体关系类别对应的文本数据,还可以是包括已有实体关系类别和新增实体关系类别对应的文本数据,需要说明的是,本申请实施例中仅需要对新增实体关系类别进行对应的三元组数据标注(即得到第一实体关系类别标注数据),而无需对所有实体关系类别对应的三元组数据进行标注。
对于已有的实体关系类别可以采用与之对应的基础识别模型对目标训练样本数据进行识别,得到与已有的实体关系类别对应的第二实体关系类别标注数据。其中,第一实体关系类别标注数据和第二实体关系类别标注数据表征当前目标训练样本数据对应的文本中的实体关系三元组,如,[实体1,关系1,实体2],[实体3,关系2,实体4]等。
在本申请实施例中将实体、关系抽取定义为矩阵填充的联合建模问题,构建矩阵知识蒸馏,联合解决实体、关系类别同时增加的灾难性遗忘。搭建类别增量模块,实现新类别学习。通过配置的目标识别模型的模型结构,在实体、关系同时增加类别的情况下,保持实体和关系旧类别识别能力的同时,增加识别新类别的能力。因此,该目标识别模型的模型结构中还包括矩阵填充模块,该矩阵填充模块用于生成与第一实体关系类别标注数据以及第二实体类别标注数据对应的词向量矩阵。通过知识蒸馏模块可以获得基础识别模型的知识,进一步可以得到蒸馏损失。通过类别增量模块可以对新增实体关系类别进行学习,进一步可以得到新增类别分类损失。
参见图2,为本申请实施例提供的一种目标识别模型的结构示意图,该目标识别模型的模型结构包括矩阵填充模块301、知识蒸馏模块302和类别增量模块303,其中,知识蒸馏模块302和类别增量模块303组成了目标识别模型的持续学习的部分。
在本申请实施例中还提供了一种生成基础识别模型的方法,该方法可以包括以下步骤:
S401、获取第一文本数据以及与所述第一文本数据相匹配的实体关系类别信息。
S402、基于所述实体关系类别信息对所述第一文本数据进行实体关系标注,得到第一训练样本。
S403、对所述第一训练样本进行分词,并基于分词结果进行词向量表示,获得词向量矩阵。
S404、基于所述词向量矩阵确定损失函数。
S405、基于所述损失函数和所述第一训练样本进行训练,得到基础识别模型。
其中,第一文本数据是用于训练基础识别模型的文本数据,在对第一文本数据进行实体关系标注时,首先确定与该第一文本数据对应的实体关系类别,以便于后续在新增实体和/或关系类别时,能够明确相对于基础识别模型具体的新增实体和/或关系类别信息。然后对该文本数据中的实体关系进行标注,得到第一训练样本。对第一训练样本进行分词并进行词向量表示得到此向量矩阵,基于该词向量矩阵进行神经网络模型训练,在训练过程中通过预测结果和实际标注结果的比较确定损失函数,基于损失函数对模型参数进行调整,得到最终的基础识别模型。
进一步,所述基于所述词向量矩阵确定损失函数,包括:利用所述基础识别模型对分词结果中的每一词进行预测,得到与每一词对应的预测实体和关系;基于预测实体,确定与每一所述词标注的实体之间的实体交叉熵损失;基于预测关系,确定与每一所述词标注的关系之间的关系交叉熵损失;根据所述实体交叉熵损失和所述关系交叉熵损失,确定损失函数。
在本申请中将新增类别的识别问题构建成一个矩阵填充模型,即通过矩阵填充模块301生成词向量矩阵。参见图3,为本申请实施例提供的一种矩阵填充的示意图。首先将句子输入信息抽取模型,获得每个词的向量表示,若句子有N个词,则将词表示为(N*H),其中,H为词表示长度。根据词与词之间的关系,构建(N*N*H)的词向量矩阵。在图3中,横轴为实体,纵轴也为实体,实体与实体之间的叠加即表格中内容为对应的实体与实体之间的关系。如,[张三,住在,A城市]。图3中对角线词表示用于构建与真实实体的损失(以NER loss表示),非对角线用于构建与真实关系的损失(以REloss)。可以通过NER loss+RE loss反向传播训练信息抽取模型。这样可以通过矩阵填充模块获得对应的分类损失,当增加新的实体或者关系时,可以在该矩阵填充模块中进行补充,例如,增加实体时可以补充在图3中的横轴和纵轴位置,若增加关系,则可以补充在对应的实体叠加的方格内。
在本申请实施例的另一实施方式中,所述蒸馏损失包括实体蒸馏损失和关系蒸馏损失,所述新增类别分类损失包括新增实体类别分类损失和新增关系分累损失,所述方法还包括:
确定所述矩阵填充模块中的词向量矩阵中每一新增节点对应的类别信息;若所述类别信息表征所述新增节点为实体类别,基于所述实体蒸馏损失和所述新增实体类别分类损失,确定所述节点的总体损失;若所述类别信息表征所述新增节点为关系类别,基于所述关系蒸馏损失和所述新增关系类别分类损失,确定所述节点的总体损失;基于每一新增节点的总体损失,确定所述目标识别模型的损失函数。
在新增实体和/或关系类别后,可以通过矩阵填充模块确定每一新增节点对应分类损失,从而确定该节点的总体损失。其中,节点为图3中的对角线或者非对角线上的节点。
在本申请实施例的一种实施方式中,新增类别分类损失是通过训练得到的模型对文本进行实体关系抽取得到的预测结果与实际标注结果进行比较,确定的损失。具体的,所述获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,包括:通过所述目标识别模型对相对于所述基础识别模型的新增实体关系类别对应的数据样本进行预测,得到预测的实体关系数据;基于所述预测的实体关系数据和所述第一实体关系标注数据,确定与所述新增实体关系类别信息对应的实体关系抽取的新增类别分类损失。
在另一实施方式中,获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,包括:确定与所述基础识别模型对应的第一实体关系分类概率分布;获得所述目标识别模型对应的训练阶段中的第二实体关系分类概率分布;根据所述第一实体关系分类概率分布和所述第二实体关系分类概率分布,确定蒸馏损失。
蒸馏损失是结合对应的基础知识模型进行知识蒸馏评估得到的损失。可以选定一个样本数据,将该样本数据分别输入至基础识别模型和目标识别模型,以通过基础识别模型和目标识别模型分别获得对应的实体关系识别结果,将基础识别模型识别得到的各个实体关系对应的三元组的概率分布记为第一实体关系概率分布,将目标识别模型识别得到的各个实体关系对应的三元组的概率分布记为第二实体关系概率分布。第一实体关系概率分布和第二实体关系概率分布均用于反映选定的样本数据属于各种候选三元组的概率或者得分的分布情况。
在基于基础识别模型和目标识别模型得到针对相同样本数据的识别概率分布后,即可结合第一实体关系概率分布和第二实体关系概率分布之间的差距,确定对应的实体关系识别任务的蒸馏损失,并将该蒸馏损失作为目标识别模型的参数迭代。
在本申请实施例的目标识别模型的模型结构的持续学习部分包括知识蒸馏模块和类别增量模块,在实际的应用场景中,如果实体和关系出现新类别,图3中的矩阵填充模型就无法使用了,因为在图3的矩阵填充模型中的实体和关系的类别输出是预定义好的,因此,需要提出新的模型结构来适配无结构信息抽取类别增加的场景。
具体的,请参见图4,为本申请实施例提供的一种应用场景的示意图。其中,编码器1为基础识别模型,即能够对已有实体、关系类别进行实体关系识别的模型。在图4中编码器1标识具有N个实体类别(N=2)和M个关系类别(M=3)的信息抽取模型,编码器2表示目标识别模型,即实体和关系分别增加了一个类别的信息抽取模型。
在构建编码器2时,基于图3中矩阵填充模块中的矩阵填充模型将编码器2对应的抽取矩阵中对角线每个节点的输出神经元为N+1,非对角线每个节点的输出神经元为M+1。然后对编码器2进行初始化,初始化时采用新增类别之外的参数,其他参数用编码器1初始化。
知识蒸馏模块:仅考虑编码器1中的N个实体类别和M个关系类别来确定编码器1(即基础识别模型)蒸馏至编码器2(即目标识别模型)的蒸馏损失。实体节点是将图3上下两个矩阵中的对角线输出节点一一对应,构建实体蒸馏损失(以NER蒸馏loss表示);关系节点是将上下两个矩阵中的非对角线输出节点一一对应,构建关系蒸馏损失(以RE蒸馏loss表示)。
类别增量模块,包括关系的类别增量和实体的类别增量,其中,在图4中空心圆圈代表原有的实体和关系,实心圆圈代表新增的实体和关系。关系的类别增量是指非对角线输出节点中新增关系的节点和新类别标签计算分类损失,记为RE分类loss。实体的类别增量是指对角线输出节点中新关系节点和新类别标签计算分类损失,记为NER分类loss。
针对上下两个矩阵中的每一个节点,都一一对应计算其蒸馏损失和分类损失,将各个损失进行求和平均,反向传播,即可获得同时增加实体和类别的信息抽取模型,即得到目标识别模型。
在图4中已有实体可以包括人名、地名,已有关系可以包括“不存在”、“住在”、“位于”,新增实体可以包括组织名,新增关系可以包括“工作在”。即在图4中的编码器2中仅对新增实体和关系的相关信息标注即可,其他信息可以通过编码器1进行蒸馏得到,具体可以参见上述的详细描述过程。
由于实体和关系的新增类别可以是持续增加的,即可以目标识别模型的基础上继续对新增加的实体和/或关系类别进行学习,以使得更新后的识别模型能够对新增类型进行实体关系的抽取,即当有新类别增加时,基于本申请实施例中的模型结构重复上述的迭代过程,可实现信息抽取的终身学习。具体的,若获取到针对所述目标识别模型的新增实体类别和/或关系类别;基于所述目标识别模型以及与所述新增实体类别和/或关系类别对应的训练样本,对所述目标识别模型进行更新,得到更新后的目标识别模型,所述更新后的目标识别模型能够对新增实体类别和/或关系类别以及所述目标识别模型对应的原有实体类别的文本进行实体关系抽取。
在本申请实施例提供的一种文本实体关系抽取方法中,不需要在每次增加实体或者关系类别后对样本数据中的实体关系进行全部重新标注,将实体关系抽取问题构建成一个矩阵填充模型,使用模型结构中的知识蒸馏模块和类别增量模块,通过矩阵间的知识蒸馏学习旧类别的知识,通过普通分类问题学习新类别的知识。定义并解决了实体、关系类别同时增加的问题,也降低数据标注及模型重训成本,减少模型的灾难性遗忘。通过知识蒸馏模块和类别增量模块的交互配合,实现尽可能避免灾难遗忘的前提下,同时增加实体和关系类别,最大程度减少标注成本,保留模型性能,很大程度上提升了信息抽取下游任务(KBQA,查询、推荐、搜索)的整体可适应性。
在本申请的另一实施例中还提供了一种文本的实体关系抽取装置,参见图5,包括:
获取单元501,用于获取待处理的目标文本;
调用单元502,用于调用目标识别模型对所述目标文本进行识别,确定与所述目标文本对应的实体关系识别结果;
其中,所述目标识别模型对应的模型结构包括知识蒸馏模块和类别增量模块,所述知识蒸馏模块用来获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,所述类别增量模块用来获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,以使得通过所述基础识别模型、所述蒸馏损失和所述新增类别分类损失确定所述目标识别模型,所述目标识别模型和所述基础识别模型对应的识别任务相同。
本申请公开一种文本的实体关系抽取装置,获取单元获取待处理的目标文本;调用单元调用目标识别模型对所述目标文本进行识别,确定与目标文本对应的实体关系识别结果。该目标识别模型对应的模型结构包括蒸馏损失模块和类别增量模块,可以通过蒸馏损失模块获得基础识别模型到目标识别模型的蒸馏损失,通过类别增量模块确定新增类别分类损失,实现了基于该模型结构解决在新增实体、关系类别后需要进行数据的重新标注产生的人力成本增加的问题,并且可以实现模型的持续学习,节约了重新学习的时间成本,提升了实体关系的抽取效率。
可选地,所述装置还包括:
第一获取单元,用于获取目标训练样本数据,所述目标训练样本数据标注有针对所述新增实体关系类别的第一实体关系类别标注数据;
第一识别单元,用于基于所述基础识别模型对所述目标训练样本数据进行识别,得到第二实体关系类别标注数据;
第一生成单元,用于通过所述目标识别模型对应的模型结构中的矩阵填充模块,生成与所述第一实体关系类别标注数据以及所述第二实体类别标注数据对应的词向量矩阵;
第一处理单元,用于通过所述知识蒸馏模块对所述词向量矩阵进行处理,得到蒸馏损失;
第二处理单元,用于通过所述类别增量模块对所述词向量矩阵进行处理,得到新增类别分类损失;
第一确定单元,用于基于所述蒸馏损失、所述新增类别分类损失和所述目标训练样本数据,确定所述目标识别模型。
可选地,所述装置还包括:
第二获取单元,用于获取第一文本数据以及与所述第一文本数据相匹配的实体关系类别信息;
第一标注单元,用于基于所述实体关系类别信息对所述第一文本数据进行实体关系标注,得到第一训练样本;
分词单元,用于对所述第一训练样本进行分词,并基于分词结果进行词向量表示,获得词向量矩阵;
第二确定单元,用于基于所述词向量矩阵确定损失函数;
训练单元,用于基于所述损失函数和所述第一训练样本进行训练,得到基础识别模型。
进一步,所述第二确定单元包括:
第一预测子单元,用于利用所述基础识别模型对分词结果中的每一词进行预测,得到与每一词对应的预测实体和关系;
第一确定子单元,用于基于预测实体,确定与每一所述词标注的实体之间的实体交叉熵损失;
第二确定子单元,用于基于预测关系,确定与每一所述词标注的关系之间的关系交叉熵损失;
第三确定子单元,用于根据所述实体交叉熵损失和所述关系交叉熵损失,确定损失函数。
可选地,所述蒸馏损失包括实体蒸馏损失和关系蒸馏损失,所述新增类别分类损失包括新增实体类别分类损失和新增关系分累损失,所述装置还包括:
第三确定单元,用于确定所述矩阵填充模块中的词向量矩阵中每一新增节点对应的类别信息;
第四确定单元,用于若所述类别信息表征所述新增节点为实体类别,基于所述实体蒸馏损失和所述新增实体类别分类损失,确定所述节点的总体损失;
第五确定单元,用于若所述类别信息表征所述新增节点为关系类别,基于所述关系蒸馏损失和所述新增关系类别分类损失,确定所述节点的总体损失;
第六确定单元,用于基于每一新增节点的总体损失,确定所述目标识别模型的损失函数。
进一步,所述获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,包括:
通过所述目标识别模型对相对于所述基础识别模型的新增实体关系类别对应的数据样本进行预测,得到预测的实体关系数据;
基于所述预测的实体关系数据和所述第一实体关系标注数据,确定与所述新增实体关系类别信息对应的实体关系抽取的新增类别分类损失。
可选地,其中,获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,包括:
确定与所述基础识别模型对应的第一实体关系分类概率分布;
获得所述目标识别模型对应的训练阶段中的第二实体关系分类概率分布;
根据所述第一实体关系分类概率分布和所述第二实体关系分类概率分布,确定蒸馏损失。
可选地,所述装置还包括:
第三获取单元,用于若获取到针对所述目标识别模型的新增实体类别和/或关系类别;
更新单元,用于基于所述目标识别模型以及与所述新增实体类别和/或关系类别对应的训练样本,对所述目标识别模型进行更新,得到更新后的目标识别模型,所述更新后的目标识别模型能够对新增实体类别和/或关系类别以及所述目标识别模型对应的原有实体类别的文本进行实体关系抽取。
需要说明的是,本实施例中各个单元以及子单元的具体实现可以参考前文中的相应内容,此处不再详述。
在本申请的另一实施例中,还提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上任一项所述的文本的实体关系抽取方法的各个步骤。
在本申请的另一实施例中,还提供了一种电子设备,所述电子设备可以包括:
存储器,用于存储应用程序和所述应用程序运行所产生的数据;
处理器,用于执行所述应用程序,以实现如上述中任一项所述的文本的实体关系抽取方法。
需要说明的是,本实施例中处理器的具体实现可以参考前文中的相应内容,此处不再详述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种文本的实体关系抽取方法,包括:
获取待处理的目标文本;
调用目标识别模型对所述目标文本进行识别,确定与所述目标文本对应的实体关系识别结果;
其中,所述目标识别模型对应的模型结构包括知识蒸馏模块和类别增量模块,所述知识蒸馏模块用来获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,所述类别增量模块用来获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,以使得通过所述基础识别模型、所述蒸馏损失和所述新增类别分类损失确定所述目标识别模型,所述目标识别模型和所述基础识别模型对应的识别任务相同。
2.根据权利要求1所述的方法,所述方法还包括:
获取目标训练样本数据,所述目标训练样本数据标注有针对所述新增实体关系类别的第一实体关系类别标注数据;
基于所述基础识别模型对所述目标训练样本数据进行识别,得到第二实体关系类别标注数据;
通过所述目标识别模型对应的模型结构中的矩阵填充模块,生成与所述第一实体关系类别标注数据以及所述第二实体类别标注数据对应的词向量矩阵;
通过所述知识蒸馏模块对所述词向量矩阵进行处理,得到蒸馏损失;
通过所述类别增量模块对所述词向量矩阵进行处理,得到新增类别分类损失;
基于所述蒸馏损失、所述新增类别分类损失和所述目标训练样本数据,确定所述目标识别模型。
3.根据权利要求1所述的方法,所述方法还包括:
获取第一文本数据以及与所述第一文本数据相匹配的实体关系类别信息;
基于所述实体关系类别信息对所述第一文本数据进行实体关系标注,得到第一训练样本;
对所述第一训练样本进行分词,并基于分词结果进行词向量表示,获得词向量矩阵;
基于所述词向量矩阵确定损失函数;
基于所述损失函数和所述第一训练样本进行训练,得到基础识别模型。
4.根据权利要求3所述的方法,所述基于所述词向量矩阵确定损失函数,包括:
利用所述基础识别模型对分词结果中的每一词进行预测,得到与每一词对应的预测实体和关系;
基于预测实体,确定与每一所述词标注的实体之间的实体交叉熵损失;
基于预测关系,确定与每一所述词标注的关系之间的关系交叉熵损失;
根据所述实体交叉熵损失和所述关系交叉熵损失,确定损失函数。
5.根据权利要求2所述的方法,所述蒸馏损失包括实体蒸馏损失和关系蒸馏损失,所述新增类别分类损失包括新增实体类别分类损失和新增关系分累损失,所述方法还包括:
确定所述矩阵填充模块中的词向量矩阵中每一新增节点对应的类别信息;
若所述类别信息表征所述新增节点为实体类别,基于所述实体蒸馏损失和所述新增实体类别分类损失,确定所述节点的总体损失;
若所述类别信息表征所述新增节点为关系类别,基于所述关系蒸馏损失和所述新增关系类别分类损失,确定所述节点的总体损失;
基于每一新增节点的总体损失,确定所述目标识别模型的损失函数。
6.根据权利要求2所述的方法,所述获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,包括:
通过所述目标识别模型对相对于所述基础识别模型的新增实体关系类别对应的数据样本进行预测,得到预测的实体关系数据;
基于所述预测的实体关系数据和所述第一实体关系标注数据,确定与所述新增实体关系类别信息对应的实体关系抽取的新增类别分类损失。
7.根据权利要求5所述的方法,其中,获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,包括:
确定与所述基础识别模型对应的第一实体关系分类概率分布;
获得所述目标识别模型对应的训练阶段中的第二实体关系分类概率分布;
根据所述第一实体关系分类概率分布和所述第二实体关系分类概率分布,确定蒸馏损失。
8.根据权利要求1所述的方法,所述方法还包括:
若获取到针对所述目标识别模型的新增实体类别和/或关系类别;
基于所述目标识别模型以及与所述新增实体类别和/或关系类别对应的训练样本,对所述目标识别模型进行更新,得到更新后的目标识别模型,所述更新后的目标识别模型能够对新增实体类别和/或关系类别以及所述目标识别模型对应的原有实体类别的文本进行实体关系抽取。
9.一种文本的实体关系抽取装置,包括:
获取单元,用于获取待处理的目标文本;
调用单元,用于调用目标识别模型对所述目标文本进行识别,确定与所述目标文本对应的实体关系识别结果;
其中,所述目标识别模型对应的模型结构包括知识蒸馏模块和类别增量模块,所述知识蒸馏模块用来获得基础识别模型蒸馏至所述目标识别模型时的蒸馏损失,所述类别增量模块用来获得相对于所述基础识别模型的新增实体关系类别对应的新增类别分类损失,以使得通过所述基础识别模型、所述蒸馏损失和所述新增类别分类损失确定所述目标识别模型,所述目标识别模型和所述基础识别模型对应的识别任务相同。
10.一种电子设备,包括:
存储器,用于存储应用程序和所述应用程序运行所产生的数据;
处理器,用于执行所述应用程序,以实现如权利要求1-8中任一项所述的文本的实体关系抽取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210332714.7A CN114611519A (zh) | 2022-03-31 | 2022-03-31 | 一种文本的实体关系抽取方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210332714.7A CN114611519A (zh) | 2022-03-31 | 2022-03-31 | 一种文本的实体关系抽取方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114611519A true CN114611519A (zh) | 2022-06-10 |
Family
ID=81867199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210332714.7A Pending CN114611519A (zh) | 2022-03-31 | 2022-03-31 | 一种文本的实体关系抽取方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114611519A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115081452A (zh) * | 2022-08-22 | 2022-09-20 | 军工保密资格审查认证中心 | 一种实体关系的抽取方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180157643A1 (en) * | 2016-12-06 | 2018-06-07 | Siemens Aktiengesellschaft | Device and method for natural language processing |
CN111241279A (zh) * | 2020-01-07 | 2020-06-05 | 华东师范大学 | 一种基于多任务学习机制的自然语言关系抽取方法 |
CN111581387A (zh) * | 2020-05-09 | 2020-08-25 | 电子科技大学 | 一种基于损失优化的实体关系联合抽取方法 |
CN112069319A (zh) * | 2020-09-10 | 2020-12-11 | 杭州中奥科技有限公司 | 文本抽取方法、装置、计算机设备和可读存储介质 |
CN112364650A (zh) * | 2020-09-30 | 2021-02-12 | 深圳市罗湖区人民医院 | 一种实体关系联合抽取方法、终端以及存储介质 |
CN112528034A (zh) * | 2020-11-16 | 2021-03-19 | 中国科学院深圳先进技术研究院 | 一种基于知识蒸馏的实体关系抽取方法 |
CN113743432A (zh) * | 2020-05-29 | 2021-12-03 | 京东方科技集团股份有限公司 | 一种图像实体信息获取方法、设备、电子设备和存储介质 |
-
2022
- 2022-03-31 CN CN202210332714.7A patent/CN114611519A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180157643A1 (en) * | 2016-12-06 | 2018-06-07 | Siemens Aktiengesellschaft | Device and method for natural language processing |
CN111241279A (zh) * | 2020-01-07 | 2020-06-05 | 华东师范大学 | 一种基于多任务学习机制的自然语言关系抽取方法 |
CN111581387A (zh) * | 2020-05-09 | 2020-08-25 | 电子科技大学 | 一种基于损失优化的实体关系联合抽取方法 |
CN113743432A (zh) * | 2020-05-29 | 2021-12-03 | 京东方科技集团股份有限公司 | 一种图像实体信息获取方法、设备、电子设备和存储介质 |
CN112069319A (zh) * | 2020-09-10 | 2020-12-11 | 杭州中奥科技有限公司 | 文本抽取方法、装置、计算机设备和可读存储介质 |
CN112364650A (zh) * | 2020-09-30 | 2021-02-12 | 深圳市罗湖区人民医院 | 一种实体关系联合抽取方法、终端以及存储介质 |
CN112528034A (zh) * | 2020-11-16 | 2021-03-19 | 中国科学院深圳先进技术研究院 | 一种基于知识蒸馏的实体关系抽取方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115081452A (zh) * | 2022-08-22 | 2022-09-20 | 军工保密资格审查认证中心 | 一种实体关系的抽取方法 |
CN115081452B (zh) * | 2022-08-22 | 2022-11-01 | 军工保密资格审查认证中心 | 一种实体关系的抽取方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2722571C1 (ru) | Способ распознавания именованных сущностей в сетевом тексте на основе устранения неоднозначности вероятности в нейронной сети | |
CN109460479A (zh) | 一种基于事理图谱的预测方法、装置和系统 | |
CN111767725A (zh) | 一种基于情感极性分析模型的数据处理方法及装置 | |
CN110019703B (zh) | 数据标记方法及装置、智能问答方法及系统 | |
CN109948160B (zh) | 短文本分类方法及装置 | |
CN111177583A (zh) | 一种基于社交平台的人脉分析方法及系统 | |
CN111597341B (zh) | 一种文档级关系抽取方法、装置、设备及存储介质 | |
CN110929119A (zh) | 数据标注方法、装置、设备及计算机存储介质 | |
CN111625715A (zh) | 信息提取方法、装置、电子设备及存储介质 | |
CN113342958A (zh) | 问答匹配方法、文本匹配模型的训练方法和相关设备 | |
CN114611519A (zh) | 一种文本的实体关系抽取方法、装置及电子设备 | |
CN110674265B (zh) | 面向非结构化信息的特征判别与信息推荐系统 | |
CN113705159A (zh) | 商户名称的标注方法、装置、设备及存储介质 | |
CN115017271B (zh) | 用于智能生成rpa流程组件块的方法及系统 | |
CN111159370A (zh) | 一种短会话新问题生成方法、存储介质和人机交互装置 | |
CN110782221A (zh) | 一种面试智能评测系统及方法 | |
CN110633468A (zh) | 一种关于对象特征提取的信息处理方法及装置 | |
CN115688758A (zh) | 一种语句意图识别方法、装置和存储介质 | |
CN115099344A (zh) | 模型训练方法和装置、用户画像生成方法和装置、设备 | |
CN114842301A (zh) | 一种图像注释模型的半监督训练方法 | |
CN110879843B (zh) | 基于机器学习的构建自适应知识图谱技术的方法 | |
CN113806538A (zh) | 标签提取模型训练方法、装置、设备与存储介质 | |
CN113763934A (zh) | 音频识别模型的训练方法、装置和存储介质及电子设备 | |
CN113378826A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN112672266B (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 |