掌桥专利:专业的专利平台
掌桥专利
首页

一种实体抽取方法及装置

文献发布时间:2023-06-19 13:49:36


一种实体抽取方法及装置

技术领域

本发明涉及数据处理技术领域,尤其涉及一种实体抽取方法及装置。

背景技术

实体抽取是信息提取的一个子任务,目的是将文本中的实体定位并分类为预先定义的类别,如人员、组织、位置、时间、数量、货币值、百分比等。实体抽取中的实体一般可认为是具有特定意义或指代性强的实体,通常包括人名、地名、组织结构名、日期时间、专有名词等。实体抽取系统就是从非结构化的输入文本中抽取出上述实体,并且可以按照业务需求识别出更多类别的实体。

实体抽取是自然语言处理中一项基础性关键任务。同时实体抽取也是关系抽取、信息检索、知识图谱、机器翻译、问答系统等诸多自然语言任务的基础。

如何提升实体抽取的准确性成为一个亟待解决的技术问题。

发明内容

本发明提供一种实体抽取方法及装置,以提升实体抽取的准确性。

根据本发明的第一方面,提供一种实体抽取方法,包括:

对输入文本进行数据预处理,并利用语义表示提取模型对预处理后的数据进行语义表示提取,得到所述输入文本的语义表示;

利用特征增强模型对所述输入文本的语义表示进行特征增强处理,得到特征增强处理后的语义表示;其中,所述特征增强模型包括MLP模型以及BiLSTM模型;

依据所述特征增强处理后的语义表示,进行实体抽取处理。

根据本发明的第二方面,提供一种实体抽取装置,包括:

预处理单元,用于对输入文本进行数据预处理;

提取单元,用于利用语义表示提取模型对预处理后的数据进行语义表示提取,得到所述输入文本的语义表示;

特征增强单元,用于利用特征增强模型对所述输入文本的语义表示进行特征增强处理,得到特征增强处理后的语义表示;其中,所述特征增强模型包括MLP模型以及BiLSTM模型;

实体抽取单元,用于依据所述特征增强处理后的语义表示,进行实体抽取处理。

应用本发明公开的技术方案,对于利用语义表示提取模型对预处理后的数据进行语义表示提取,得到的输入文本的语义表示,通过利用包括MLP模型以及BiLSTM模型的特征增强模型进行特征增强处理,得到特征增强处理后的语义表示,并依据该特征增强处理后的语义表示进行实体抽取,提高了实体抽取的准确率、精确率以及召回率。

附图说明

图1是本发明实施例提供的一种实体抽取方法的流程示意图;

图2是本发明实施例提供的一种实体抽取模型的结构示意图;

图3是本发明实施例提供的“BERT模型+LSTM模型”的实体抽取效果示意图;

图4是本发明实施例提供的“BERT模型+MLP模型+BiLSTM模型”的实体抽取效果示意图;

图5是本发明实施例提供的一种实体抽取装置的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。

请参见图1,为本发明实施例提供的一种实体抽取方法的流程示意图,如图1所示,该实体抽取方法可以包括以下步骤:

步骤101、对输入文本进行数据预处理,并利用语义表示提取模型对预处理后的数据进行语义表示提取,得到输入文本的语义表示。

本发明实施例中,当需要对输入文本进行实体抽取时,需要先得到输入文本的语义表示,即将自然语言转化为机器能够理解和执行的语义表示(Meaning Representation,MR)。

示例性的,语义表示可以包括三种典型的方法:

语义表示方法一、一阶谓词逻辑(first-order predicate logic)

示例性的,一阶谓词逻辑是一种常见的语义表示方法,其可以包括如下基本元素:

命题、谓词、函数、连接符号(也可以称为连词)、等号以及量词。

语义表示方法二、λ-算子

示例性的,λ-算子的核心概念是表达式(expression),该概念可以采用递归的方式来定义。

语义表示方法三、λ-DCS(Dependency-based Compositional Semantics,基于依赖关系的组合语义)

示例性的,λ-DCS具有和λ-算子类似的语义表示能力,其可以包括如下基本元素和操作:

一元语义表示、二元语义表示、连接操作、交操作、并操作、否定操作以及高阶函数。

本发明实施例中,为了提高得到的输入本文的语义表示的准确性,进而优化实体抽取效果,在对输入本文进行实体抽取之前,可以先对输入本文进行数据预处理,以清除输入文本中的异常数据,如噪声标签、换行符、制表符等不需保留的字符。

本发明实施例中,对于预处理后的数据,可以利用语义表示提取模型对预处理后的数据进行语义表示提取,得到输入文本的语义表示。

示例性的,该语义表示提取模型可以包括BERT(Bidirectional EncoderRepresentations from Transformer,双向编码表征模型)模型。

步骤102、利用特征增强模型对输入文本的语义表示进行特征增强处理,得到特征增强处理后的语义表示;其中,该特征增强模型包括MLP模型以及BiLSTM模型。

本发明实施例中,为了进一步优化实体抽取效果,对于步骤101中得到的输入文本的语义表示,还可以利用特征增强模型对该输入本文的语义表示进行特征增强处理,以提取更多的特征,得到特征增强处理后的语义表示。

示例性的,为了优化特征增强效果,特征增强模型可以包括MLP(Muti-LayerPerception,多层感知器)模型以及BiLSTM(Bi-directional Long short-term MemoryNetwork,双向长短期记忆网络)。

示例性的,MLP模型可以包括一个输入层、一个输出层,以及至少一个隐层(或称为隐藏层)。

其中,输入层不对输入信息进行计算,而是用于向隐层传递信息。

隐层与MLP模型的外部没有直接联系,隐层对输入层获取到的外部信息进行计算,并传递到输出层。

输出层对隐层传递的信息进行计算,并向外(MLP模型外部)传递信息。

示例性的,训练过程中,MLP模型可以利用BP(Back Propagation,反向传播)算法进行训练。

利用训练后的MLP模型可以对输入本文中的词进行分类。

示例性的,通过使用MLP模型,可以解决单层感知机无法解决的非线性问题。

示例性的,考虑到进行实体抽取时,不仅需要进行词语的抽取,还需要在词的表示基础上组合成句子的表示。

而在词的表示基础上组合句子的表示时,还需要考虑词语在句子中前后顺序。

此外,考虑到使用LSTM算法虽然能够更好的捕捉到较长距离的依赖关系,但其无法编码从后到前的信息。

因而,为了优化特征增强效果,进而优化实体抽取效果,可以使用BiLSTM模型对MLP模型输出的特征进行特征增强,以便更好地捕捉双向的语义依赖。

步骤103、依据特征增强处理后的语义表示,进行实体抽取处理。

本发明实施例中,当按照上述步骤中描述的方式得到了输入文本的特征增强处理后的语义表示时,可以依据特征增强处理后的语义表示,进行实体抽取处理,即对输入文本中的实体进行定位以及分类。

示例性的,可以通过“B-Type”和“I-Type”来对实体进行标识和分类。

其中,“B”用于标识对应的字为实体的首字,“I”用于标识对应的字为实体的非首字。

“Type”用于标识实体的类型(或称为类别)。

示例性的,“PER”可以表示人名,“LOC”可以表示地名,“ORG”可以表示组织名。

举例来说,人名表示:小明,B-PER I-PER;

地名表示:厦门,B-LOC I-LOC;

组织名表示:郑州大学,B-ORG I-ORG I-ORG I-ORG

可见,在图1所示方法流程中,对于利用语义表示提取模型对预处理后的数据进行语义表示提取,得到的输入文本的语义表示,通过利用包括MLP模型以及BiLSTM模型的特征增强模型进行特征增强处理,得到特征增强处理后的语义表示,并依据该特征增强处理后的语义表示进行实体抽取,提高了实体抽取的准确率、精确率以及召回率。

在一些实施例中,步骤102中的MLP模型包括的隐层数为两层。

示例性的,考虑到通常MLP模型的隐层数越多,其处理效果会越好,但是其计算量相应地也会越大。

为了均衡处理效果和计算量,在本发明实施例中,MLP模型的隐层数可以为两层,即MLP模型可以包括一个输入层、一个输出层以及两个隐层。

在一些实施例中,步骤102中的MLP模型的激活函数可以为relu函数。

示例性的,为了避免训练结果不稳定以及梯度消失的问题产生,MLP模型的激活函数可以使用relu函数。

在一些实施例中,步骤102中的BiLSTM模型为多层BiLSTM模型。

示例性的,为了优化BiLSTM模型的特征增强效果,上述特征增强模型中的BiLSTM模型可以为多层BiLSTM模型,即通过使用多层BiLSTM模型对MLP模型输出的特征进行特征增强处理。

在一个示例中,上述多层BiLSTM模型为三层BiLSTM模型。

示例性的,考虑到BiLSTM模型的层数增加虽然可以在一定程度上优化特征增强效果,但是其计算量也会相应增加。

为了均衡特征增强效果和计算量,特征增强模型中可以利用三层BiLSTM模型对MLP模型的输出特征进行处理。

为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体实例对本发明实施例提供的技术方案进行说明。

如图2所示,为本发明实施例提供的一种实体抽取模型的结构示意图,如图2所示,该实体抽取模型可以包括数据预处理模型、BERT模型、MLP模型(也可以称为MLP层)以及BiLSTM模型(也可以称为BiLSTM层)以及softmax层。

在基于深度神经网络的自然语言处理方法中,文本中的字/词通常都用一维向量来表示(一般称之为“词向量”);在此基础上,神经网络会将文本中各个字或词的一维词向量作为输入,经过一系列复杂的转换后,输出一个一维词向量作为文本的语义表示。

BERT模型采用大规模、与特定自然语言处理任务无关的文本语料进行训练,其目标是学习语言本身应该是什么样的。其预训练过程就是逐渐调整模型参数,使得模型输出的文本语义表示能够刻画语言的本质,便于后续针对具体自然语言处理任务作微调。

示例性的,BERT的预训练任务可以包括两个:MLM(Masked Language Model,掩蔽语言模型)任务和NSP(Next Sentence Prediction,下一句预测)任务。其中:

MLM任务:给定一句话,随机掩蔽(mask)这句话中的一个或几个词,要求依据剩余词汇预测被mask的几个词分别是什么。

具体地,由于BERT采用的是深层双向Transformer模型,该方法在每一次训练时,可以随机选取输入序列中15%的词汇进行mask,然后将这15%的词汇对应位置的最后输出传入输出层来预测其本身的概率,让模型通过学习上下文来预测被mask掉的词汇,从而学到语言信息。

但是,上述操作会存在如下问题:当模型迁移到具体的NLP(Natural LanguageProcess,自然语言处理)任务时,是没有被mask的词汇的,从而导致模型没法适应。

因此,为了修正该问题,在对BERT模型进行训练时,可以进行如下改进:

对于选取到的15%的词汇,有80%的时间是被mask替代,有10%的时间是被随机的词汇替代,有10%的时间是不做改变。

NSP任务:给定一篇文章中的两句话,判断第二句话在文本中是否紧跟在第一句话之后。

具体地,在第一阶段MLM训练结束后,此时模型基本具备语言模型的能力,但是,在一些任务中,比如问答和常识推理,这些任务往往看重的不是模型的语言能力,而是模型能够判断句子之间的关系,因此,又进行了第二阶段的训练,即NSP。

NSP的目的是判别给定的两个句子A和B,判断B是否是A的下一句,从预训练的语料中构造了一个训练集,其中,有50%的样本中,A和B是上下文的关系,其标签为“IsNext(即B是A的下一句)”;另外50%的样本中,B是随机从语料抽取的句子,两者的标签是“NotNext(即B不是A的下一句)”,然后将A和B拼接后输入预训练的模型,最后利用输出向量来预测最终的标签类别。

可见,BERT模型的目标是利用大规模无标注语料训练、获得文本的包含丰富语义信息的表示,即:文本的语义表示,然后将文本的语义表示在特定自然语言处理任务中作微调,最终应用于该自然语言处理任务。

在该实施例中,相比于传统方案中通过“BERT模型+LSTM模型”用于实体抽取的实现方案,通过使用“MLP模型+BiLSTM模型”替代“LSTM”模型,即本发明实施例中通过“BERT模型+MLP模型+BiLSTM模型”实现实体抽取。

相比于传统的“MLP模型+BiLSTM模型”结构,其包括以下两个改进:

改进一、将单层的LSTM模型优化为三层的BILSTM的形式,相比于单层的LSTM模型,BILSTM可以提取前向和后向的信息。

多层的BILSTM模型可以提取更丰富的语义信息,有助于训练结果。

下面先对LSTM模型的实现原理进行简单说明。

LSTM是一种特殊的循环网络,主要是为了解决长序列训练过程中的梯度消失问题。其原理公式为:

f

其中,W

i

其中,W

其中,W

其中,f

o

其中,W

h

其中,o

示例性的,BiLSTM就是由前向的LSTM与后向的LSTM结合而成。

其中,BiLSTM的输出层保存了最后一层,每个time step的输出h。每个time step的输出h=[h正向,h逆向]。

BiLSTM的h

BiLSTM的C

改进二、在BERT和BILSTM中添加一个两层的MLP层。

示例性的,MLP层的激活函数采用relu函数:

MLP层的公式为:

第一层为:

y

第二层为:

y

其中,x指的是经过BERT层的输出,w

示例性的,MLP所有的参数包括各个层之间的连接权重以及偏置,包括w

求解最佳参数是最优化问题,解决办法可以使用梯度下降法(SGD):首先随机初始化所有参数,然后迭代地训练,不断地计算梯度和更新参数,直到满足某个条件为止(比如误差足够小(如误差小于预设误差阈值)、迭代次数足够多(如迭代次数大于预设次数阈值)时)。

示例性的,“BERT模型+LSTM模型”的实体抽取效果,以及,“BERT模型+MLP模型+BiLSTM模型”的实体抽取效果可以分别如图3和图4所示。

如图3和图4所示,相比于传统“BERT模型+LSTM模型”的实现方案,通过利用本发明实施例提供的技术方案,可以有效提升实体抽取的准确率、精确率、召回率以及F1值(也可以称为F1分数)。

其中,F1值可以通过以下公式确定:

其中,准确率所有的预测正确的样本的数量占样本总数的比例,精确率为正确预测的正样本的数量占被预测为正样本的样本数的比例,召回率为正确预测为正样本的数量占全部实际为正的样本的数量的比例。

请参见图5,为本发明实施例提供一种实体抽取装置的结构示意图,如图5所示,该实体抽取装置可以包括:

预处理单元510,用于对输入文本进行数据预处理;

提取单元520,用于利用语义表示提取模型对预处理后的数据进行语义表示提取,得到所述输入文本的语义表示;

特征增强单元530,用于利用特征增强模型对所述输入文本的语义表示进行特征增强处理,得到特征增强处理后的语义表示;其中,所述特征增强模型包括多层感知器MLP模型以及双向长短期记忆BiLSTM模型;

实体抽取单元540,用于依据所述特征增强处理后的语义表示,进行实体抽取处理。

在一些实施例中,所述MLP模型包括的隐层数为两层。

在一些实施例中,所述MLP模型的激活函数为relu函数。

在一些实施例中,所述BiLSTM模型为多层BiLSTM模型。

在一些实施例中,所述BiLSTM模型为三层BiLSTM模型。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

由上述实施例可见,对于利用语义表示提取模型对预处理后的数据进行语义表示提取,得到的输入文本的语义表示,通过利用包括MLP模型以及BiLSTM模型的特征增强模型进行特征增强处理,得到特征增强处理后的语义表示,并依据该特征增强处理后的语义表示进行实体抽取,提高了实体抽取的准确率、精确率以及召回率。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

相关技术
  • 实体抽取方法、实体抽取模型的训练方法、装置及设备
  • 实体关系的联合抽取方法和联合抽取装置
技术分类

06120113821780