Relation Extraction Survey

实体关系抽取介绍

实体关系抽(RE, Relation Extraction)取任务是信息抽取中重要的一个子任务,同时也是知识图谱构建过程中必不可少的一个环节。所谓关系抽取是指从含有实体对的句子中,抽取出该实体对对应的关系,比如句子“马化腾在1998年11月创立了腾讯”,抽取结果是<马化腾/人名,创立/关系,腾讯/公司>。这个过程分为两个任务,一个是检测出句子中是否含有实体对,第二个任务是句子中是否含有实体对间的关系。笔者结合近几天对实体抽取相关研究的调研进行汇总,介绍下RE的相关研发方法及工业届常用的一些思路。

研究方法思维导图

将RE的研究思路汇总成如下框图。


关系抽取思维导图

任务方案简述

关系抽取也可以看做是一个机器学习任务,因此可以从三个反向进行解决,如上图所示。

基于监督学习方法

根据RE的特点,目的是从句子中抽取或判断出实体对的某种关系,因此一种思路是将该任务等于分类任务去对待,另一种思路是基于kenel的方法进行求解。

Classification Model

基于分类模型,那么传统的分类模型都可以用来完成改任务,典型的流程是设定好关系类别,选择合适的特征(该任务中,通常特征会包括POS,NER,Position,句法解析结果), 之后选择合适的分类器,然后训练、预测。该方式比较传统,因此问题也比较突出,需要较多的人工干预特征才能获得较好的效果。

Deep Learning Model

由于近两年以来深度学习在语音和图像领域的效果,因此越来越多的学着将深度学习技术运用于NLP任务,同时也获得了较好的效果。针对于RE问题,同样是将其看做一个分类任务,采用CNN抽取特征,然后利用softmax获得最终的分类结果。常见的架构是,

  • 利用word embedding 技术获得句子中每个词/字的embedding,或者利用pre-trianed embedding作为初始化

  • 同时获得句子中每个词的Position embedding,这里的位置是指当前的每个词相对于实体对中两个实体的位置,比如“马化腾 在 1998年11月 创立 了 腾讯”,马化腾和腾讯是两个实体,比如“在”这个字,到“马化腾”的距离是-1, 到“腾讯”这个词的距离是4,然后对这两个值进行embedding得到 Position embedding。

  • 将之前步骤中的向量进行拼接当做sentence的表示,然后利用CNN抽取特征

  • 利用softmax或其他函数获得最终的输出

基于深度学习的方式采用了end to end 的思想,不要太多人工设计的特征,从整个系统来说最多只需要pre-trained embedding 其他均不需要人为单独设计特征。但针对于传统CNN模型还是存在较多局限性,众多学者都进行了较多的改进,主要有:

  • CNN + max pooling, 通过pooling获得相同规格的特征,避免不同句子长度造成的影响

  • 不同 卷积filter协同工作,利用不同大小的卷积核提取更多的特征

  • Multi-instance Learning, 不具体标注单个句子,而是标注某个文档集或者句子集,主要是依据假设:如果一个实体对出现在一个bag集中,那么至少有一个doc或者sentence含有该实体对的关系。

  • Piece-wise CNN,在进行CNN之前,根据两个实体的位置对sentence vector 分为三块,分别进行CNN,以获得更多的结构性信息

  • CNN + Attention, 在卷积中加入注意力机制,使得含有关系的句子获得更多的关注

以上就是采用DL的方法来进行RE任务常用的方法。

Distant Supervision

远程监督,属于一种弱监督方式,它是利用外界的一个庞大的知识库来指导标注/扩充训练样本集。基本思想是,假设一个含有实体对的句子,如果该实体对能够和Freebase知识库中的实体对齐的话,那么该句子同时也包含了该实体对在Freebase中的关系,因此可以将该句子看成一个正样本。
这种假设过于强烈,因为含有实体对的句子不一定含有实体对间的关系,现有以下四种方式来解决这个问题,

  • 在构造数据集引入先验知识加以限制

  • 利用指称与指称间的关系图模型对数据样例打分,过滤掉置信度低的句子

  • 利用Multi-Instance 对测试数据包打标签

  • 采用 attention 机制对不同置信度的句子赋予不同的权重

远程监督是一个用来增加数据的有效方法,但在中文领域中缺少类似于Freebase这种即包含实体又包含关系的大型知识库,因此具体工程效果如何,还需要进一步探索和验证。

Kernel Based Model

基于核函数的方法进行关系抽取是指利用核函数来计算两个关系之间的距离,它不同于其他的学习算法,不需要进行特征工程然后形成特征向量,而是直接利用字符串通过核函数计算相似度。与基于特征向量的方法相比,基于核函数的方法更加灵活,可以综合多方面的信息,且核函数具有很好的复合性,最终的关系距离可以综合多个不同信息来源的核函数符合而成。在NLP任务中常见的子序列核和解析树核。基于核函数的关系抽取详细内容参考后面给出的引用论文。

Sequential/String Kernel

序列核的思想是根据两个序列/字符串的公共子串来衡量两个字符串间的相似度,每个子串会根据子串间隔来设计不同的权重。

Tree Kernel

基于树思想将输入的实例构造成一个句法解析树,通过子树的匹配来计算实例间的额相似度,缺点是生成树的浅层解析工具的准确率无法保证。

Semi-Supervised Learning

半监督方法,是利用bootstraping思想,通过某种方式构造出一批样本种子,然后利用这些种子集发现新的样本,总结出应有的规则或模式,用于发现新的样本。下面对几种常见方法做个简要介绍。

DIPRE

整体思想是,首先建立一批种子实体对,比如(作者,书名);之后利用这些实体对获取同时含有这两个实体的doc或sentence当做标注样本;根据标注样本建立和调整pattern;利用pattern发现新的标注数据,并将数据加入到种子集;重复以上步骤直到满足某种设定的条件。
这个过程中,最繁琐的属于pattern的设计,建立pattern时可以考虑如下规则,以第一个实体开头、两个实体间间隔多少个词等。

Snowball

Snowball大致思想课DIPRE类似,但根据种子发现标注数据时计算方式不同,这里是将实体和关系的Tuple表示成向量,通过计算发现样本Tuple向量和种子Tuple向量间的相似度决定是否将样本加入到样本集,根据新的种子集的向量调整种子集中心向量。

KnowItAll

KnowItAll主要是根据Noun Phrase(NP)手工设计一些规则,根据规则进行提取。规则的形式可以如下:

  • NP1 "such as" NP2
  • NP1 "and other" NP2
  • NP1 "include" NP2
  • NP1 "is a" NP2
  • NP1 "is the " NP2 "of " NP3
  • "the" NP1 "of" NP2 "is" NP3

TextRunner

TextRunner 算法主要分为三个过程,
1)self-Supervised Learner 自监督学习过程,目标是构建样集合分类器。构建样本集的大致为:先通过一个自然语言分析器提取出样本中存在的三元组,指定一些规则对这些三元组标记为正或者负。标记完成后利用这些数据训练出一个分类器,对三元组打分,该阶段称为训练阶段。
2) Single-Pass Extractor: 抽取阶段,对待抽取句子进行浅层语义分析,标注其中的词性和名词短语。对名词短语,如果满足某种条件,则作为候选三元组,之后利用第一步的分类器进行分类,打分。过滤出可信的三元组,同时记录其出现的频次。
3)Redundancy-based Assesor , 基于冗余的评价器,对抽取的三元组进行评价,进一步提高效果

Unsupervised Learning

无监督方式主要是基于假设,拥有相同语义关系的实体对拥有相似的上下文信息,因此可以利用每个实体对上下文信息来代表该实体对的语义关系,然后对实体对的语义关系进行聚类。

综上所述,在工业届更多考虑的是准确性,因此采用的基于规则方式较多,随着样本标注数据的不断积累,逐渐引入DL方法,以提高抽取效率。

DataSet

关系抽取的数据集并不多,在各种paper中常见的数据集为ACE 2005(Automatic Content Extraction)和SemEval 2010 Task8,而中文领域相关数据集暂时还未发现。

参考文献

  1. A survey on Relation Extraction Silde
  2. A Survey of Deep Learning Methods for Relation Extraction
  3. Relation Extraction Perspective from Convolutional Neural Network
  4. A Survey On Relation Extraction
  5. 基于核函数的命名实体关系抽取技术的研究
  6. 基于深度学习的关系抽取技术进展
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345

推荐阅读更多精彩内容