CN111008276B - 一种完整实体关系抽取方法及装置 - Google Patents

一种完整实体关系抽取方法及装置 Download PDF

Info

Publication number
CN111008276B
CN111008276B CN201911038681.XA CN201911038681A CN111008276B CN 111008276 B CN111008276 B CN 111008276B CN 201911038681 A CN201911038681 A CN 201911038681A CN 111008276 B CN111008276 B CN 111008276B
Authority
CN
China
Prior art keywords
word
entity
label
sequence
words
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.)
Active
Application number
CN201911038681.XA
Other languages
English (en)
Other versions
CN111008276A (zh
Inventor
曾祥荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unisound Intelligent Technology Co Ltd
Original Assignee
Unisound Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Unisound Intelligent Technology Co Ltd filed Critical Unisound Intelligent Technology Co Ltd
Priority to CN201911038681.XA priority Critical patent/CN111008276B/zh
Publication of CN111008276A publication Critical patent/CN111008276A/zh
Application granted granted Critical
Publication of CN111008276B publication Critical patent/CN111008276B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Class or cluster creation or modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明提供一种完整实体关系抽取方法,该方法包括:首先对词序列进行预处理,然后输入到神经网络,利用神经网络编码器部分对词序列信息进行编码,并将编码结果传递给神经网络的解码器部分进行解码,获得只包含实体开始字的关系三元组,与分类器获得的词序列的BIO标签综合获得包含完整实体的关系三元组。综合利用基于BIO标签和拷贝机制,对于实体关系存在重叠时,能够抽取完整实体关系,且能确保获得的实体关系比较准确。

Description

一种完整实体关系抽取方法及装置
技术领域
本发明涉及信息处理领域,具体涉及一种完整实体关系抽取方法及装置。
背景技术
现有的基于神经网络的在有实体重叠现象时的实体关系抽取方法主要由以下步骤构成:首先将词序列进行词的向量化预处理,然后将预处理后的词序列输入编码器,编码器将输入词序列进行编码并产生输入词序列的编码表示。接着解码器读入所述编码表示,然后拷贝单个词的实体直接生成各个关系三元组。
而现有的方法生成实体关系时利用了拷贝机制从输入词序列中只复制了一个词,但是很多情况下,一个实体可以包含多个词,比如实体北京稻香村包括了北京和稻香村两个词,此时在生成实体关系时每次只复制一个词作为实体,就会导致实体不准确,进而导致实体关系不准确;且这种每次只复制一个词作为一个实体,也会使得实体存在重叠关系,如实体“北京”与实体“北京稻香村”存在重叠关系,且在实体重叠情况下,现有的技术只能抽取部分实体关系,不能生成一个完整的实体关系。
发明内容
本发明提供一种完整实体关系抽取方法,用以解决实体关系抽取中出现实体重叠现象时将实体完整地抽取出来的问题。
本发明提供一种完整实体关系抽取方法,包括以下步骤:
步骤1,将预处理好的词序列信息输入神经网络,神经网络的编码器部分将所述词序列信息进行编码,得到输入词序列信息的编码表示,并对所述词序列信息进行标签预测,所述标签为BIO标签;
步骤2,将所述输入词序列信息的编码表示输入到神经网络的解码器部分进行解码;
步骤3,解码器生成的输出序列按顺序每三个元素构成一个只包含实体开始字的关系三元组,综合考虑只包含实体开始字的关系三元组和输入词序列中每个词的标签以获取包含完整实体的关系三元组,所述标签为BIO标签。
进一步地,所述步骤1将预处理好的词序列信息输入神经网络,神经网络的编码器部分将词序列信息进行编码,编码步骤,包括:
步骤S101:输入的词序列为x=[x1,x2,...xi,...xn],对所述输入的词序列进行词向量预处理,得到词向量矩阵,所述词向量矩阵为v=[v1,v2,...vi,...vn],其中,x为所述输入的词序列,v为所述词向量矩阵,n为所述词序列内词的总个数,i为所述词序列内词个数的变量,初始值为1,以1为单位递增,最大值为n,xi表示所述词序列中第i个词,vi表示所述词向量矩阵第i个词的向量;
步骤S102:每个词都经过神经网络的编码器计算单元进行处理,所述编码器的编码表示计算公式如下:
Figure BDA0002252239940000021
其中,E为编码(Encode)的缩写,
Figure BDA0002252239940000022
为第i个词的编码表示,
Figure BDA0002252239940000023
为所述输入词序列中前i个词的编码表示,
Figure BDA0002252239940000024
为所述输入词序列前i-1个词的编码表示,
Figure BDA0002252239940000025
为随机初始化且可学习的参数,f()为编码器计算单元;
步骤S103:利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签;
步骤S104:如果i≤n,重复步骤S102至步骤S103,否则转到步骤2。
进一步地,步骤S103所述利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签,包括:
对所有词进行BIO预测,即对每个词预测一个标签,对应子标签有三个,分别是B标签,I标签和O标签;
B标签,表示当前词是一个实体的开始字;
I标签,表示当前词是一个实体除开始字以外的字;
O标签,表示当前词不属于所述一个实体;
标签预测公式如下:
Figure BDA0002252239940000031
其中,pBIO为预测BIO标签的概率分布,WBIO和bBIO均为随机初始化且可学习的参数,softmax为分类器,所述分类器为softmax分类器,所述标签为BIO标签。
进一步地,所述步骤2将输入词序列信息的编码表示输入到神经网络的解码器部分进行解码,解码步骤,包括:
步骤S201:所述解码器解码模型计算公式如下:
Figure BDA0002252239940000032
其中,t为当前解码时刻,D为解码(Decode)的缩写,
Figure BDA0002252239940000033
为解码器在t时刻的输出向量,
Figure BDA0002252239940000034
是解码器在t时刻的隐状态,
Figure BDA0002252239940000035
为第t-1个解码时刻的隐状态,
Figure BDA0002252239940000036
u0均为随机初始化且可学习的参数,g()为解码器计算单元,ut为第t个解码时刻解码器的输入;
步骤S202:如果t%3=1,利用关系预测函数对所述词序列信息进行关系预测,使用分类器来获取所预测的关系;如果t%3≠1转到步骤S203;所述关系预测函数如下:
Figure BDA0002252239940000037
其中,pl为所述关系的概率分布,wl与bl均为随机初始化且可学习的参数,所述分类器为softmax分类器;
步骤S203:如果t%3=2,利用拷贝机制从输入词序列中选择一个词复制过来作为第一个实体的开始字,使用分类器来选择需要拷贝的实体;如果t%3≠2转到步骤S204,所述分类器来选择需要拷贝的实体计算公式如下:
Figure BDA0002252239940000041
其中,pe为各个词拷贝的概率,we、be均为随机初始化且可学习的参数,所述分类器为softmax分类器;
步骤S204:如果t%3=0,利用拷贝机制从输入词序列中选择一个词复制过来作为第二个实体的开始字,采用的公式为所述分类器来选择需要拷贝的实体计算公式;
步骤S205:如果t<T,其中T为解码时刻的最大值,并且满足T=3m,m为正整数,取值范围为m∈{1,2,3,...,m},重复按序执行所述步骤S201至S204,否则转到步骤S206;
步骤S206:如果t=T,结束解码过程。
进一步地,所述步骤3所述解码器生成的输出序列按顺序每三个元素构成一个只包含实体开始字的关系三元组,综合考虑只包含实体开始字的关系三元组和输入词序列中每个词的BIO标签以获取包含完整实体的关系三元组,完整关系三元组抽取步骤,包括:
步骤S301:给定一个只包含实体开始字的关系三元组以及输入词序列中每个词的标签,所述标签为BIO标签;
步骤S302:取出所述只包含实体开始字的关系三元组中的第一个实体的开始字,找到所述第一个实体在输入词序列中对应的BIO标签,如果所述第一个实体的开始字对应的标签是B标签,则将词序列中所述第一个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第一个实体的开始字后面,作为抽取得到的第一个完整实体;
例如:“北京稻香村”是一个完整实体,北对应的标签为B,京稻香村对应的标签分别为I,如果村后面跟了个其他字如它,则它对应的标签为O,表示它不属于完整“北京稻香村”,而属于其他实体。
步骤S303:取出所述只包含实体开始字的关系三元组中的第二个实体的开始字,找到所述第二个实体在输入词序列中对应的BIO标签,如果所述第二个实体的开始字对应的标签是B标签,则将词序列中所述第二个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第二个实体的开始字后面,作为抽取得到的第二个完整实体;
步骤S304:取出只包含实体开始字的关系三元组中的关系,与步骤S303和步骤S302中所述完整实体构成一个完整的关系三元组;
步骤S305:如果还有未处理的只包含实体开始字的关系三元组,则按序重复执行步骤S301、步骤S302、步骤S303;否则,则结束关系三元组抽取。
一种完整实体关系抽取装置,其特征在于,包括:
编码模块,将预处理好的词序列信息输入神经网络,神经网络的编码器部分将所述词序列信息进行编码,得到输入词序列信息的编码表示,并对所述词序列信息进行标签预测,所述标签为BIO标签;
解码模块,将所述输入词序列信息的编码表示输入到神经网络的解码器部分进行解码;
获取模块,解码器生成的输出序列按顺序每三个元素构成一个只包含所述实体开始字的关系三元组,综合考虑只包含实体开始字的关系三元组和输入词序列中每个词的标签以获取包含完整实体的关系三元组,所述标签为BIO标签。
进一步地,所述编码模块包括:
预处理子模块:输入的词序列为x=[x1,x2,...xi,...xn],对所述输入的词序列进行词向量预处理,得到词向量矩阵,所述词向量矩阵为v=[v1,v2,...vi,...vn],其中,x为所述输入的词序列,v为所述词向量矩阵,n为所述词序列内词的总个数,i为所述词序列内词个数的变量,初始值为1,以1为单位递增,最大值为n,xi表示所述词序列中第i个词,vi表示所述词向量矩阵第i个词的向量;
编码计算子模块:每个词都经过神经网络的编码器计算单元进行处理,所述编码器的编码表示计算公式如下:
Figure BDA0002252239940000051
其中,E为编码(Encode)的缩写,
Figure BDA0002252239940000061
为第i个词的编码表示,
Figure BDA0002252239940000062
为所述输入词序列中前i个词的编码表示,
Figure BDA0002252239940000063
为所述输入词序列前i-1个词的编码表示,
Figure BDA0002252239940000064
为随机初始化且可学习的参数,f()为编码器计算单元;
标签预测子模块:利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签;
循环解码子模块:如果i≤n,重复编码计算子模块至标签预测子模块,否则转到解码模块。
进一步地,所述标签预测子模块所述利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签,包括:
对所有词进行BIO预测,即对每个词预测一个标签,对应子标签有三个,分别是B标签,I标签和O标签;
B标签,表示当前词是一个实体的开始字;
I标签,表示当前词是一个实体除开始字以外的字;
O标签,表示当前词不属于所述一个实体;
标签预测公式如下:
Figure BDA0002252239940000065
其中,pBIO为预测BIO标签的概率分布,WBIO和bBIO均为随机初始化且可学习的参数,softmax为分类器,所述分类器为softmax分类器,所述标签为BIO标签。
进一步地,所述解码模块将输入词序列信息的编码表示输入到神经网络的解码器部分进行解码,解码步骤,包括:
解码计算子模块:所述解码器解码模型计算公式如下:
Figure BDA0002252239940000066
其中,t为当前解码时刻,D为解码(Decode)的缩写,
Figure BDA0002252239940000067
为解码器在t时刻的输出向量,
Figure BDA0002252239940000068
是解码器在t时刻的隐状态,
Figure BDA0002252239940000069
为第t-1个解码时刻的隐状态,
Figure BDA0002252239940000071
u0均为随机初始化且可学习的参数,g()为解码器计算单元,ut为第t个解码时刻解码器的输入;
关系预测子模块:如果t%3=1,利用关系预测函数对所述词序列信息进行关系预测,使用分类器来获取所预测的关系;如果t%3≠1第一实体拷贝子模块;所述关系预测函数如下:
Figure BDA0002252239940000072
其中,pl为所述关系的概率分布,wl与bl均为随机初始化且可学习的参数,所述分类器为softmax分类器;
第一实体拷贝子模块:如果t%3=2,利用拷贝机制从输入词序列中选择一个词复制过来作为第一个实体的开始字,使用分类器来选择需要拷贝的实体;如果t%3≠2转到第二实体拷贝子模块,所述分类器来选择需要拷贝的实体计算公式如下:
Figure BDA0002252239940000073
其中,pe为各个词拷贝的概率,we、be均为随机初始化且可学习的参数,所述分类器为softmax分类器;
第二实体拷贝子模块:如果t%3=0,利用拷贝机制从输入词序列中选择一个词复制过来作为第二个实体的开始字,采用的公式为所述分类器来选择需要拷贝的实体计算公式;
循环子模块:如果t<T,其中T为解码时刻的最大值,并且满足T=3m,m为正整数,取值范围为m∈{1,2,3,...,m},重复按序执行所述解码计算子模块、关系预测子模块、第一实体拷贝子模块、第二实体拷贝子模块,否则转到结束判断子模块;
结束判断子模块:如果t=T,结束解码过程。
进一步地,所述获取模块包括:
数据子模块:给定一个只包含实体开始字的关系三元组以及输入词序列中每个词的标签,所述标签为BIO标签;
第一完整实体子模块:取出所述只包含实体开始字的关系三元组中的第一个实体的开始字,找到所述第一个实体在输入词序列中对应的BIO标签,如果所述第一个实体的开始字对应的标签是B标签,则将词序列中所述第一个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第一个实体的开始字后面,作为抽取得到的第一个完整实体;
第二完整实体子模块:取出所述只包含实体开始字的关系三元组中的第二个实体的开始字,找到所述第二个实体在输入词序列中对应的BIO标签,如果所述第二个实体的开始字对应的标签是B标签,则将词序列中所述第二个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第二个实体的开始字后面,作为抽取得到的第二个完整实体;
完整关系三元组组成子模块:取出只包含实体开始字的关系三元组中的关系,与第一完整实体子模块和第二完整实体子模块中所述完整实体构成一个完整的关系三元组;
循环组合完整三元组子模块:如果还有未处理的只包含实体开始字的关系三元组,则按序重复执行数据子模块、第一完整实体子模块、第二完整实体子模块、完整关系三元组组成子模块;否则,则结束关系三元组抽取。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中一种完整实体关系抽取方法流程图;
图2为本发明实施例中一种完整实体关系抽取装置图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
下面是对本申请所涉及到的一些术语作一个说明:
BIO标签包含三个标签B标签、I标签、O标签。B为开始(Begin)的缩写,I为内部(Inside)的缩写,O为其他(Other)的缩写,B标签,表示当前词是一个预设实体的开始字;I标签,表示当前词是一个预设实体(即任何一个实体)除开始字以外的词;O标签,当前词不属于该预设实体,即该当前词属于其他实体中的词。三个标签统称为BIO标签。
实体关系抽取是指从给定的词序列(通常是句子)中抽取出所有关系三元组。
关系三元组(简称三元组)包含了一个关系以及相关的两个实体,比如(国籍,姚明,中国)就是一个关系三元组,表示姚明的国籍是中国。实体重叠现象是指两个(或者多个)三元组之间会出现共享实体(共享一个或者两个)的情况。比如三元组(国籍,姚明,中国)与(职业,姚明,篮球运动员)就存在实体重叠,一个实体可以是一个词或者若干个词,如北京稻香村是一个完整的实体,但相关技术会将北京识别为一个实体,稻香村识别为另一个实体,还例如:姚明就是一个实体。
本发明实施例一种完整实体关系抽取方法,如图1所示,其步骤为:
步骤1:将预处理好的词序列信息输入神经网络,神经网络的编码器部分将词序列信息进行编码,得到输入词序列信息的编码表示。
上述技术方案的工作原理为:步骤S101:输入的词序列为x=[x1,x2,...xi,...xn],对所述输入的词序列进行词向量预处理,得到词向量矩阵,所述词向量矩阵为v=[v1,v2,...vi,...vn],其中,x为所述输入的词序列,v为所述词向量矩阵,n为所述词序列内词的总个数,i为所述词序列内词个数的变量,初始值为1,以1为单位递增,最大值为n,xi表示所述词序列中第i个词,vi表示所述词向量矩阵第i个词的向量;
步骤S102:每个词都经过神经网络的编码器计算单元进行处理,所述编码器的编码表示计算公式如下:
Figure BDA0002252239940000101
其中,E为编码(Encode)的缩写,
Figure BDA0002252239940000102
为第i个词的编码表示,
Figure BDA0002252239940000103
为所述输入词序列中前i个词的编码表示,
Figure BDA0002252239940000104
为所述输入词序列前i-1个词的编码表示,
Figure BDA0002252239940000105
为随机初始化且可学习的参数,f()为编码器计算单元;
步骤S103:利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签;
步骤S104:如果i≤n,重复步骤S102至步骤S103,否则转到步骤2。
上述技术方案的有益效果为:通过神经网络编码器与标签预测相结合的方式,提取出词序列中最具有代表性的信息,缩减输入的信息量,得到词序列数据的精髓,然后在把缩减过后的信息放入到神经网络中学习,有效降低学习复杂度,并获得词序列编码表示与词序列标签,为后续完整实体关系抽取方法做准备。
步骤2:将输入词序列信息的编码表示输入到神经网络的解码器部分进行解码。
上述技术方案的工作原理为:步骤S201:所述解码器解码模型计算公式如下:
Figure BDA0002252239940000106
其中,t为当前解码时刻,D为解码(Decode)的缩写,
Figure BDA0002252239940000107
为解码器在t时刻的输出向量,
Figure BDA0002252239940000108
是解码器在t时刻的隐状态,
Figure BDA0002252239940000109
为第t-1个解码时刻的隐状态,
Figure BDA00022522399400001010
u0均为随机初始化且可学习的参数,g()为解码器计算单元,ut为第t个解码时刻解码器的输入;
步骤S202:如果t%3=1,利用关系预测函数对所述词序列信息进行关系预测,使用分类器来获取所预测的关系;如果t%3≠1转到步骤S203;所述关系预测函数如下:
Figure BDA0002252239940000111
其中,pl为所述关系的概率分布,wl与bl均为随机初始化且可学习的参数,所述分类器为softmax分类器;
步骤S203:如果t%3=2,利用拷贝机制从输入词序列中选择一个词复制过来作为第一个实体的开始字,使用分类器来选择需要拷贝的实体;如果t%3≠2转到步骤S204,所述分类器来选择需要拷贝的实体计算公式如下:
Figure BDA0002252239940000112
其中,pe为各个词拷贝的概率,we、be均为随机初始化且可学习的参数,所述分类器为softmax分类器;
步骤S204:如果t%3=0,利用拷贝机制从输入词序列中选择一个词复制过来作为第二个实体的开始字,采用的公式为所述分类器来选择需要拷贝的实体计算公式;
步骤S205:如果t<T,其中T为解码时刻的最大值,并且满足T=3m,m为正整数,取值范围为m∈{1,2,3,...,m},重复按序执行所述步骤S201至S204,否则转到步骤S206;
步骤S206:如果t=T,结束解码过程。
上述技术方案的有益效果为:解码器通过拷贝机制,选出的只包含实体开始字的关系三元组,可综合只包含实体开始字的关系三元组和输入词序列中每个词的标签,获取完整的关系三元组,以确保获得的实体关系比较准确,并有效地克服关系抽取中实体重叠的问题。
步骤3:解码器生成的输出序列按顺序每三个元素构成一个只包含实体开始字(如姚明这个实体的开始字就是姚,北京这个实体的开始字就是北)的关系三元组,综合考虑只包含实体开始字的关系三元组和输入词序列中每个词的标签以获取包含完整实体的关系三元组,所述标签为BIO标签;
上述技术方案的工作原理为:给定一个只包含实体开始字的关系三元组以及输入词序列中每个词的标签,所述标签为BIO标签;
取出所述只包含实体开始字的关系三元组中的第一个实体的开始字(即序列中第一标签为B的字),找到所述关系三元组中的第一个实体的开始字在输入词序列中对应的BIO标签,具体地,所述关系三元组中的第一个实体的开始字对应的标签是B标签,则按序取出词序列中所述关系三元组中的第一个实体的开始字后面连续标签为I标签的词序列,直到所述关系三元组中的第一个实体在输入词序列中对应标签再次出现O标签时,将第一个实体中标签为B和标签为I的字组合在一起就是第一个完整实体;
取出所述只包含实体开始字的关系三元组中的第二个实体的开始字,找到所述第二个实体的开始字在输入词序列中对应的BIO标签,具体地,如果所述第二个实体的开始字对应的标签是B标签,则将该第二个实体的开始字后面连续标签为I的词序列取出,直到第二个实体在输入词序列中对应的标签变为O标签时,将第二个实体中标签为B和标签为I的字组合在一起就是第二个完整实体;
取出只包含实体开始字的关系三元组中的关系,与所述第一个完整实体、第二个完整实体构成一个完整的关系三元组;
如果还有未处理的只包含实体开始字的关系三元组,则按序重复执行上述流程,如果没有未处理的只包含实体开始字的关系三元组,则结束关系三元组抽取,得到所有包含完整实体的关系三元组。
上述技术方案的有益效果为:利用BIO标签预测技术获得第一个完整实体和第二个完整实体,综合只包含实体开始字的关系三元组中的关系、第一个完整实体和第二个完整实体三方面因素构成一个完整的关系三元组,就能够保持完整地抽取实体关系,循环查找关系三元组并进行完整关系抽取处理,能最大限度地抽取词序列内所有完整实体关系的三元组。
一种完整实体关系抽取装置10,其特征在于,包括:
编码模块101,将预处理好的词序列信息输入神经网络,神经网络的编码器部分将所述词序列信息进行编码,得到输入词序列信息的编码表示,并对所述词序列信息进行标签预测,所述标签为BIO标签;
解码模块102,将所述输入词序列信息的编码表示输入到神经网络的解码器部分进行解码;
获取模块103,解码器生成的输出序列按顺序每三个元素构成一个只包含所述实体开始字的关系三元组,综合考虑只包含实体开始字的关系三元组和输入词序列中每个词的标签以获取包含完整实体的关系三元组,所述标签为BIO标签。
在本发明实施例中,所述编码模块101包括:
预处理子模块:输入的词序列为x=[x1,x2,...xi,...xn],对所述输入的词序列进行词向量预处理,得到词向量矩阵,所述词向量矩阵为v=[v1,v2,...vi,...vn],其中,x为所述输入的词序列,v为所述词向量矩阵,n为所述词序列内词的总个数,i为所述词序列内词个数的变量,初始值为1,以1为单位递增,最大值为n,xi表示所述词序列中第i个词,vi表示所述词向量矩阵第i个词的向量;
编码计算子模块:每个词都经过神经网络的编码器计算单元进行处理,所述编码器的编码表示计算公式如下:
Figure BDA0002252239940000131
其中,E为编码(Encode)的缩写,
Figure BDA0002252239940000132
为第i个词的编码表示,
Figure BDA0002252239940000133
为所述输入词序列中前i个词的编码表示,
Figure BDA0002252239940000134
为所述输入词序列前i-1个词的编码表示,
Figure BDA0002252239940000135
为随机初始化且可学习的参数,f()为编码器计算单元;
标签预测子模块:利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签;
循环解码子模块:如果i≤n,重复编码计算子模块至标签预测子模块,否则转到解码模块。
进一步地,上述实施例中,所述标签预测子模块所述利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签,包括:
对所有词进行BIO预测,即对每个词预测一个标签,对应子标签有三个,分别是B标签,I标签和O标签;
B标签,表示当前词是一个实体的开始字;
I标签,表示当前词是一个实体除开始字以外的字;
O标签,表示当前词不属于所述一个实体;
标签预测公式如下:
Figure BDA0002252239940000141
其中,pBIO为预测BIO标签的概率分布,WBIO和bBIO均为随机初始化且可学习的参数,softmax为分类器,所述分类器为softmax分类器,所述标签为BIO标签。
进一步地,上述实施例中,所述解码模块102将输入词序列信息的编码表示输入到神经网络的解码器部分进行解码,解码步骤,包括:
解码计算子模块:所述解码器解码模型计算公式如下:
Figure BDA0002252239940000142
其中,t为当前解码时刻,D为解码(Decode)的缩写,
Figure BDA0002252239940000143
为解码器在t时刻的输出向量,
Figure BDA0002252239940000144
是解码器在t时刻的隐状态,
Figure BDA0002252239940000145
为第t-1个解码时刻的隐状态,
Figure BDA0002252239940000146
u0均为随机初始化且可学习的参数,g()为解码器计算单元,ut为第t个解码时刻解码器的输入;
关系预测子模块:如果t%3=1,利用关系预测函数对所述词序列信息进行关系预测,使用分类器来获取所预测的关系;如果t%3≠1第一实体拷贝子模块;所述关系预测函数如下:
Figure BDA0002252239940000147
其中,pl为所述关系的概率分布,wl与bl均为随机初始化且可学习的参数,所述分类器为softmax分类器;
第一实体拷贝子模块:如果t%3=2,利用拷贝机制从输入词序列中选择一个词复制过来作为第一个实体的开始字,使用分类器来选择需要拷贝的实体;如果t%3≠2转到第二实体拷贝子模块,所述分类器来选择需要拷贝的实体计算公式如下:
Figure BDA0002252239940000151
其中,pe为各个词拷贝的概率,we、be均为随机初始化且可学习的参数,所述分类器为softmax分类器;
第二实体拷贝子模块:如果t%3=0,利用拷贝机制从输入词序列中选择一个词复制过来作为第二个实体的开始字,采用的公式为所述分类器来选择需要拷贝的实体计算公式;
循环子模块:如果t<T,其中T为解码时刻的最大值,并且满足T=3m,m为正整数,取值范围为m∈{1,2,3,...,m},重复按序执行所述解码计算子模块、关系预测子模块、第一实体拷贝子模块、第二实体拷贝子模块,否则转到结束判断子模块;
结束判断子模块:如果t=T,结束解码过程。
进一步地,上述实施例中,所述获取模块103包括:
数据子模块:给定一个只包含实体开始字的关系三元组以及输入词序列中每个词的标签,所述标签为BIO标签;
第一完整实体子模块:取出所述只包含实体开始字的关系三元组中的第一个实体的开始字,找到所述第一个实体在输入词序列中对应的BIO标签,如果所述第一个实体的开始字对应的标签是B标签,则将词序列中所述第一个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第一个实体的开始字后面,作为抽取得到的第一个完整实体;
第二完整实体子模块:取出所述只包含实体开始字的关系三元组中的第二个实体的开始字,找到所述第二个实体在输入词序列中对应的BIO标签,如果所述第二个实体的开始字对应的标签是B标签,则将词序列中所述第二个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第二个实体的开始字后面,作为抽取得到的第二个完整实体;
完整关系三元组组成子模块:取出只包含实体开始字的关系三元组中的关系,与第一完整实体子模块和第二完整实体子模块中所述完整实体构成一个完整的关系三元组;
循环组合完整三元组子模块:如果还有未处理的只包含实体开始字的关系三元组,则按序重复执行数据子模块、第一完整实体子模块、第二完整实体子模块、完整关系三元组组成子模块;否则,则结束关系三元组抽取。
上述装置的技术方案与有益效果为:
编码模块通过神经网络编码器与标签预测相结合的方式,提取出词序列中最具有代表性的信息,缩减输入的信息量,得到词序列数据的精髓,然后在把缩减过后的信息放入到神经网络中学习,有效降低学习复杂度,并获得词序列编码表示与词序列标签,为后续完整实体关系抽取装置做准备;
解码模块通过拷贝机制,分别选出的第一实体开始字与第二个实体的开始字,可以有效地克服关系抽取中实体重叠的问题,满足条件循环抽取第一个实体的开始字、第二个实体的开始字,可以抽取到所有的第一个实体的开始字、第二个实体的开始字,最大程度地保留了词序列信息内的完整信息。
获取模块利用BIO标签预测技术获得第一个完整实体和第二个完整实体,综合只包含实体开始字的关系三元组中的关系、第一个完整实体和第二个完整实体三方面因素构成一个完整的关系三元组,就能够保持完整地抽取实体关系,循环查找关系三元组并进行完整关系抽取处理,能最大限度地抽取词序列内所有完整实体关系的三元组。

Claims (6)

1.一种完整实体关系抽取方法,其特征在于,包括:
步骤1,将预处理好的词序列信息输入神经网络,神经网络的编码器部分将所述词序列信息进行编码,得到输入词序列信息的编码表示,并对所述词序列信息进行标签预测,所述标签为BIO标签;
步骤2,将所述输入词序列信息的编码表示输入到神经网络的解码器部分进行解码;
步骤3,解码器生成的输出序列按顺序每三个元素构成一个只包含实体开始字的关系三元组,综合考虑只包含实体开始字的关系三元组和输入词序列中每个词的标签以获取包含完整实体的关系三元组,所述标签为BIO标签;
所述步骤1将预处理好的词序列信息输入神经网络,神经网络的编码器部分将词序列信息进行编码,编码步骤,包括:
步骤S101:输入的词序列为x=[x1,x2,...xi,...xn],对所述输入的词序列进行词向量预处理,得到词向量矩阵,所述词向量矩阵为v=[v1,v2,...vi,...vn],其中,x为所述输入的词序列,v为所述词向量矩阵,n为所述词序列内词的总个数,i为所述词序列内词个数的变量,初始值为1,以1为单位递增,最大值为n,xi表示所述词序列中第i个词,vi表示所述词向量矩阵第i个词的向量;
步骤S102:每个词都经过神经网络的编码器计算单元进行处理,所述编码器的编码表示计算公式如下:
Figure FDA0004082133020000011
其中,E为编码(Encode)的缩写,
Figure FDA0004082133020000012
为第i个词的编码表示,
Figure FDA0004082133020000013
为所述输入词序列中前i个词的编码表示,
Figure FDA0004082133020000014
为所述输入词序列前i-1个词的编码表示,
Figure FDA0004082133020000015
为随机初始化且可学习的参数,f()为编码器计算单元;
步骤S103:利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签;
步骤S104:如果i≤n,重复步骤S102至步骤S103,否则转到步骤2;
所述步骤3所述解码器生成的输出序列按顺序每三个元素构成一个只包含实体开始字的关系三元组,综合考虑只包含实体开始字的关系三元组和输入词序列中每个词的BIO标签以获取包含完整实体的关系三元组,完整关系三元组抽取步骤,包括:
步骤S301:给定一个只包含实体开始字的关系三元组以及输入词序列中每个词的标签,所述标签为BIO标签;
步骤S302:取出所述只包含实体开始字的关系三元组中的第一个实体的开始字,找到所述第一个实体在输入词序列中对应的BIO标签,如果所述第一个实体的开始字对应的标签是B标签,则将词序列中所述第一个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第一个实体的开始字后面,作为抽取得到的第一个完整实体;
步骤S303:取出所述只包含实体开始字的关系三元组中的第二个实体的开始字,找到所述第二个实体在输入词序列中对应的BIO标签,如果所述第二个实体的开始字对应的标签是B标签,则将词序列中所述第二个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第二个实体的开始字后面,作为抽取得到的第二个完整实体;
步骤S304:取出只包含实体开始字的关系三元组中的关系,与步骤S303和步骤S302中所述完整实体构成一个完整的关系三元组;
步骤S305:如果还有未处理的只包含实体开始字的关系三元组,则按序重复执行步骤S301、步骤S302、步骤S303、步骤S304;否则,则结束关系三元组抽取。
2.如权利要求1所述的编码步骤,其特征在于,步骤S103所述利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签,包括:
对所有词进行BIO预测,即对每个词预测一个标签,对应子标签有三个,分别是B标签,I标签和O标签;
B标签,表示当前词是一个实体的开始字;
I标签,表示当前词是一个实体除开始字以外的字;
O标签,表示当前词不属于所述一个实体;
标签预测公式如下:
Figure FDA0004082133020000031
其中,pBIO为预测BIO标签的概率分布,WBIO和bBIO均为随机初始化且可学习的参数,softmax为分类器,所述分类器为softmax分类器,所述标签为BIO标签。
3.如权利要求1所述的方法,其特征在于,所述步骤2将输入词序列信息的编码表示输入到神经网络的解码器部分进行解码,解码步骤,包括:
步骤S201:所述解码器解码模型计算公式如下:
Figure FDA0004082133020000032
其中,t为当前解码时刻,D为解码(Decode)的缩写,
Figure FDA0004082133020000033
为解码器在t时刻的输出向量,
Figure FDA0004082133020000034
是解码器在t时刻的隐状态,
Figure FDA0004082133020000035
为第t-1个解码时刻的隐状态,
Figure FDA0004082133020000036
u0均为随机初始化且可学习的参数,g()为解码器计算单元,ut为第t个解码时刻解码器的输入;
步骤S202:如果t%3=1,利用关系预测函数对所述词序列信息进行关系预测,使用分类器来获取所预测的关系;如果t%3≠1转到步骤S203;所述关系预测函数如下:
Figure FDA0004082133020000037
其中,pl为所述关系的概率分布,wl与bl均为随机初始化且可学习的参数,所述分类器为softmax分类器;
步骤S203:如果t%3=2,利用拷贝机制从输入词序列中选择一个词复制过来作为第一个实体的开始字,使用分类器来选择需要拷贝的实体;如果t%3≠2转到步骤S204,所述分类器来选择需要拷贝的实体计算公式如下:
Figure FDA0004082133020000041
其中,pe为各个词拷贝的概率,we、be均为随机初始化且可学习的参数,所述分类器为softmax分类器;
步骤S204:如果t%3=0,利用拷贝机制从输入词序列中选择一个词复制过来作为第二个实体的开始字,采用的公式为所述分类器来选择需要拷贝的实体计算公式;
步骤S205:如果t<T,其中T为解码时刻的最大值,并且满足T=3m,m为正整数,取值范围为m∈{1,2,3,...,m},重复按序执行所述步骤S201至S204,否则转到步骤S206;
步骤S206:如果t=T,结束解码过程。
4.一种完整实体关系抽取装置,其特征在于,包括:
编码模块,将预处理好的词序列信息输入神经网络,神经网络的编码器部分将所述词序列信息进行编码,得到输入词序列信息的编码表示,并对所述词序列信息进行标签预测,所述标签为BIO标签;
解码模块,将所述输入词序列信息的编码表示输入到神经网络的解码器部分进行解码;
获取模块,解码器生成的输出序列按顺序每三个元素构成一个只包含所述实体开始字的关系三元组,综合考虑只包含实体开始字的关系三元组和输入词序列中每个词的标签以获取包含完整实体的关系三元组,所述标签为BIO标签;
所述编码模块包括:
预处理子模块:输入的词序列为x=[x1,x2,...xi,...xn],对所述输入的词序列进行词向量预处理,得到词向量矩阵,所述词向量矩阵为v=[v1,v2,...vi,...vn],其中,x为所述输入的词序列,v为所述词向量矩阵,n为所述词序列内词的总个数,i为所述词序列内词个数的变量,初始值为1,以1为单位递增,最大值为n,xi表示所述词序列中第i个词,vi表示所述词向量矩阵第i个词的向量;
编码计算子模块:每个词都经过神经网络的编码器计算单元进行处理,所述编码器的编码表示计算公式如下:
Figure FDA0004082133020000051
其中,E为编码(Encode)的缩写,
Figure FDA0004082133020000052
为第i个词的编码表示,
Figure FDA0004082133020000053
为所述输入词序列中前i个词的编码表示,
Figure FDA0004082133020000054
为所述输入词序列前i-1个词的编码表示,
Figure FDA0004082133020000055
为随机初始化且可学习的参数,f()为编码器计算单元;
标签预测子模块:利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签;
循环解码子模块:如果i≤n,重复编码计算子模块至标签预测子模块,否则转到解码模块;
所述获取模块包括:
数据子模块:给定一个只包含实体开始字的关系三元组以及输入词序列中每个词的标签,所述标签为BIO标签;
第一完整实体子模块:取出所述只包含实体开始字的关系三元组中的第一个实体的开始字,找到所述第一个实体在输入词序列中对应的BIO标签,如果所述第一个实体的开始字对应的标签是B标签,则将词序列中所述第一个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第一个实体的开始字后面,作为抽取得到的第一个完整实体;
第二完整实体子模块:取出所述只包含实体开始字的关系三元组中的第二个实体的开始字,找到所述第二个实体在输入词序列中对应的BIO标签,如果所述第二个实体的开始字对应的标签是B标签,则将词序列中所述第二个实体的开始字后面连续标签为I标签的字取出,直到出现O标签时结束,取出B标签对应的字拼接在所述第二个实体的开始字后面,作为抽取得到的第二个完整实体;
完整关系三元组组成子模块:取出只包含实体开始字的关系三元组中的关系,与第一完整实体子模块和第二完整实体子模块中所述完整实体构成一个完整的关系三元组;
循环组合完整三元组子模块:如果还有未处理的只包含实体开始字的关系三元组,则按序重复执行数据子模块、第一完整实体子模块、第二完整实体子模块、完整关系三元组组成子模块;否则,则结束关系三元组抽取。
5.如权利要求4所述的装置,其特征在于,所述标签预测子模块所述利用分类器对所有词进行标签预测,所述分类器为softmax分类器,所述标签为BIO标签,包括:
对所有词进行BIO预测,即对每个词预测一个标签,对应子标签有三个,分别是B标签,I标签和O标签;
B标签,表示当前词是一个实体的开始字;
I标签,表示当前词是一个实体除开始字以外的字;
O标签,表示当前词不属于所述一个实体;
标签预测公式如下:
Figure FDA0004082133020000061
其中,pBIO为预测BIO标签的概率分布,WBIO和bBIO均为随机初始化且可学习的参数,softmax为分类器,所述分类器为softmax分类器,所述标签为BIO标签。
6.如权利要求4所述的装置,其特征在于,所述解码模块将输入词序列信息的编码表示输入到神经网络的解码器部分进行解码,解码步骤,包括:
解码计算子模块:所述解码器解码模型计算公式如下:
Figure FDA0004082133020000062
其中,t为当前解码时刻,D为解码(Decode)的缩写,
Figure FDA0004082133020000063
为解码器在t时刻的输出向量,
Figure FDA0004082133020000064
是解码器在t时刻的隐状态,
Figure FDA0004082133020000065
为第t-1个解码时刻的隐状态,
Figure FDA0004082133020000071
u0均为随机初始化且可学习的参数,g()为解码器计算单元,ut为第t个解码时刻解码器的输入;
关系预测子模块:如果t%3=1,利用关系预测函数对所述词序列信息进行关系预测,使用分类器来获取所预测的关系;如果t%3≠1第一实体拷贝子模块;所述关系预测函数如下:
Figure FDA0004082133020000072
其中,pl为所述关系的概率分布,wl与bl均为随机初始化且可学习的参数,所述分类器为softmax分类器;
第一实体拷贝子模块:如果t%3=2,利用拷贝机制从输入词序列中选择一个词复制过来作为第一个实体的开始字,使用分类器来选择需要拷贝的实体;如果t%3≠2转到第二实体拷贝子模块,所述分类器来选择需要拷贝的实体计算公式如下:
Figure FDA0004082133020000073
其中,pe为各个词拷贝的概率,we、be均为随机初始化且可学习的参数,所述分类器为softmax分类器;
第二实体拷贝子模块:如果t%3=0,利用拷贝机制从输入词序列中选择一个词复制过来作为第二个实体的开始字,采用的公式为所述分类器来选择需要拷贝的实体计算公式;
循环子模块:如果t<T,其中T为解码时刻的最大值,并且满足T=3m,m为正整数,取值范围为m∈{1,2,3,...,m},重复按序执行所述解码计算子模块、关系预测子模块、第一实体拷贝子模块、第二实体拷贝子模块,否则转到结束判断子模块;
结束判断子模块:如果t=T,结束解码过程。
CN201911038681.XA 2019-10-29 2019-10-29 一种完整实体关系抽取方法及装置 Active CN111008276B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911038681.XA CN111008276B (zh) 2019-10-29 2019-10-29 一种完整实体关系抽取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911038681.XA CN111008276B (zh) 2019-10-29 2019-10-29 一种完整实体关系抽取方法及装置

Publications (2)

Publication Number Publication Date
CN111008276A CN111008276A (zh) 2020-04-14
CN111008276B true CN111008276B (zh) 2023-04-18

Family

ID=70111564

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911038681.XA Active CN111008276B (zh) 2019-10-29 2019-10-29 一种完整实体关系抽取方法及装置

Country Status (1)

Country Link
CN (1) CN111008276B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114218931B (zh) * 2021-11-04 2024-01-23 北京百度网讯科技有限公司 信息抽取方法、装置、电子设备和可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304911A (zh) * 2018-01-09 2018-07-20 中国科学院自动化研究所 基于记忆神经网络的知识抽取方法以及系统和设备
CN109902145A (zh) * 2019-01-18 2019-06-18 中国科学院信息工程研究所 一种基于注意力机制的实体关系联合抽取方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10672388B2 (en) * 2017-12-15 2020-06-02 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for open-vocabulary end-to-end speech recognition

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304911A (zh) * 2018-01-09 2018-07-20 中国科学院自动化研究所 基于记忆神经网络的知识抽取方法以及系统和设备
CN109902145A (zh) * 2019-01-18 2019-06-18 中国科学院信息工程研究所 一种基于注意力机制的实体关系联合抽取方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李涛 ; 郭渊博 ; 琚安康 ; .融合对抗主动学习的网络安全知识三元组抽取.通信学报.(10),全文. *

Also Published As

Publication number Publication date
CN111008276A (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
CN107632981B (zh) 一种引入源语组块信息编码的神经机器翻译方法
CN112100404A (zh) 基于结构化上下文信息的知识图谱预训练方法
CN112000770B (zh) 面向智能问答的基于语义特征图的句子对语义匹配方法
CN113792741B (zh) 文字识别方法、装置、设备及存储介质
CN111104802B (zh) 一种地址信息文本的提取方法及相关设备
CN116978011B (zh) 一种用于智能目标识别的图像语义通信方法及系统
CN109885811B (zh) 文章风格转换方法、装置、计算机设备及存储介质
CN115296862B (zh) 一种基于数据编码的网络数据安全传输方法
CN110619124A (zh) 一种结合注意力机制与双向lstm的命名实体识别方法及系统
CN110569967A (zh) 一种基于算术编码的神经网络模型压缩加密方法及系统
CN112994701A (zh) 数据压缩方法、装置、电子设备及计算机可读介质
CN111767697B (zh) 文本处理方法、装置、计算机设备以及存储介质
CN111814479B (zh) 一种企业简称生成及其模型的训练方法及装置
CN111563161B (zh) 一种语句识别方法、语句识别装置及智能设备
CN112560456A (zh) 一种基于改进神经网络的生成式摘要生成方法和系统
CN111008276B (zh) 一种完整实体关系抽取方法及装置
CN115049919A (zh) 一种基于注意力调控的遥感图像语义分割方法及系统
CN114328898A (zh) 文本摘要生成方法及其装置、设备、介质、产品
Liu et al. Hiding multiple images into a single image via joint compressive autoencoders
CN110502236B (zh) 基于多尺度特征解码的前端代码生成方法、系统及设备
CN116704433A (zh) 基于上下文感知关系预测编码的自监督群体行为识别方法
CN112307752A (zh) 一种数据处理方法、装置、电子设备及存储介质
CN116796287A (zh) 图文理解模型的预训练方法、装置、设备及存储介质
CN113743593B (zh) 神经网络量化方法、系统、存储介质及终端
CN111312340A (zh) 一种基于smiles的定量构效方法和装置

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
GR01 Patent grant
GR01 Patent grant