CN114328924A - 一种基于预训练模型结合句法子树的关系分类方法 - Google Patents

一种基于预训练模型结合句法子树的关系分类方法 Download PDF

Info

Publication number
CN114328924A
CN114328924A CN202111641146.0A CN202111641146A CN114328924A CN 114328924 A CN114328924 A CN 114328924A CN 202111641146 A CN202111641146 A CN 202111641146A CN 114328924 A CN114328924 A CN 114328924A
Authority
CN
China
Prior art keywords
subtree
vector
sentence
edge
vectors
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
Application number
CN202111641146.0A
Other languages
English (en)
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.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
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 Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN202111641146.0A priority Critical patent/CN114328924A/zh
Publication of CN114328924A publication Critical patent/CN114328924A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Machine Translation (AREA)

Abstract

本发明公开了一种基于预训练模型结合句法子树的关系分类方法。首先是利用BERT预训练模型构建词向量、句子表征向量、实体向量。为了结合句法信息,利用Spacy工具包对于句子进行依存句法分析,然后对于分析结果进行预处理,得到边以及边的类别。在结合句法信息时利用循环神经网络RvNN进行递归计算,得到每个子树的表征向量,这一步的目的是得到句法依赖树的拓补信息、语义信息、边的类别信息。将每个子树的表征向量进行最大池化获得树的表征向量。将实体向量、句子表征向量、树的表征向量进行拼接,然后进行关系类别预测。本发明能更好的解决词向量和句法子树信息融合的问题,并且能提取到更深层的、信息更充分的词向量,具有很好的鲁棒性。

Description

一种基于预训练模型结合句法子树的关系分类方法
技术领域
本发明涉及关系分类技术领域,具体来讲是一种基于预训练模型结合句法子树的关系分类方法。
背景技术
关系分类,是在不需要人工干预的情况下,从非结构化文本中对两个实体进行预测关系类别的任务。
关系分类任务是一个重要的自然语言处理任务,通常被用作各种自然语言处理应用的中间步骤。近年来深度神经网络被用于关系分类,通常的方法使用依存句法分析或者命名实体识别技术,通过深度神经网络提取特征,从而获得语义特征向量。
部分专家提出将递归神经网络应用于关系分类的方法,该方法为句法分析树中的每个节点分配一个矩阵向量表示,并根据解析树的语法结构从下向上计算完整的句子表示向量。有的研究人员提出一种将词汇嵌入和位置特征作为输入的CNN模型。他们将词汇特征和CNN的输出向量连接成一个单一的向量,然后送入softmax函数进行预测关系类别。在2015年,专家提出一种基于因子的成分嵌入模型,该模型通过依赖树和命名实体从词汇嵌入中构建句子级和子结构嵌入。
一方面,研究人员通过使用名为CR-CNN的进行排序来处理关系分类任务。模型的损失函数是基于两两排序的。在2019年,部分研究人员利用BERT预训练模型的天然优势,将文本句转换为词向量,然后将两个实体向量进行拼接输入到softmax函数进行分类,使得模型架构十分精简,准确率获得巨大提升。在2020年,有的研究人员在BERT预训练模型的基准上使用依存句法分析,首先对于关系的谓词进行筛选,然后将文本句输入到BERT预训练模型中得到句子向量,之后将谓词向量、实体向量进行拼接输入到分类函数中,对于关系类别进行预测。
另一方面,研究人员认为图卷积神经网络可以更好的解决文档级关系抽取(输入一段话,句子中存在多个实体,确定实体关系)。在图神经网络之前利用句法依赖树建图,之后利用图卷积神经网络进行特征提取,更好的解决了实体间依赖丢失的问题,取得了较好的效果。
发明内容
在综合考量上述问题后,本发明针对现有技术存在的问题,提出一种基于预训练模型结合句法子树的关系分类方法。
本发明解决其技术问题所采用的技术方案包括如下步骤:
步骤(1)对数据集中的句子S进行分词,构建输入序列;将输入序列通过BERT预训练模型,获得每个词的输入词向量、整句话的句子表征向量、两个需要预测关系类别的实体向量。
步骤(2)对数据集中的句子S,利用Spacy工具进行依存句法分析,得到句子中词与词之间的边、边的类别以及句法依赖树,利用映射函数将边的类别转换成边的类别id。
步骤(3)以句法依赖树中两个实体为叶子节点,并计算两个叶子节点的最近公共祖先节点;获得以最近公共祖先节点为根,两个实体节点为叶子的子树,将输入词向量中该子树部分的词向量、边的类别id、边输入到递归神经网络RvNN进行计算,得到每个子树表征向量。
步骤(4)将所有子树表征向量进行最大池化,得到句子的树表征向量。
步骤(5)将句子表征向量、句子的树表征向量、两个需要预测关系类别的实体向量进行拼接输入到softmax分类函数中进行分类,预测关系类别。
本发明的有益效果如下:
本发明使用BERT模型构建输入词向量,相比于其他方式构建的词向量,蕴含信息更加丰富,提取特征更加充分,对于后续特征融合更加有效。其次,利用递归神经网络进行子树表征向量的计算,可以使得模型学习到子树的语义信息、树的拓补信息、边的类别信息。之后将句子表征向量、树表征向量、两个需要预测关系类别的实体向量进行拼接,进行信息融合。最后进行分类预测关系类别,提高准确率和鲁棒性。
本发明在中文和英语数据集上进行实验,本发明能更好的解决词向量和句法子树信息融合的问题,并且能提取到更深层的、信息更充分的词向量,具有很好的鲁棒性。
附图说明
图1本发明的整体实施方案流程图
图2本发明模型整体架构图
图3本发明依存句法分析结果图
图4本发明递归神经网络图
具体的实施方式
下面结合附图对本发明做进一步描述。
本发明利用BERT预训练模型生成词向量,增强词向量所带的信息,同时利用Spacy依存句法分析工具获得边以及边的类别。计算两个实体的最近公共祖先节点,获得以最近公共组先为根,两个实体节点为叶子的树,将输入词向量中该部分词向量、边、边的类别id输入到神经网络中,使得模型学习到句法信息,使得子树向量拥有句法分析树的语义信息、树的拓补信息、边的类别信息。最终使得神经网络在编码时能够获得信息更加充分的词向量,有效的提高关系分类的准确率。
参照图1是本发明的整体流程图,一种基于预训练模型结合句法子树的关系分类方法,参照图2为整体模型图,包括以下步骤:
步骤(1)对数据集中的句子S进行分词,构建输入序列;将输入序列通过BERT预训练模型,获得每个词的输入词向量、整句话的句子表征向量、两个需要预测关系类别的实体向量。
步骤(2)对数据集中的句子S,利用Spacy工具进行依存句法分析,得到句子中词与词之间的边、边的类别以及句法依赖树,利用映射函数将边的类别转换成边的类别id。
步骤(3)以句法依赖树中两个实体为叶子节点,并计算两个叶子节点的最近公共祖先节点;获得以最近公共祖先节点为根,两个实体节点为叶子的子树,将输入词向量中该子树部分的词向量、边的类别id、边输入到递归神经网络RvNN进行计算,得到每个子树表征向量。
步骤(4)将所有子树表征向量进行最大池化,得到句子的树表征向量。
步骤(5)将句子表征向量、句子的树表征向量、两个需要预测关系类别的实体向量进行拼接输入到softmax分类函数中进行分类,预测关系类别。
进一步的,所述步骤(1)的具体实现过程如下:
1-1首先利用Spacy工具包对句子S进行分词构建输入序列Se={w1,w2,…,wn},其中n表示序列的长度,w1,w2,…,wn为句子的每一个词;
1-2假定两个实体为e1,e2,在输入序列构建完成之后,将会被输入到BERT预训练模型中得到每个词的输入词向量H∈Rd×n、整句话的句子表征向量SV、两个需要预测关系类别的实体向量E1,E2。其中d为词向量的维度,n为序列长度,SV,E1,E2的维度为1×768,过程表示为下式:
SV,H=BERT(Se)=SV,{h1,h2,…,hn} (1)
其中,h1,h2,…,hn为BERT预训练模型编码之后的输入词向量,SV为句子表征向量,Se为步骤1-1中输入序列,BERT为预训练模型。实体e1,e2对应实体向量即为E1,E2。
进一步的,所述步骤(2)具体实现过程如下:
2-1将句子S输入到Spacy句法分析工具中:
I=nlp(S) (2)
公式(2)中S为输入的句子,nlp为加载Spacy依存句法分析工具包,I为输出。附图3为依存句法分析处理的结果图,对输出I进行预处理,从而获得句法依赖树上的边Edge以及边的类别EdgeType。利用映射函数将边的类别EdgeType转换为边的类别id,即EdgeTypeId。
进一步的,所述步骤(3)具体实现过程如下:
3-1以两个实体为叶子节点计算他们的最近公共祖先节点,在I中获得以最近公共祖先节点为根,以两个实体为叶子节点的子树subTree,并且在H中取出子树subTree对应向量subTreeV,过程表示为下式:
Root=lca(e1,e2) (3)
subTree=acquireSubTree(I,Root,e1,e2) (4)
subTreeV=acquire(H,subTree) (5)
其中,e1,e2为两个实体,lca为计算最近公共祖先节点的函数,Root为以e1,e2为叶子节点的最近公共祖先节点。I为步骤2-1中(2)式的输出结果,acquireSubTree为获得子树的函数,subTree为以Root为根,e1,e2为叶子节点的子树。H为步骤1-1中(1)式的输出向量,subTreeV为以Root为根,e1,e2为叶子节点的子树对应向量。
3-2将子树对应向量subTreeV、边的类别id EdgeTypeId、边Edge输入到递归神经网络RvNN,递归的进行计算当前子树的每个子树的表征向量,公式表示如下:
TreeV=RvNN(subTreeV,EdgeTypeId,Edge) (6)
其中,Edge为步骤2-1中获得的边,EdgeTypeId为边的类别id,H为步骤1-2中(1)式的输出向量。RvNN为递归神经网络,TreeV为递归神经网络的输出的子树表征向量。
对于当前子树中的每个子树的表征向量,由当前子树的每个子树的表征向量与边的类别id向量相乘后求和得到,具体计算公式如下:
ei=map(EdgeTypeId[i]) (7)
xi=subTreeV[i]+∑pep*xp (8)
TreeV=[x1,x2,…xk] (9)
其中EdgeTypeId[i]第i条边的类别Id,map为边的类别Id映射函数,ei为第i条边的类别Id映射的向量。subTreeV[i]为i子树对应向量,p为i节点的相邻子树节点,ep为第p条边的类别Id映射的向量,xp为当前计算第p个子树的表征向量,将上述x1,x2,…xk组合即为子树中每个子树的表征向量TreeV,k是以Root为根节点的子树的大小,附图4为递归神经网络的模型图。
进一步的,所述步骤(4)具体实现过程如下:
4-1将表征向量TreeV输入到最大池化函数中,得到句子的树表征向量,公式表示如下:
SentenceTreeV=Maxpool(TreeV) (10)
其中,TreeV为步骤3-2中(6)式的输出的表征向量,Maxpool为最大池化函数,SentenceTreeV为句子的树表征向量。
进一步的,所述步骤(5)具体实现过程如下:
5-1将句子表征向量SV、句子的树表征向量SentenceTreeV、两个需要预测关系类别的实体向量E1,E2进行拼接,然后输入到softmax函数中得到类别概率分布,取最大值即为预测关系类别,公式表示如下:
V=Cat(SV,SentenceTreeV,E1,E2) (11)
probility=softmax(V) (12)
predictType=argmax(probility) (13)
其中,E1,E2为两个需要预测关系类别的实体向量,SentenceTreeV为步骤4-1中(11)式的输出向量,SV为步骤1-2中(1)式的输出向量,E1,E2为实体向量。Cat为拼接函数。V为拼接后的输出向量。softmax为归一化指数函数,probility为预测的所有关系类别概率分布。argmax为取得类别概率分布的最大值下标函数。predictType为预测关系的类别。
5-2损失函数为交叉熵损失函数,公式表示如下:
Figure BDA0003443824120000061
其中M为关系类别的数量,q为第q个样本,N为样本总数,ypc为符号函数,如果样本p的真实类别等于c取1,否则取0,log为对数函数,pqc为样本q属于类别c的概率。

Claims (6)

1.一种基于预训练模型结合句法子树的关系分类方法,其特征在于包括以下步骤:
步骤(1)对数据集中的句子S进行分词,构建输入序列;将输入序列通过BERT预训练模型,获得每个词的输入词向量、整句话的句子表征向量、两个需要预测关系类别的实体向量;
步骤(2)对数据集中的句子S,利用Spacy工具进行依存句法分析,得到句子中词与词之间的边、边的类别以及句法依赖树,利用映射函数将边的类别转换成边的类别id;
步骤(3)以句法依赖树中两个实体为叶子节点,并计算两个叶子节点的最近公共祖先节点;获得以最近公共祖先节点为根,两个实体节点为叶子的子树,将输入词向量中该子树部分的词向量、边的类别id、边输入到递归神经网络RvNN进行计算,得到每个子树表征向量;
步骤(4)将所有子树表征向量进行最大池化,得到句子的树表征向量;
步骤(5)将句子表征向量、句子的树表征向量、两个需要预测关系类别的实体向量进行拼接输入到softmax分类函数中进行分类,预测关系类别。
2.根据权利要求1所述的一种基于预训练模型结合句法子树的关系分类方法,其特征在于所述步骤(1)具体实现过程如下:
1-1首先利用Spacy工具包对句子S进行分词构建输入序列Se={w1,w2,…,wn},其中n表示序列的长度,w1,w2,…,wn为句子的每一个词;
1-2假定两个实体为e1,e2,在输入序列构建完成之后,将会被输入到BERT预训练模型中得到每个词的输入词向量H∈Rd×n、整句话的句子表征向量SV、两个需要预测关系类别的实体向量E1,E2;其中d为词向量的维度,n为序列长度,SV,E1,E2的维度为1×768,过程表示为下式:
SV,H=BERT(Se)=SV,{h1,h2,…,hn} (1)
其中,h1,h2,…,hn为BERT预训练模型编码之后的输入词向量,SV为句子表征向量,Se为步骤1-1中输入序列,BERT为预训练模型;实体e1,e2对应实体向量即为E1,E2。
3.根据权利要求1所述的一种基于预训练模型结合句法子树的关系分类方法,其特征在于所述步骤(2)具体实现过程如下:
2-1将句子S输入到Spacy句法分析工具中:
I=nlp(S) (2)
公式(2)中S为输入的句子,nlp为加载Spacy依存句法分析工具包,I为输出;对输出I进行预处理,从而获得句法依赖树上的边Edge以及边的类别EdgeType;利用映射函数将边的类别EdgeType转换为边的类别id,即EdgeTypeId。
4.根据权利要求3所述的一种基于预训练模型结合句法子树的关系分类方法,其特征在于所述步骤(3)具体实现过程如下:
3-1以两个实体为叶子节点计算他们的最近公共祖先节点,在I中获得以最近公共祖先节点为根,以两个实体为叶子节点的子树subTree,并且在H中取出子树subTree对应向量subTreeV,过程表示为下式:
Root=lca(e1,e2) (3)
subTree=acquireSubTree(I,Root,e1,e2) (4)
subTreeV=acquire(H,subTree) (5)
其中,e1,e2为两个实体,lca为计算最近公共祖先节点的函数,Root为以e1,e2为叶子节点的最近公共祖先节点;I为步骤2-1中(2)式的输出结果,acquireSubTree为获得子树的函数,subTree为以Root为根,e1,e2为叶子节点的子树;H为步骤1-1中(1)式的输出向量,subTreeV为以Root为根,e1,e2为叶子节点的子树对应向量;
3-2将子树对应向量subTreeV、边的类别idEdgeTypeId、边Edge输入到递归神经网络RvNN,递归的进行计算当前子树的每个子树的表征向量,公式表示如下:
TreeV=RvNN(subTreeV,EdgeTypeId,Edge) (6)
其中,Edge为步骤2-1中获得的边,EdgeTypeId为边的类别id,H为步骤1-2中(1)式的输出向量;RvNN为递归神经网络,TreeV为递归神经网络的输出的子树表征向量;
对于当前子树中的每个子树的表征向量,由当前子树的每个子树的表征向量与边的类别id向量相乘后求和得到,具体计算公式如下:
ei=map(EdgeTypeId[i]) (7)
xi=subTreeV[i]+∑pep*xp (8)
TreeV=[x1,x2,…xk] (9)
其中EdgeTypeId[i]第i条边的类别Id,map为边的类别Id映射函数,ei为第i条边的类别Id映射的向量;subTreeV[i]为i子树对应向量,p为i节点的相邻子树节点,ep为第p条边的类别Id映射的向量,xp为当前计算第p个子树的表征向量,将上述x1,x2,…xk组合即为子树中每个子树的表征向量TreeV,k是以Root为根节点的子树的大小。
5.根据权利要求4所述的一种基于预训练模型结合句法子树的关系分类方法,其特征在于所述步骤(4)具体实现过程如下:
4-1将表征向量TreeV输入到最大池化函数中,得到句子的树表征向量,公式表示如下:
SentenceTreeV=Maxpool(TreeV) (10)
其中,TreeV为步骤3-2中(6)式的输出的表征向量,Maxpool为最大池化函数,SentenceTreeV为句子的树表征向量。
6.根据权利要求5所述的一种基于预训练模型结合句法子树的关系分类方法,其特征在于所述步骤(5)具体实现过程如下:
5-1将句子表征向量SV、句子的树表征向量SentenceTreeV、两个需要预测关系类别的实体向量E1,E2进行拼接,然后输入到softmax函数中得到类别概率分布,取最大值即为预测关系类别,公式表示如下:
V=Cat(SV,SentenceTreeV,E1,E2) (11)
probility=softmax(V) (12)
predictType=argmax(probility) (13)
其中,E1,E2为两个需要预测关系类别的实体向量,SentenceTreeV为步骤4-1中(11)式的输出向量,SV为步骤1-2中(1)式的输出向量,E1,E2为实体向量;Cat为拼接函数;V为拼接后的输出向量;softmax为归一化指数函数,probility为预测的所有关系类别概率分布;argmax为取得类别概率分布的最大值下标函数;predictType为预测关系的类别;
5-2损失函数为交叉熵损失函数,公式表示如下:
Figure FDA0003443824110000041
其中M为关系类别的数量,q为第q个样本,N为样本总数,ypc为符号函数,如果样本p的真实类别等于c取1,否则取0,log为对数函数,pqc为样本q属于类别c的概率。
CN202111641146.0A 2021-12-29 2021-12-29 一种基于预训练模型结合句法子树的关系分类方法 Pending CN114328924A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111641146.0A CN114328924A (zh) 2021-12-29 2021-12-29 一种基于预训练模型结合句法子树的关系分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111641146.0A CN114328924A (zh) 2021-12-29 2021-12-29 一种基于预训练模型结合句法子树的关系分类方法

Publications (1)

Publication Number Publication Date
CN114328924A true CN114328924A (zh) 2022-04-12

Family

ID=81016430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111641146.0A Pending CN114328924A (zh) 2021-12-29 2021-12-29 一种基于预训练模型结合句法子树的关系分类方法

Country Status (1)

Country Link
CN (1) CN114328924A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116127079A (zh) * 2023-04-20 2023-05-16 中电科大数据研究院有限公司 一种文本分类方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116127079A (zh) * 2023-04-20 2023-05-16 中电科大数据研究院有限公司 一种文本分类方法
CN116127079B (zh) * 2023-04-20 2023-06-20 中电科大数据研究院有限公司 一种文本分类方法

Similar Documents

Publication Publication Date Title
CN111310438B (zh) 基于多粒度融合模型的中文句子语义智能匹配方法及装置
CN109344391B (zh) 基于神经网络的多特征融合中文新闻文本摘要生成方法
CN111783474B (zh) 一种评论文本观点信息处理方法、装置及存储介质
CN111737496A (zh) 一种电力设备故障知识图谱构建方法
CN113204952B (zh) 一种基于聚类预分析的多意图与语义槽联合识别方法
CN110321563B (zh) 基于混合监督模型的文本情感分析方法
CN112395393B (zh) 一种基于多任务多示例的远程监督关系抽取方法
CN113239186A (zh) 一种基于多依存关系表示机制的图卷积网络关系抽取方法
CN112231447A (zh) 一种中文文档事件抽取的方法和系统
CN113515632B (zh) 基于图路径知识萃取的文本分类方法
CN112541337B (zh) 一种基于递归神经网络语言模型的文档模板自动生成方法及系统
JP6738769B2 (ja) 文ペア分類装置、文ペア分類学習装置、方法、及びプログラム
CN116661805B (zh) 代码表示的生成方法和装置、存储介质及电子设备
CN115952292B (zh) 多标签分类方法、装置及计算机可读介质
CN112269874A (zh) 一种文本分类方法及系统
CN116956929B (zh) 针对桥梁管养文本数据的多特征融合命名实体识别方法、装置
CN114168754A (zh) 一种基于句法依赖和融合信息的关系抽取方法
CN114818717A (zh) 融合词汇和句法信息的中文命名实体识别方法及系统
CN112765983A (zh) 一种基于结合知识描述的神经网络的实体消歧的方法
CN117474010A (zh) 面向电网语言模型的输变电设备缺陷语料库构建方法
CN114881043A (zh) 基于深度学习模型的法律文书语义相似度评估方法及系统
CN113239694B (zh) 一种基于论元短语的论元角色识别的方法
CN117828024A (zh) 一种插件检索方法、装置、存储介质及设备
CN114328924A (zh) 一种基于预训练模型结合句法子树的关系分类方法
CN113535928A (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