python知识图谱关系抽取算法_知识图谱系列——关系抽取(1)

该博客介绍了ACL2016上的一篇论文,该论文提出了一种使用注意力机制的CNN网络方法来改进关系抽取。针对远程监督场景中的噪声问题,作者通过在关系语句层面引入注意力机制,提升了模型的性能。网络结构采用了CNN进行句子编码,并通过计算与关系向量的相似度来分配句子权重。实验结果显示,该模型表现优于其他方法,达到了当时的最优水平。
摘要由CSDN通过智能技术生成

摘要

本文接着 知识图谱系列––命名实体识别方法[1],继续介绍关系抽取方法。知识图谱在构建的过程中,往往伴随着边试用,边拓展,边优化的过程,其中图谱拓展和优化就必须用到关系抽取方法来进一步抽取补充实体关系。本文介绍一篇ACL2016的论文方法:基于attention的CNN网络进行关系抽取。

1 文章及算法介绍[2]

标题:Neural Relation Extraction with Selective Attention over Instances ACL2016

作者:Yankai Lin , Shiqi Shen , Zhiyuan Liu , Huanbo Luan , Maosong Sun

(1)动机及思路

针对以往distant supervision场景下的关系抽取中所存在的误标签传播所引起的训练数据噪声过大的问题,作者提出了一种在关系语句层面上引入Attention机制以提升模型效果。

(2)网络设计及方法

文章是2016年的,整体网络结构如图1现在来看没有太多特殊性,采用的是CNN模型来表征句子,主要通过图1中的α 句子级(sentence-level )的attention操作来凸显实体语义表征。图中

equation?tex=m_%7B1%7D%2Cm_%7B2%7D%2Cm_%7B3%7D等表示的是两个实体对对应的训练句子集合,

equation?tex=r_%7Bi%7D表示的是句子

equation?tex=m_%7Bi%7D经过 CNN 编码池化后的向量,

equation?tex=%5Calpha+_%7Bi%7D表示的是训练句子的权重。总体框架流程: CNN 编码后得到句子向量

equation?tex=r_%7Bi%7D,再通过计算

equation?tex=r_%7Bi%7D与关系

equation?tex=r向量的相似度来赋予

equation?tex=r_%7Bi%7D在整个句子集合中的权重。

文本编码及表示过程如图2所示,值得一提的是在当时作者就已经加入了position embedding,并且也可先行使用word2vec进行字符/词表示提升embedding表征效果。

试验结果

文中所给试验结果显示模型效果显著优于其他方法,文中所述是达到了当时的SOTA水平。

参考文献debuluoyi:知识图谱系列––命名实体识别方法(2)​zhuanlan.zhihu.comv2-9cc3885c00f92c13ab708177f1067149_180x120.jpg

[2] Lin, Y., Shen, S., Liu, Z., Luan, H., & Sun, M. (2016, August). Neural relation extraction with selective attention over instances. InProceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers)(pp. 2124-2133).

[3] Wu, S., & He, Y. (2019). Enriching Pre-trained Language Model with Entity Information for Relation Classification.arXiv preprint arXiv:1905.08284.github.com/debuluoyi​github.com卞书青:Neural Relation Extraction with Selective Attention over Instances阅读笔记​zhuanlan.zhihu.comv2-9603a708328eb4bbbed9d0b774f73cf4_180x120.jpg

关系抽取知识图谱构建中的一个重要任务,可以通过使用Python来实现。在关系抽取中,可以使用一些模型来帮助识别实体之间的关系。其中一个最近在知识图谱领域很火的模型是PCNN(Piece-wise Convolutional Neural Network)\[2\]。 关系抽取的F1值可以通过以下公式计算:F1 = 2 * (精确率 * 召回率) / (精确率 + 召回率)。在关系抽取中,识别关系的精确率和召回率是指识别出的关系与标注的关系相同的三元组的数量与总的识别出的关系的数量之比\[1\]。 关系抽取的一般流程包括实体抽取、实体链接和实体间关系抽取\[3\]。在实体抽取中,可以使用CNN+LSTM+CRF等算法进行实体识别。在实体链接中,需要将具有相同含义的实体进行规整。而实体间关系抽取可以使用经典算法如Piece-Wise-CNN和LSTM+Attention来实现。 在知识图谱中,一般采用图数据库(如neo4j)来存储知识。这样可以方便地查询和管理实体之间的关系\[3\]。 因此,使用Python可以实现知识图谱关系抽取的任务,可以借助PCNN模型和其他相关算法来识别实体之间的关系,并将结果存储在图数据库中。 #### 引用[.reference_title] - *1* [AI比赛-三元组抽取:工业知识图谱关系抽取-高端装备制造知识图谱自动化构建](https://blog.csdn.net/u013250861/article/details/129310105)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [知识图谱关系抽取之PCNN——tensorflow实现](https://blog.csdn.net/weixin_33417703/article/details/114452789)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值