CN112926325A - 基于bert神经网络的中文人物关系抽取构建方法 - Google Patents
基于bert神经网络的中文人物关系抽取构建方法 Download PDFInfo
- Publication number
- CN112926325A CN112926325A CN202110186063.0A CN202110186063A CN112926325A CN 112926325 A CN112926325 A CN 112926325A CN 202110186063 A CN202110186063 A CN 202110186063A CN 112926325 A CN112926325 A CN 112926325A
- Authority
- CN
- China
- Prior art keywords
- relation
- relationship
- service
- sentence
- module
- 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 67
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 12
- 238000010276 construction Methods 0.000 title claims description 9
- 238000012549 training Methods 0.000 claims abstract description 34
- 238000003860 storage Methods 0.000 claims abstract description 11
- 238000004140 cleaning Methods 0.000 claims abstract 5
- 238000002372 labelling Methods 0.000 claims abstract 5
- 238000013480 data collection Methods 0.000 claims abstract 4
- 230000003993 interaction Effects 0.000 claims abstract 3
- 238000004806 packaging method and process Methods 0.000 claims abstract 3
- 238000000034 method Methods 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 18
- 239000013598 vector Substances 0.000 claims description 16
- 238000005516 engineering process Methods 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000013500 data storage Methods 0.000 claims description 4
- 238000007726 management method Methods 0.000 claims description 4
- 230000002194 synthesizing effect Effects 0.000 claims 3
- 230000009193 crawling Effects 0.000 claims 2
- 230000001105 regulatory effect Effects 0.000 claims 2
- 230000011218 segmentation Effects 0.000 claims 2
- 230000008569 process Effects 0.000 description 10
- 238000013473 artificial intelligence Methods 0.000 description 9
- 239000000284 extract Substances 0.000 description 7
- 238000011160 research Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000003058 natural language processing Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000007547 defect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000012535 impurity Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 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
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及一种基于BERT神经网络的中文人物关系抽取方法,用于解决非结构化的中文文本内人物关系难以抽取的技术问题,具体内容包括数据收集模块,对训练数据的获取、清洗、标注;特征获取与关系抽取模块,包括对句子上下文编码、命名实体识别、实体关系的预测;关系存储模块和应用服务模块,利用图数据库存储文本人物关系抽取出的人物实体关系图谱,基于SOA设计核心业务服务API接口,提供数据交互服务,Docker容器封装***应用,使***平台具有高可移植性和可扩展性,最终提供文本人物关系知识图谱功能。本发明能够有效地解决目前所面临的人物关系抽取召回率低、关系不准等问题。以达到更好的关系抽取平台服务。
Description
技术领域
本发明属于计算机自然语言处理领域,是一种基于BERT神经网络的对中文人物关系进行抽取的方法。不同于目前主流的基于传统方法的依存句法分析的方法,本发明方法是一种深度学习的抽取方法,相比于传统中文人物关系抽取,本***通过基于BERT的深度学习的方法能够在一定程度上缓解基于传统中文人物关系抽取模型的弊端,即对特征的选取是由模型训练完成,在没有人工干预的条件下得到高性能的关系抽取模型。在最终对文本的抽取当中,有着非常高的准确率和召回率。
背景技术
随着大数据时代的到来和信息技术的不断发展,现如今的社会已经进入到了人工智能(Artificial Intelligence,简称AI)时代。各种各样的人工智能应用产品不断的出现,在诸多领域中发挥着各样的重要作用,比如在AI+农业、AI+医疗、AI+自动驾驶、AI+教育等人工智能与传统行业相结合的全新应用场景中大放异彩。而在人工智能领域当中有一个非常重要的子领域--自然语言处理领域(Natural Language Processing,简称NLP),在NLP当中人物关系抽取又作为NLP的重要内容之一有着十分广阔的应用前景。
随着大数据时代的到来,数据规模不断增大,信息过载的问题日益严重,面对领域交叉、海量异构、碎片化的激增的各种文本数据,如何才能快速高效的准确地获取关键信息有着重大意义。从当中抽取关键信息进行分析成为一个研究热点,而信息抽取又需要高质量的语义实体做支撑。根据这一特定问题,这时实体关系抽取就发挥了重要作用,此技术可以从网络中海量的非结构化数据中抽取特定的实体、事件、关系等信息,进而转化成符合人类认知世界的表示形式,形成结构化的数据存储在数据库中,为各类用户提供一种有组织、可查询、可使用的数据知识。从大数据到大知识[3]的过程中,人物关系抽取研究对于智能语义搜索、人物知识图谱构建、问答***等领域具有重要意义。
(1)智能语义搜索中的应用
随着互联网的发展,如今人们越来越依赖搜索引擎,当大家遇到解决不了的问题或有不懂的信息时都会习惯性的去百度、谷歌、bing、360等搜索引擎搜索一下来获取想要的结果。随着搜索引擎相关技术的不断发展,在信息检索过程中不是简单的关键词匹配,搜索引擎会自动根据语义知识进行联想,搜索并反馈用户真正需要的信息,其能实现数字、字母的精准搜索,而不是模糊匹配,并且数据库增删改可实时同步到搜索引擎中,在搜索引擎为人们提供便利的背后就有实体关系抽取这项技术为其提供了支持。例如,当检索框中输入“猪八戒的师兄用的是什么武器”,面对此类复杂的查询时,搜索引擎会直接返回其猪八戒师兄的姓名(孙悟空)以及其别名,表明搜索引擎返回结果过程中会对用户输入的内容进行语义分析,通过实体关系抽取来读懂用户的问题,提炼出问题主体,然后与知识图谱中对应的节点相链接,对搜索结果进行去重并推送精准的、用户想要的结果。
(2)人物知识图谱构建的应用
人物知识图谱构建技术的第一步就是信息抽取,而人物关系抽取是信息抽取的核心内容之一,其可以通过人物识别和关系抽取得到有效的关系三元组。最终在人与人之间构建知识图谱,以实现跨姓的大知识挖掘和推理服务。例如在家庭人物图谱当中,我们可以轻易的得到与主人公直接相关和简介相关的各种人物及与主人公的关系;在历史人物图谱当中,通过使用历史人物图谱掌握和评价历史人物的方法在历史学习和探究中具有重要的作用;在小说人物图谱当中可以更快的梳理清楚人物关系,以达到对小说更深刻的理解。
所以人物关系抽取研究对于这种***十分重要,它可以促进此类知识图谱的自动构建。因而研究人物关系抽取算法与其相关理论研究发展具有重要的现实意义。
(3)问答***中的应用
问答***在对用户所提问题进行回答前,需要对问题的内容进行分析,抽取人物对之间的语义关系,从而方便***自动给出合理的答案。例如,在回答“猪八戒的师兄用的是什么武器?”类似问题时,利用人物关系抽取技术来构建人物之间的联系,通过<猪八戒,师兄,孙悟空>,将该问题可以转化为“孙悟空用的是什么武器?”,最后可以通过查询结果自动回答,而不是像传统方法那样,通过信息检索返回大量的网页作为结果集。
综上所述,可以发现实体关系抽取研究广泛应用在智能语义搜索、人物知识图谱构建、问答***等领域,其促进着自然语言处理和人工智能等技术的发展,推动了学术界的研究进步。
目前中文人物关系抽取的方法大多是基于依存句法分析的方法进行抽取文本当中的人物关系,通过不同语言的语法规则建立起模型一一对应的依存关系以达到抽取人物关系的目的。但是这样的方法需要人为去定义大量的语法规则,而且通过依存句法分析提取到的特征信息十分的原始,在人为的主观因素介入下,需要有二次加工的特征信息的输入,因此会导致累计误差严重,影响模型抽取的精准程度。因此,将深度学习思想应用于人物关系抽取任务中具有重要的研究意义,本***通过基于BERT的深度学习的方法能够在一定程度上缓解基于依存句法分析的关系抽取模型的弊端,即对特征的选取是由模型训练完成,在没有人工干预的条件下得到高性能的关系抽取模型。在最终对文本的抽取当中,有着非常高的准确率和召回率。
本发明是基于BERT神经网络的中文人物关系抽取方法,方法主要包括文本预处理层,特征抽取层和关系预测层。文本预处理层包括两部分,第一部分是训练预料的获取、人名NER识别和文本mask,第二部分是BERT Embedding,将传入的文本转换成字向量。特征抽取层由BI-LSTM、DropOut、残差映射、Multi-head-Self-Attention抽取构成,特征抽取层用于对已经处理过的原文本进行特征抽取,抽取出句子的更深层的高维语义特征。关系预测层模块是基于softmax定位关系词位置索引和关系字典匹配的方式,关系预测层模块是为了得到传入文本通过特征提取后最终判断出两人物之间的关系词并构成关系三元组。
本发明采用了如下的技术方案及实现步骤:
1.中文人物关系抽取整体流程的技术方案
中文人物关系抽取是信息抽取领域非常重要的一部分,其主要任务就是从非结构化的文本当中抽取出文本里面包含的人物关系,通过抽出出来的人物关系可以进行很多后续的研究。本发明的中文人物关系抽取整体流程图流程框架如图1所示。
其形式化定义为:对于一个包含人物关系的句子S集合{W1,W2,W3,W4,....,Wn},其中W代表句子当中的字,n表示句子当中每个文字的序号,人物关系抽取用于抽取句子当中的两个人物Wi-j和Wk-1之间的关系,如果句子当中包含超过2个实体人物,分别返回每两个人物之间两两组合的关系。每一组关系抽取出来的关系均以一个三元组的形式进行表达,如下面公式所示:
得到的每一个人物关系三元组都是此句子S当中的一个实例关系,例如,从句子“王刚和其老婆魏小红、堂侄王小强去饭馆吃饭”中,可以识别出三个人物“王刚”、“魏小红”和“王小强”,并且得到三者之间两两组合之间的关系,得到的三元组共三个,分别表示为<“王刚”,“老婆”,“魏小红”>、<“王刚”,“堂侄”,“王小强”>、<“魏小红”,“unknown”,“王小强”>,其中第三个三元组当中的unknown代表这个三元组中所对应的两个人物在本句当中没有关系。
2.人物关系数据语料的构建:
由于公开的中文人物关系抽取的语料库的十分缺乏,目前还未有比较权威的中文人物关系抽取数据集,本项目选择了使用远程监督的方法来获取训练语料库,先通过互动百科下载了10000个人物关系对(图2),因防止侵犯他人隐私,本文展示的所有数据上的人名均使用虚拟人们替换,然后使用爬虫将每一个人物关系对拼接到百度搜索URL之后进行搜索,将搜索到的文本语料爬取到数据库当中存储下来,将其人工清洗、标注,构建了人物关系语料,最终清洗出30000条包含人物关系的语句,作为本项目中文人物关系抽取实验的数据集,并且将数据集随机打乱之后28000条作为训练集和2000条作为测试集,部分数据集展示如图3所示。
3.中文人物关系抽取模型
本文提出的基于深度学习的BERT+BI-LSTM+Multi-head-Self-Attention+FC中文人物关系抽取模型的结构,在中文人物关系抽取当中,BERT的预训练模型有着至关重要的作用,BERT网络是基于Tansformer网络encoder端模型,即基于Attention机制构建起来的大规模网络,可以有效的解决序列模型带来的长期依赖和无法并行训练效率低等问题,但是仅仅使用BERT网络模型还不能有效地抽取出语料的特征信息,因为尽管BERT网络模型是通过开源语料预训练过的,但是整个网络模型参数并没有针对人物关系领域进行抽取任务的训练,然后还需要后续BI-LSTM+Multi-head-Self-Attention+FC模型部分提取出传入文本高维度的语义等特征。
基于BERT的双向长短期记忆网络模型的主要思想就是在BERT模型上加入BI-LSTM层和Multi-head-Self-Attention层,最后再拼接上非线性映射层和softmax输出层,其结构如图3所示,共包括6层,从上往下依次是:
1、输入层:这一层的作用是对训练语料进行预处理然后输入到模型当中,首先先判断出传入句子当中人物的个数,通过句子当中人物的个数将句子进行复制,其句子的数量达到可以进行人物之间两两组合的个数,然后进行mask操作,将每个句子当中想要判断关系的对应的两个人物的人名进行mask处理,即使用与人名的字数同等个数的“#”替换对应的人名,这里将人名进行mask处理有两个主要原因,第一是进行标记,在一个句子当中出现多个人名,通过mask不同的位置进行标记判断出来的是被mask掉的两个位置的人物之间的关系,第二是在已知人名实体在句子当中位置的基础上,两人物之间的关系与句子的表达形式和语义相关,跟两人物实体的人名分别是什么没有影响,通过将两个位置的人名给mask掉,不仅仅没有丢失传入文本语句的信息,而且还删除掉了不同人名叫法对句子影响的杂质信息。
例如输入句子“王刚和其老婆魏小红、堂侄王小强去饭馆吃饭”,经过文本预处理之后会得到三条输入如表1,然后将三条句子分别传入后续的模型当中,得到每条句子相对应两个人物之间的关系。
表1
2、BERT嵌入层:
在这一层中BERT网络将每个字经过传入语句的加权求和之后映射到低维的向量空间,也就是每个字的字向量,在一定程度上提取出语料中上下文的特征,最终得到传入语句的每个字的字向量W作为接下来BI-LSTM层的输入。
3、BI-LSTM层:
该层的作用是将BERT嵌入层输出的的文本词向量通过构建正反两个LSTM神经网络从正反两个相反的方向提取特征,这样更能有利于解决人物关系抽取中句子长依赖等问题。这一层的主要目的是将BERT网络之后的特征信息接入BI-LSTM网络模型,提取出高维语义特征。
4、Dropout层
在模型训练的过程中,模型的参数太多,而训练样本又不是很多,训练出来的模型很容易产生过拟合的现象,Dropout层在前向传播的时候,让某个神经元的激活值以一定的概率p停止工作,例如,将p设置为0.5,会导致每次训练的时候只随机训练全部神经元的50%,这样使得模型不会太依赖某些局部的特征,这样可以使模型泛化性更强,最终可以比较有效的缓解过拟合的发生,在一定程度上达到正则化的效果。
其中第三层BI-LSTM层和第四层Dropout层共进行三次的循环,并且每次循环都加入了残差结构。
5、Multi-head-Self-Attention层:
利用层层叠加的Self-Attention机制对每一个词得到新的考虑了上下文信息的表征
6、非线性映射层和softmax输出层:
该层的主要工作是根据上层模块得到的深度特征向量通过softmax函数分类器输出,预测人物关系的分类,并与人工标注的人物关系分类进行比较。具体操作为将上层模块Attention之后的结果进行两层全连接层进行维度的转换,然后再经过softmax函数将输出的结果进行映射为为0-1之间的实数,并且归一化的和为1。然后取softmax之后的结果当中最大值的位置编号为最后的output输出结果,代表的是两人物所对应关系词的第一个字在对应的语料句子当中的位置索引。
在许多传统的模型当中,大多数都是采用的是预测人物关系的分类的模型,但是使用传统的预先定义好类别再进行分类的方式有很对的缺陷,影响关系抽取的精确性,例如训练集样本各分类数据不均衡问题,如果采用分类的方式,在中文人物关系抽取领域,部分类别的数据很难获取,如一些偏远的亲属关系、上下级关系、同门的数据获取难度远远大于夫妻、父母、兄弟姐妹的数据获取,以至于导致最终爬取的训练预料严重的不均衡,导致模型的训练效果很差。所以在本算法是采用阅读理解的方式,返回的是关系词在句子当中的位置索引,即最终output输出的结果是选择返回两人物关系在传入句子当中位置索引所在位置的方法来得到最终结果的,首先经过softmax函数分类器输出之后的结果为两人物直接关系词的首字所在句子当中的位置索引,然后从句子的当前索引位置开始选择后三个字或者后两个字在已经准备好的关系字典进行遍历,遍历出完整的关系,最终得到当前两个人物的关系三元组。
附图说明:
图1是基于BERT神经网络的中文人物关系抽取整体流程图
图2是中文人物关系对示例
图3是中文人物关系语料示例
图4 BI-LSTM网络图
图5是基于BERT神经网络的中文人物关系抽取模型架构图
图6是部分抽取结果展示图
图7是人物关系抽取可视化过程图
图8是本发明的实施例的***架构图
图9是网站的展示页面架构组成图
具体实施方式:
基于BERT神经网络的中文人物关系抽取方法。
包含以下步骤:
在文本预处理层,将传入文本根据实体人物个数进行扩充并mask操作。
在BERT层中,在Embedding过程中,首先将给定的由n个字组成的中文句子S={W1,W2,W3,W4,W5,.....,Wn}转换成对应的字向量,通过BERT将每一个字Wi转化成一个维度为768x1的字向量ei,即E={e1,e2,e3,e4,e5,.....,en}。
在BI-LSTM层中(图4),由于BL-STM网络包含前向和后向两个子LSTM网络,分别向前和向后传递,每个LSTM需要经过公式(1)-(6),其中et是此时刻的输入,ht-1是上一时刻的记忆输出,Wf Wi Wo分别是模型的参数,使用0.5的Dropout层,分别计算出输入门ft、输出门ot、遗忘门it、,其中sigmod的功能是将输出的结果归一化到0到1之间,通过三个门控将输入的数据最终计算出次子模型的输出{hL0,hL1,hL2,hL3,……,hLn}和{hR0,hR1,hR2,hR3,……,hRn},将每个时刻的前向和后向的隐向量进行拼接得到{[hL0:hR20],[hL1:hR19],[hL2:hR18],……,[hL19:hR2],[hL20:hR1]},即BI-LSTM输出h={h0,h1,h2,h3,……,h19,h20}。L为从左往右的LSTM网络传输,R代表从右往左的LSTM的网络的传输。
ft=sigmod(Dropout(Wf,0.5)[ht-1,et]+bf) (1)
it=sigmod(Dropout(Wi,0.5)[ht-1,et]+bi) (2)
ot=sigmod(Dropout(Wo,0.5)[ht-1,et]+bo) (3)
C′t=tanh(Wc[ht-1,et]+bc) (4)
Ct=ft*ct-1+it*c′t (5)
ht=ot*tanh(ct) (6)
将BI-LSTM层中输出的结果经过公式(7)利用残差的方式继续通入到BI-LSTM层当中,一共经过三次的BI-LSTM。
hl+1=hl+LSTM(hl,Wl) (7)
在Multi-head-Self-Attention层,先通过attention的{Q,K,V}矩阵将每组的q(query),k(key),v(value)分别计算出来,因为本论文采用的是Multi-head-Self-Attention有多个head,所以需要用多组参数不一样的{Qi,Ki,Vi}参数矩阵经过公式(8)-(10)分别求出每一个head对应的{qi,ki,vi},然后经过公式(11)-(13)分别求出每个头的attention值yi,然后过公式(14)将归一化的结果乘以矩阵v就得到权重求和的表示Ai,然后将每个head输出的结果Ai经过拼接之后获得此部分的输出A={[A1h1:A1h2:A1h3:…:A1hm],[A2h1:A2h2:A2h3:…:A2hm],[A3h1:A3h2:A3h3:…:A3hm],……,[Anh1:Anh2:Anh3:…:Anhm]}。其中前面的下标1-i表示的为第几个head输出的结果,后面的下标1-m表示的每一个head输出结果的每一个位置的输出。
qi=Qi*h (8)
ki=Ki*h (9)
ki=Ki*h (10)
yi=softmax(Score(qi,kj)) (13)
Ai=Self-Attention(q,k,v)=yi*v (14)
在非线性映射层和softmax输出层,经过公式(15)-(16)先将上层的输出A经过两层的全连接层,W和b均为模型的参数,然后做softmax计算得到结果,然后通过argmax找到softmax最大值的位置即得到了最终的预测结果,该层的主要工作是根据上一层得到的深度特征词向量通过softmax函数分类器输出,预测人物关系的分类,并与人工标注的人物关系分类进行比较。
o′=softmax(W2(W1*Ai+b1)+b2) (15)
o=numpy.argmax(o′) (16)
在模型初始化部分,针对关系抽取模型,设置模型所有的子层的初始权重为一个随机的期望为0方差为1的正态分布矩阵。对于BERT嵌入层的参数设置,设置BERT的输入最大长度为50,因为通过对3.2章当中整理的训练语句进行分析,其中99.94%的数据文本的长度的字数是小于50个字的,当遇到长度大于50个字的时候会对文本进行截断拆分,将截断的部分分别传入到模型当中进行判断。对于BI-LSTM层的参数设置,设置接受数据层的初始权重设置为50*768即传入句子的长度50维度乘以BERT模型输出的字向量的维度768维度,设置BI-LSTM的隐藏层维度为128,设置所有Dropout层参数为0.5,即以0.5的概率对神经元进行保留。对于Multi-head-Self-Attention层的参数设置,设置多头自注意力机制的head数为12。设置Q,K,V矩阵的维度为32。
对于非线性映射层和softmax输出层的参数设置,前两层的全连接层的输出维度均为512,最后一层的输出维度为51,其代表的是经过softmax计算之后返回的句子索引位置的50个维度和代表unknown关系的1个维度的概率。
在训练过程中一些超参数的设置,首先使用Adam(ε=106,ρ=0.95)作为随机梯度下降(Stochastic Gradient Descent,SGD)的优化算法,即设置初始学***稳。同时为避免梯度***,将梯度范数剪裁为0.9。设置batch_size的参数为32,即在批量训练的时候,每一个批度的文本数量是32条文本。设置epochs的参数为30,即在训练模型的时候最多将全部的文本循环训练30遍。设置early_stopping的参数为5,即在训练的过程当中通过监视验证准确性在最近一段时间内是否有所改善,来触发提前停止。如果连续5次没有发生过模型效果改善则提前停止模型训练,防止模型过拟合。设置损失函数为categorical_crossentropy,即采用交叉熵损失函数,交叉熵能够衡量同一个随机变量中的两个不同概率分布的差异程度,经常使用到为真实概率分布与预测概率分布之间的差异。交叉熵的值越小,模型预测效果就越好。在表2中,展示了模型训练过程所有网络结构所设定的超参数值。
参数描述 | 值 |
BERT最长输入 | 50 |
BI-LSTM input_size | (50,768) |
BI-LSTM hidden_size | 128 |
BI-LSTM num_layers | 2 |
BI-LSTM Dropout | 0.5 |
Attention Head | 12 |
Attention Q K V | 32 |
FC1、FC2 | 512 |
FC3 | 51 |
learning rate | 1.0 |
cutting | 0.9 |
batch_size | 32 |
epochs | 30 |
early_stopping | 5 |
表2
最后在字典匹配层,通过得到的位置索引o在传入句子的当前索引位置开始选择后三个字或者后两个字在已经准备好的关系字典进行遍历,遍历出完整的关系,最终得到当前两个人物的关系三元组。部分抽取结果展示见图5。通过测试结果可以看出,该模型可以准确的识别出单条语句当中出现的人物,并能准确分析出不同人物之间两两之间的关系。
知识存储模块如图6所示,利用图数据库提供人物关系抽取结果存储和展示服务,保存文本人物实体与特征实体关系。本***采用面向服务的设计模式进行平台设计,基于SOA架构将***核心业务线划分为在一个具体实施例中(图7),网站的展示页面架构组成如图8所示,包括总体展示、平台服务、管理模块、用户门户等模块,并采用RESTFUL规范设计并实现API接口。考虑到平台的可扩展性与支持高并发性,利用Redis进行分布式缓存。利用Docker容器技术,将本***平台知识服务应用进行封装,方便分布式应用于部署,使得知识服务***具有高可移植性和高可扩展性。
在一个实施例中,还包括抽取出的人物关系可视化的步骤,所述人物关系可视化的步骤包括在显示终端通过Web应用框架显示,包括:
通过浏览器接收客户端的https请求;
将所述http请求发送给web服务器网管关口;
通过统一资源***指定信息位置,并发送给视图函数;
视图函数使用HttpRequest对象,在数据存储层请求数据;
数据存储层调用数据库数据,根据视图函数中需要的对象从数据库中提取相应数据到视图函数中,在视图函数中进行数据处理之后通过模板语言传入表现层,表现层返回http请求到浏览器,展现给用户。
所述人物关系可视化的步骤还包括:对人物关系进行整体展示或者对人物关系进行构造人物关系网进行展示。
终上所述,本发明方法是一种基于BERT神经网络的中文人物关系抽取方法及***,可以在训练数据中自动学习并提取大量特征,解决了传统中文人物关系抽取方法因为人工特征少而召回率底的缺陷。
Claims (8)
1.一种基于BERT神经网络的中文人物关系抽取***,其特征在于,包括:
数据收集模块,对训练数据的获取、数据清洗、数据的标注,使用收集到的数据作为训练数据,获得各句子中存在的人物实体标签以及人物实体标签间的关系标签;
特征获取与关系抽取模块,包括对每个句子进行上下文编码、对每个句子的上下文语义表征进行命名实体识别、综合其上下文语义表征和命名实体识别结果以及关系标签嵌入表示,预测每个句子中所有的实体关系;
关系存储模块和应用服务模块,利用图数据库存储文本人物关系抽取出的人物实体关系图谱,基于SOA设计核心业务服务API接口,提供数据交互服务,Docker容器封装***应用,最终提供文本人物关系知识图谱功能。
2.根据权利要求1所述的中文人物关系抽取***,其特征在于,数据收集模块具体为:
首先收集大量包含人物关系的互联网数据作为训练数据,然后使用爬虫将每一个人物关系对拼接到百度搜索URL之后进行搜索,将搜索到的文本语料爬取到数据库当中存储下来,将其人工清洗、标注,构建了人物关系语料。
3.根据权利要求1所述的中文人物关系抽取***,其特征在于,特征获取与关系抽取模块具体为:
对整理好的训练数据中的每个句子中出现的人物进行命名实体识别;
对训练数据的每个句子进行BERT Embedding字向量转化;
对转换过的字向量句子进行上下文编码得到每个句子的上下文语义表征;
对于待预测数据的每个句子,综合其上下文语义表征和命名实体识别结果进行人物实体之间的两两预测,预测出每个句子中所有的人物实体关系。
4.根据权利要求1所述的中文人物关系抽取***,其特征在于,关系存储模块和应用服务模块,具体为:
利用图数据库提供中文人物关系知识图谱存储服务,保存中文文本当中抽取出来的人物实体关系;基于SOA将中文人物关系抽取***按照服务功能进行拆分,设计API接口包括用户门户模块接口、管理模块接口、总体展示模块接口、平台服务模块接口;利用Mongodb数据库提供用户相关数据存储服务以及相关***访问日志存储服务;利用Redis分布式缓存数据库提供API接口访问缓存服务;利用Docker容器技术,将知识服务应用进行封装,方便分布式应用于部署;针对用户传入的文档信息进行文本分句,命名实体识别,BERT字向量转化,特征提取,关系推断,再对人物实体与推断的关系构造成关系三元组,通过构造的三元组进行知识图谱构建、提供人物关系查询、文本关系抽取服务。
5.一种基于BERT神经网络的中文人物关系抽取方法,其特征在于,包括:
对训练数据的获取、数据清洗、数据的标注,使用收集到的数据作为训练数据,获得各句子中存在的人物实体标签以及人物实体标签间的关系标签;
包括对每个句子进行上下文编码、对每个句子的上下文语义表征进行命名实体识别、综合其上下文语义表征和命名实体识别结果以及关系标签嵌入表示,预测每个句子中所有的实体关系;
利用图数据库存储文本人物关系抽取出的人物实体关系图谱,基于SOA设计核心业务服务API接口,提供数据交互服务,Docker容器封装***应用最终提供文本人物关系知识图谱功能。
6.根据权利要求5所述的中文人物关系抽取方法,其特征在于:
首先收集大量包含人物关系的互联网数据作为训练数据,然后使用爬虫将每一个人物关系对拼接到百度搜索URL之后进行搜索,将搜索到的文本语料爬取到数据库当中存储下来,将其人工清洗、标注,构建了人物关系语料。
7.根据权利要求5所述的中文人物关系抽取方法,其特征在于:
对整理好的训练数据中的每个句子中出现的人物进行命名实体识别;
对训练数据的每个句子进行BERT Embedding字向量转化;
对转换过的字向量句子进行上下文编码得到每个句子的上下文语义表征;
对于待预测数据的每个句子,综合其上下文语义表征和命名实体识别结果进行人物实体之间的两两预测,预测出每个句子中所有的人物实体关系。
8.根据权利要求5所述的中文人物关系抽取方法,其特征在于:
利用图数据库提供中文人物关系知识图谱存储服务,保存中文文本当中抽取出来的人物实体关系;基于SOA将中文人物关系抽取***按照服务功能进行拆分,设计API接口包括用户门户模块接口、管理模块接口、总体展示模块接口、平台服务模块接口;利用Mongodb数据库提供用户相关数据存储服务以及相关***访问日志存储服务;利用Redis分布式缓存数据库提供API接口访问缓存服务;利用Docker容器技术,将知识服务应用进行封装,方便分布式应用于部署;针对用户传入的文档信息进行文本分句,命名实体识别,BERT字向量转化,特征提取,关系推断,再对人物实体与推断的关系构造成关系三元组,通过构造的三元组进行知识图谱构建、提供人物关系查询、文本关系抽取服务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110186063.0A CN112926325A (zh) | 2021-02-14 | 2021-02-14 | 基于bert神经网络的中文人物关系抽取构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110186063.0A CN112926325A (zh) | 2021-02-14 | 2021-02-14 | 基于bert神经网络的中文人物关系抽取构建方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112926325A true CN112926325A (zh) | 2021-06-08 |
Family
ID=76169754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110186063.0A Pending CN112926325A (zh) | 2021-02-14 | 2021-02-14 | 基于bert神经网络的中文人物关系抽取构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112926325A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113283243A (zh) * | 2021-06-09 | 2021-08-20 | 广东工业大学 | 一种实体与关系联合抽取的方法 |
CN113642336A (zh) * | 2021-08-27 | 2021-11-12 | 青岛全掌柜科技有限公司 | 一种基于SaaS的保险自动问答方法及*** |
CN114218924A (zh) * | 2021-07-27 | 2022-03-22 | 广东电力信息科技有限公司 | 一种基于bert模型的文本意图及实体联合识别方法 |
CN116628174A (zh) * | 2023-02-17 | 2023-08-22 | 广东技术师范大学 | 一种融合实体和关系信息的端到端关系抽取方法以及*** |
CN116662578A (zh) * | 2023-08-02 | 2023-08-29 | 中国标准化研究院 | 一种基于端到端的大型知识图谱构建和存储方法和*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125367A (zh) * | 2019-12-26 | 2020-05-08 | 华南理工大学 | 一种基于多层次注意力机制的多种人物关系抽取方法 |
CN111159407A (zh) * | 2019-12-30 | 2020-05-15 | 北京明朝万达科技股份有限公司 | 训练实体识别和关系分类模型的方法、装置、设备及介质 |
CN111538849A (zh) * | 2020-04-29 | 2020-08-14 | 华中科技大学 | 一种基于深度学习的人物关系图谱构建方法及*** |
CN111581376A (zh) * | 2020-04-17 | 2020-08-25 | 中国船舶重工集团公司第七一四研究所 | 一种知识图谱自动构建***及方法 |
CN112364091A (zh) * | 2020-11-09 | 2021-02-12 | 北京工商大学 | 一种基于知识图谱的人物关系可视化查询方法及*** |
-
2021
- 2021-02-14 CN CN202110186063.0A patent/CN112926325A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125367A (zh) * | 2019-12-26 | 2020-05-08 | 华南理工大学 | 一种基于多层次注意力机制的多种人物关系抽取方法 |
CN111159407A (zh) * | 2019-12-30 | 2020-05-15 | 北京明朝万达科技股份有限公司 | 训练实体识别和关系分类模型的方法、装置、设备及介质 |
CN111581376A (zh) * | 2020-04-17 | 2020-08-25 | 中国船舶重工集团公司第七一四研究所 | 一种知识图谱自动构建***及方法 |
CN111538849A (zh) * | 2020-04-29 | 2020-08-14 | 华中科技大学 | 一种基于深度学习的人物关系图谱构建方法及*** |
CN112364091A (zh) * | 2020-11-09 | 2021-02-12 | 北京工商大学 | 一种基于知识图谱的人物关系可视化查询方法及*** |
Non-Patent Citations (2)
Title |
---|
DENGTAO LIU,等: "Chinese Character Relationship Extraction Method Based on BERT", 《INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE AND COMPUTER APPLICATIONS》, 28 June 2021 (2021-06-28), pages 883 - 887, XP033951013, DOI: 10.1109/ICAICA52286.2021.9497946 * |
刘峰;高赛;于碧辉;郭放达;: "基于Multi-head Attention和Bi-LSTM的实体关系分类", 计算机***应用, no. 06, 15 June 2019 (2019-06-15), pages 118 - 124 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113283243A (zh) * | 2021-06-09 | 2021-08-20 | 广东工业大学 | 一种实体与关系联合抽取的方法 |
CN113283243B (zh) * | 2021-06-09 | 2022-07-26 | 广东工业大学 | 一种实体与关系联合抽取的方法 |
CN114218924A (zh) * | 2021-07-27 | 2022-03-22 | 广东电力信息科技有限公司 | 一种基于bert模型的文本意图及实体联合识别方法 |
CN113642336A (zh) * | 2021-08-27 | 2021-11-12 | 青岛全掌柜科技有限公司 | 一种基于SaaS的保险自动问答方法及*** |
CN113642336B (zh) * | 2021-08-27 | 2024-03-08 | 青岛全掌柜科技有限公司 | 一种基于SaaS的保险自动问答方法及*** |
CN116628174A (zh) * | 2023-02-17 | 2023-08-22 | 广东技术师范大学 | 一种融合实体和关系信息的端到端关系抽取方法以及*** |
CN116662578A (zh) * | 2023-08-02 | 2023-08-29 | 中国标准化研究院 | 一种基于端到端的大型知识图谱构建和存储方法和*** |
CN116662578B (zh) * | 2023-08-02 | 2023-10-31 | 中国标准化研究院 | 一种基于端到端的大型知识图谱构建和存储方法和*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109492157B (zh) | 基于rnn、注意力机制的新闻推荐方法及主题表征方法 | |
CN109885672B (zh) | 一种面向在线教育的问答式智能检索***及方法 | |
CN112926325A (zh) | 基于bert神经网络的中文人物关系抽取构建方法 | |
CN107180045B (zh) | 一种互联网文本蕴含地理实体关系的抽取方法 | |
CN110175227A (zh) | 一种基于组队学习和层级推理的对话辅助*** | |
CN109829104A (zh) | 基于语义相似度的伪相关反馈模型信息检索方法及*** | |
CN109960786A (zh) | 基于融合策略的中文词语相似度计算方法 | |
CN115796181A (zh) | 一种针对化工领域的文本关系抽取方法 | |
CN110765277A (zh) | 一种基于知识图谱的移动端的在线设备故障诊断平台 | |
CN115599899B (zh) | 基于飞行器知识图谱的智能问答方法、***、设备及介质 | |
CN116975256B (zh) | 抽水蓄能电站地下厂房施工过程多源信息的处理方法及*** | |
CN116077942B (zh) | 一种交互式内容推荐的实现方法 | |
CN111581364A (zh) | 一种面向医疗领域的中文智能问答短文本相似度计算方法 | |
CN111951079A (zh) | 一种基于知识图谱的信用评级方法、装置及电子设备 | |
Korade et al. | Strengthening Sentence Similarity Identification Through OpenAI Embeddings and Deep Learning. | |
CN117786052A (zh) | 一种基于领域知识图谱的电网智能问答*** | |
CN116450776A (zh) | 基于知识图谱的油气管网法律法规及技术标准检索*** | |
CN116484023A (zh) | 一种基于人工智能的电力行业知识库构建方法及*** | |
CN114238653B (zh) | 一种编程教育知识图谱构建、补全与智能问答的方法 | |
CN111581326B (zh) | 一种基于异构外部知识源图结构抽取答案信息的方法 | |
CN112507097B (zh) | 一种提高问答***泛化能力的方法 | |
CN115905554A (zh) | 一种基于多学科分类的中文学术知识图谱构建方法 | |
Nahar et al. | A Comparative Selection of Best Activation Pair Layer in Convolution Neural Network for Sentence Classification using Deep Learning Model | |
Yarovyi et al. | Dictionary data structure for a text analysis task using cross-references | |
Liu et al. | A resource retrieval method of multimedia recommendation system based on deep learning |
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 |