精华内容
下载资源
问答
  • 随着大数据时代的到来,海量数据不断涌现,从中寻找有用信息,抽取对应知识的需求变得越来越强烈。...信息抽取作为构建知识图谱的基础技术,实现了从大规模数据中获取结构化的命名实体及其属性或关联信息。
  • 基于深度学习的威胁情报信息抽取研究.pdf
  • 如何从非结构化的PDF文档中抽取结构化数据是知识图谱领域所面临的的一大挑战。此处利用Adobe公司开发的Acrobat DC SDK对PDF进行格式转换,从半结构化的中间文件进行信息转移。引用现有的开源PDF解析方法,Acrobat...
  • 基于天正CAD的三维建筑构件信息抽取方法.pdf
  • cocoNLP - 中文信息抽取工具包
  • 如果您对信息抽取论文研究感兴趣,可以查看我的博客。 抽象 该代码以管道式的方式处理实体及关系抽取任务,首先使用一个多标签分类模型判断句子的关系种类,然后将句子和可能的关系类型输入序列标注模型中,序列标注...
  • 这是VLDB 2018的best paper,强烈推荐,在快速训练集方面非常有用!
  • Gate信息抽取文档

    2018-09-28 08:56:14
    该指导手册包含对信息抽取对介绍,ANNIE的使用,以及GATE的多种组件。
  • 提出一种启发式的信息抽取算法,并利用该算法建立一个信息抽取系统.该系统基于文本分块,利用文本的语义特征和结构特征,抽取具有特征的状态,在此基础上,利用反向动态规划和正向A*算法,抽取剩余的无特征状态....
  • 机器学习代码资源,欢迎下载呦。
  • 信息抽取

    千次阅读 2019-02-22 15:13:23
    信息抽取技术主要用于抽取: 抽取实体:比如人,地名,时间这些一般的常见的实体,再比如在一些垂直领域,需要提取医疗领域,金融领域,教育领域等方面的实体。 抽取关系:提取的是实体与实体间的关系。 信息...

    信息抽取技术主要用于抽取:

    • 抽取实体:比如人,地名,时间这些一般的常见的实体,再比如在一些垂直领域,需要提取医疗领域,金融领域,教育领域等方面的实体。

    • 抽取关系:提取的是实体与实体间的关系。

    信息抽取应用场景:
    在这里插入图片描述比如我们有以上一段话,需要进行实体抽取,以及实体间的关系抽取,接下来需要把这些信息整合成知识图谱的形式。

    更多应用:

    • 知识库的搭建
    • Google Scholar
    • 用户库: Rapleaf, Spoke…
    • 购物引擎,产品搜索
    • 专利分析
    • 证券分析
    • 问答系统

    关键:把非结构化的数据转为化结构化的数据

    实体抽取的开源工具:Stanford Parser, NLTK, Spacy, foolNLTK, HanNLP

    命名实体识别方法:

    • 利用规则(正则表达式)
    • 利用分类模型(不考虑时序)
      生成模型:朴素贝叶斯…
      判别模型:逻辑回归,SVM…
    • 时序模型
      HMM,CRFs, RNN/LSTM/GRU…

    开源知识库(通过信息抽取技术从Web文本中整合成的结构化的信息库):

    • WordNet
    • FreeBase
    • Yago
    • Dpedia
    • KnowledgeVault

    关系抽取的方法:

    • 基于规则
    • 监督学习
    • 半监督&无监督学习
      Bootstrap
      Distant Supervision
      无监督学习

    下面重点讲讲Bootstrap方法:
    在这里插入图片描述以上图为例,我们已知一些organization和location的关系组(seed tuples),接下来如何应用这些已知数据提取更多的organization和location关系对呢?

    • 首先,我们在文本中搜寻这些seed tuples
    • 这些seed tuples所在的文本结构就是两者间的关系表达,比如
      “Microsoft is located in RedMond”, “IBM is situated in Armonk”,由些,我们提取出"is located in"和"is situated in"作为pattern
    • 接着,我们又可以利用这些pattern去提取新的organization和location
    展开全文
  • 快速高效地获取网页主题信息的需求使得Web信息抽取技术成为信息技术领域的研究热点。现有的Web信息抽取技术大致可以归纳为基于统计理论的、基于视觉特征的、基于DOM树结构的和基于模板的几类。由于网页文本本身具有...
  • 中文信息抽取关键技术研究与实现-中文信息抽取的研究主要是通过对一些英语信息抽取方法和技术的借鉴来实现, 希望通过移植这些方法和技术,达到中文信息抽取的目的。这种研究思路取得了不错的成果,但汉语本身的特点...
  • 对只能获得部分标记的训练文本,将主动学习方法应用到文本信息抽取中,提出了一种基于主动学习隐马尔可夫模型的文本信息抽取方法.在该方法中,通过主动学习,仅将对隐马尔可夫模型的训练最有价值的训练文本挑选出来...
  • Snips NLU:Python自然语言理解包:句子解析/结构信息抽取
  • 中文信息抽取原理与应用 程显毅编著 北京:科学出版社 (扫描版,带详细目录)
  • 这一点在知识图谱、信息抽取、文本摘要这些任务中格外明显。不同的任务的差异在于目标的转化形式不一样,因而不同的任务难度、处理方式存在差异。 这个系列文章【文本信息抽取与结构化】,在自然语言处理中是非常...
  • 一个面向信息抽取的中英文平行语料库,
  • 文本信息抽取平台的设计与实现——基于机器学习,
  • 基于HMM_BP混合模型的文本信息抽取研究
  • 在大数据环境下进行模糊信息挖掘抽取中受到数据之间的小扰动类间干扰的影响,导致信息抽取的特征聚类性不好。为此提出一种基于改进混沌分区算法的模糊信息抽取方法,对高维数据信息流进行分布式结构重组,以Lorenz...
  • 介绍了近年来的信息抽取技术的发展, 着重介绍了目前在生物医学领域内的各类信息抽取系统, 并展望了今后的发展方向。
  • 动态网页的信息抽取W曲信息抽取将W|eb中的数据抽取出来并表示为结构化的形式。动态网页是通过程序动态生成 的页面。据统计,目前Web上的页面主要是以动态网页的形式存在。因此,研究动态网页的信息抽 取方法,具有较...
  • 面对Web信息的迅猛增长,信息抽取技术非常适合于从大量的文档中抽取需要的事实数据。通过文档对象模型(DOM)解析以及检索、抽取、映射等规则的定义,设计并实现了一种具有规则归纳能力的信息抽取系统,用于Web信息...
  • 基于深度学习的Web信息抽取模型研究与应用.pdf
  • 基于自动化信息抽取技术的垂直网络爬虫设计与实现,张建宇,王洪波, 随着垂直搜索引擎搜索范围的扩大,如何自动化高效地完成数据爬取任务成了一个重要的问题。目前大多数的网络爬虫使用人工定义规��
  • cocoNLP - 中文信息抽取工具包
  • 博士论文一篇,短文本信息抽取若干技术研究_郑立洲.caj
  • 从描述事件信息的文本中识别并抽取出事件信息并以结构化的形式呈现出来,包括发生的时间、地点、参与角色以及与之相关的动作或者状态的改变。 事件检测和追踪 事件检测与追踪旨在将文本新闻流按照其报道的事件进行...

    事件抽取(Event Extraction)

    一、事件抽取分两大类

    • 事件识别和抽取

      从描述事件信息的文本中识别并抽取出事件信息并以结构化的形式呈现出来,包括发生的时间、地点、参与角色以及与之相关的动作或者状态的改变。

    • 事件检测和追踪
      事件检测与追踪旨在将文本新闻流按照其报道的事件进行组织,为传统媒体多种来源的新闻监控提供核心技术,以便让用户了解新闻及其发展。具体而言,事件发现与跟踪包括三个主要任务:分割,发现和跟踪,将新闻文本分解为事件, 发现新的(不可预见的)事件,并跟踪以前报道事件的发展。

      ​ 事件发现任务又可细分为历史事件发现和在线事件发现两种形式,前者目标是从按时间排序的新闻文档中发现以前没有识别的事件,后者则是从实时新闻流中实时发现新的事件。

    事件抽取任务分成两种,即元事件(meta event)抽取和主题事件(topic event)抽取。

    1. 元事件由Filatova[2004]等人提出,表示一个动作的发生或状态的变化,由表示动作的动词或名词来驱动,包括参与该动作行为的主要成分(如时间、地点、 人物等)。目前学界和工业界谈论事件抽取,大多还是指元事件抽取,ACE是这类事件抽取的代表
    2. 主题事件包括一类核心事件或活动以及所有与之直接相关的事件和活动,可以由多个元事件片段组成,与元事件抽取最大的不同在于,主题事件中所包含的多个元事件信息通常都分散于一个或多个文档当中,往往需要确定描述同一主题事件的文档集合,并将这些分散的缘事件进行组合。

    二、事件识别与抽取的相关概念

    • 事件描述(Event Mention)
      描述事件的词组/句子/句群,包含一个 trigger 以及任意数量的 arguments
    • 事件触发(Event Trigger)
      事件描述中最能代表事件发生的词汇,决定事件类别的重要特征,一般是动词或者名词
    • 事件要素(Event Argument, 又称事件元素)
      事件的重要信息,或者说是实体描述(entity mention),主要由实体、属性值等表达完整语义的细粒度单位组成
    • 要素角色(Argument Role)
      事件元素在事件中扮演的角色,事件元素与事件的语义关系,可以理解为 slot
    • 事件类型(Event Type)

    三、事件定义

    事件是发生在某个特定的时间点或时间段、某个特定的地域范围内,由一个或者多个角色参与的一个或者多个动作组成的事情或者状态改变。

    事件由事件触发词( Trigger) 和描述事件结构的元素 (Argument, 又名要素)构成。

    (1)事件触发词标识着事件的发生。

    (2)事件论元为事件主体(Subject)、客体(Object)、时间(Time)、地点(Location)等,是表达事件重要信息的载体。

    事件属性包括事件极性(Polarity)、时态(Tense),是衡量事件是否真实发生的重要依据。 通过极性,事件分为肯定、否定、可能事件。事件时态分为过去发生的事件、现在正 在发生的事件、将要发生的事件以及其他无法确定时态的事件。

    四、事件信息抽取

    事件的信息抽取有两个相关子任务:

    (1)事件检测(event detection)。可以用序列元素分类的方式识别触发词并判断事件类型,或者直接使用文本分类的方式判断mention对应的事件类型。

    (2)事件元素抽取(argument extraction)。用序列元素分类,或者三元组抽取的方式,吧文本中识别出事件元素,并判断元素所扮演的角色。

    模型也分为两种:流水线模型(串行), 联合模型(并行)[1]

    在这里插入图片描述
    图片来自引用[1], 知乎作者:李鹏宇

    五、事件抽取模型的评价

    (1)查全率(recall)、查准率(precision)、F1-score

    (2)基于丢失率 (记为 L) 误报率 (记为 M) 的错误识别代价 (记为 C) 法
    在这里插入图片描述
    Cmiss为一 次 丢 失 的 代 价, Cfa为一次误报的代价,Ltar为系统作出肯定判断的先验概率, 通常根据具体应用设定为常值[5]

    六、ACE评测任务

    ACE对参与评测的事件进行了定义:事件由事件触发词(Trigger)和描述事件结构的要素(argument)组成。

    定义了事件触发词、事件类型、 事件要素、 要素角色来表征事件

    事件抽取任务

    1. Event Identification (Trigger Words)
    2. Event Type Identification
    3. Argument Identification
    4. Argument Role Identification

    ACE-2015定义了8种事件类别(life, movement,conflict,contact等)和33种子事件类别(born, marry,injury, transport,attack等),每种事件类别对应唯一的事件模板,如子事件born,事件模版(template)包括person,time-within,place等。这样,事件抽取就变成了一个事件识别和事件元素识别的任务。

    七、事件抽取讲解视频

    1. 陈玉博的详解事件抽取与事件图谱构建, csdn视频分享https://edu.csdn.net/course/play/25560/307897
    2. 刘康-开放域环境下文本事件抽取,B站视频:https://www.bilibili.com/video/BV1FW411D7A4?from=search&seid=2597275688637069049

    八、事件抽取比赛

    1. CCKS 2019 面向金融领域的事件主体抽取

    比赛官网:https://www.biendata.xyz/competition/ccks_2019_4/

    baseline 代码:https://github.com/lxj0276/ee-2019-baseline

    1. 百度 2020语言与智能技术竞赛:事件抽取任务

      比赛官网:https://aistudio.baidu.com/aistudio/competition/detail/32

      比赛数据集(可获取):https://aistudio.baidu.com/aistudio/datasetdetail/27641

      苏神的bert4keras框架的该比赛事件抽取的baseline代码:https://github.com/bojone/lic2020_baselines

    2. 2020年科大讯飞的事件抽取挑战赛

      比赛官网:http://challenge.xfyun.cn/topic/info?type=hotspot

      知乎分享baseline代码2020 iFLYTEK A.I.开发者大赛-事件抽取-baseline - 知乎 (zhihu.com)

      第一名的代码:https://github.com/WuHuRestaurant/xf_event_extraction2020Top1

      第一名成绩:初赛 0.73859

    3. 2020 CCKS 面向金融领域的篇章级事件主体与要素抽取(一)事件主体抽取

      比赛官网:https://biendata.com/competition/ccks_2020_4_1/leaderboard/

      baseline分享及代码:CCKS 2020:面向金融领域的篇章级事件主体与要素抽取-baseline - 知乎 (zhihu.com)

      第一名方案分享CCKS 2020竞赛三冠团队技术分享第二波:事件主体抽取赛题方案|向量|预训练|样本_网易订阅 (163.com)

    九、事件抽取应用

    实体抽取与关系抽取可以构建实体知识图谱,目前大部分知识图谱都是这样的。事件抽取主要是用来构建事件图谱,用于相应业务需求分析应用。有了事件,事件之间的关系,再以一种组织体系进行表示,就可以构建起一个事件知识库。

    事件图谱,事件的知识图谱是应用中不可缺少的一类图谱,其中的每一个节点是一个事件,事件之间通过事件的关系(比如时序关系、因果关系等)相关联,这就叫做事件图谱。

    事件抽取目前在金融领域应用较多。例如CCKS 2018-2020年的金融领域事件抽取比赛。

    十、Reference

    [1] 啥是事件抽取(Event Extraction)? - 知乎

    [2] 事件、事件抽取与事理图谱_lhy2014的博客-CSDN博客

    [3] 最新事件抽取技术进展 - 知乎 (zhihu.com)

    [4] 中科院赵军:开放域事件抽取 | CCF-GAIR 2018 - 知乎 (zhihu.com)

    [5] 事件抽取综述_CLOUD-CSDN博客_事件抽取

    展开全文
  • 信息抽取——关系抽取

    千次阅读 2020-03-14 20:53:56
    向AI转型的程序员都关注了这个号????????????机器学习AI算法工程 公众号:datayx简介信息抽取(information extrac...


    向AI转型的程序员都关注了这个号????????????

    机器学习AI算法工程   公众号:datayx

    简介信息抽取(information extraction),即从自然语言文本中,抽取出特定的事件或事实信息,帮助我们将海量内容自动分类、提取和重构。这些信息通常包括实体(entity)、关系(relation)、事件(event)。例如从新闻中抽取时间、地点、关键人物,或者从技术文档中抽取产品名称、开发时间、性能指标等。

    显然,信息抽取任务与命名实体识别任务类似,但相对来说更为复杂。有时,信息抽取也被称为事件抽取(event extraction)。

    与自动摘要相比,信息抽取更有目的性,并能将找到的信息以一定的框架展示。自动摘要输出的则是完整的自然语言句子,需要考虑语言的连贯和语法,甚至是逻辑。有时信息抽取也被用来完成自动摘要。

    由于能从自然语言中抽取出信息框架和用户感兴趣的事实信息,无论是在知识图谱、信息检索、问答系统还是在情感分析、文本挖掘中,信息抽取都有广泛应用。

    信息抽取主要包括三个子任务:

    实体抽取与链指:也就是命名实体识别

    关系抽取:通常我们说的三元组(triple)抽取,主要用于抽取实体间的关系

    事件抽取:相当于一种多元关系的抽取

    由于工作上的原因,先对关系抽取进行总结,实体链指部分之后有时间再补上吧。

    关于关系抽取

    关系抽取通常再实体抽取与实体链指之后。在识别出句子中的关键实体后,还需要抽取两个实体或多个实体之间的语义关系。语义关系通常用于连接两个实体,并与实体一起表达文本的主要含义。常见的关系抽取结果可以用SPO结构的三元组来表示,即 (Subject, Predication, Object),如

    中国的首都是北京 ==> (中国, 首都, 北京)

    关系抽取的分类:

    是否有确定的关系集合:限定关系抽取:事先确定好所有需要抽取的关系集合,则可讲关系抽取看作是一中关系判断问题,或者说是分类问题

    开放式关系抽取:需要抽取的关系集合是不确定的,另一方面抽取预料的所属领域也可能是不确定的

    关系抽取可以用有监督、半监督甚至是无监督的方法来做。有监督学习:监督学习的关系集合通常是确定的,我们仅需要将其当作一个简单的分类问题来处理即可。高质量监督数据下的监督学习模型的准确率会很高,但缺点就是需要大量的人力成本和时间成本来对文本数据进行标注,且其难以扩展新的关系类别,模型较为脆弱,泛化能力有限

    半监督学习利用少量的标注信息作为种子模版,从非结构化数据中抽取大量的新的实例来构成新的训练数据。主要方法包括 Bootstraping 以及远程监督学习的方法

    无监督学习一般利用语料中存在的大量冗余信息做聚类,在聚类结果的基础上给定关系,但由于聚类方法本身就存在难以描述关系和低频实例召回率低的问题,因此无监督学习一般难以得很好的抽取效果。

    对于有监督的关系抽取任务,通常也将其分为两大类Pipline:将实体抽取与关系抽取分为两个独立的过程,关系抽取依赖实体抽取的结果,容易造成误差累积

    Joint Model:实体抽取与关系抽取同时进行,通常用模型参数共享的方法来实现

    随着深度学习以及词向量的发展,近年来大多的关系抽取模型都采用词向量作为关系抽取的主要特征,且均取得了非常好的效果。限于篇幅,本文仅对有监督学习下的 Pipline 经典模型进行介绍

    Pipline Model#

    Model 1: Relation Classification via Convolutional Deep Neural Network#

    原文链接:https://www.aclweb.org/anthology/C14-1220/

    在深度学习兴起之前,关系抽取的传统方法依赖于特征工程,而这些特征通常由预先准备的NLP系统得到,这容易在构造特征的过程中造成误差累积,阻碍系统性能。

    该论文属于早期使用深度卷积网络模型解决关系抽取任务的经典论文。该论文将关系抽取问题定义为:给定一个句子 SS 和名词对 e1e1和 e2e2,判断 e1e1 和 e2e2 在句子中的关系,即将关系抽取问题等效为一个关系分类问题。与传统的方法相比,该模型只需要将整个输入句子以及简单的词信息作为输入,而不需要认为构造特征,就能得到非常好的效果。模型的主要架构如下所示:  

    模型的输入主要包括两个部分,即词汇级别特征以及句子级别特征:

    lexical level features:词汇级别特征包括实体对e1e1 和 e2e2 的词嵌入向量,e1e1 和 e2e2 的左右两边词的词嵌入向量,以及一个 WordNet 上位词向量。WordNet 上位词特征指的是 e1e1 和 e2e2 同属于哪一个上位名次,如“狗”和“猫”的上位词可以是“动物”或者“宠物”,具体需要参考的 WordNet 词典是怎样构建的。直接将上述的5个向量直接拼接构成词汇级别的特征向量 ll

    sentence level feature:句子级别特征采用最大池化的卷积神经网络作为主要特征抽取模型,输入特征包括词向量信息以及位置向量信息。Word Features:为了能够抽取到每个词完整的上下文信息,在句子首位额外添加了Padding字符,Word Embedding 层是预训练得到的,并且参与后续的训练任务

    Position Features:额外增加了时序特征来弥补卷积网络对时序特征抽取能力不足的缺陷。论文中的做法是为每个词拼接两个固定维度的位置向量,分别表示词距离两个关键实体的相对位置信息。如“中国 的 首都 是 北京”,“的”与“中国”的距离大小为 1,与“北京”的距离大小为 -3,再将 1 和 -3 在 Position Embedding 层中查表得到,Position Embedding 层是随机初始化的,并且参与到模型训练当中

    将上述的 Word Features 与 Position Features 拼接,输入到卷积网络中,再用Max Pooling 层把每个卷积核的输出进行池化操作。再将池化结果通过一个全连接层,激活函数为 tanhtanh,将其看作一个更高层次的特征映射,得到最终的句子级别的特征向量 gg

    将词汇级别特征与句子级别特征直接拼接,即f=[l;g]f=[l;g],最终将其送入分类器进行分类。

    小结:该模型将关系抽取任务利用神经网络进行建模,利用无监督的词向量以及位置向量作为模型的主要输入特征,一定程度上避免了传统方法中的误差累积。但仍然有 lexical level feature 这个人工构造的特征,且 CNN 中的卷积核大小是固定的,抽取到的特征十分单一

    Model 2: Relation Extraction: Perspective from Convolutional Neural Networks

    原文链接:https://www.aclweb.org/anthology/W15-1506/

    该论文首先提出关系分类和关系抽取两个主要任务:

    关系分类:两个实体之间存在多个关系类型,并且这多个可能关系中有一个 non-relation 类别,这多个类别的样本数量基本是平衡的

    关系抽取:关系抽取与关系分类的区别在于,关系抽取中的 non-relation 类别的样本数目可能远远超过其他类别的样本数目,这样的任务更有挑战性,但在实际中有更为广泛的应用

    论文主要关注的是关系抽取任务。与 Model 1 类似,同样是利用卷积神经网络作为主要的特征抽取模型,模型细节如下所示:

    Look-up tables:包括 word embedding 层和 position embedding 层两个部分。word embedding 为预训练得到,而 position embedding 则随机初始化,两者均参与训练。对于输入句子长度,将其限定在两个实体可能的最大长度的范围内,假设句子长度为 nn,用 i−i1i−i1 和 i−i2i−i2 表示地i个词距离第一个实体和第二个实体的距离,则 position embedding 层的维度为(2n−1)×md(2n−1)×md,其中mdmd 为位置向量的维度。假设句子中第 ii 个词的词向量为 eiei ,位置向量为 di1di1 和 di2di2,则该词的词表征为 xi=[ei;di1;di2]xi=[ei;di1;di2]

    Convolutional layer:该模型的卷积层借鉴了 TextCNN 的模型结构,通过设计多个不同宽度的卷积核来抽取不同粒度大小的特征来提升模型性能。

    Pooling layer:最大池化操作,用于抽取最重要的特征

    Classifier:全连接层,激活函数为softmax,还使用了 dropout 和 l2 正则化策略

    小结:该论文的模型输入完全没有人工特征,且使用多宽度大小的卷积核进行特征抽取,相对于 Zeng 的效果来说仅提升了 0.1%0.1%,个人认为提升的主要关键点在于多粒度大小的卷积核上,而 lexical feature 在这种简单的深度学习模型上还是能够起到一定的效果的,这在之后的工作中也得到了证实

    Model 3: Classifying Relations by Ranking with Convolutional Neural Networks

    原文链接:https://www.aclweb.org/anthology/P15-1061/

    这篇论文同样是在 Model 1 基础上的改进,模型的基本架构与之前基本一致,最大的改变损失函数。模型结构如上图所示,主要有以下几个部分:

    模型仅将整个句子作为输入,不考虑 lexical level feature。输入词表征包括 Word Embedding 和 Position Embedding 两个部分,获取方式与之前一样

    卷积层为窗口为 3 的固定大小的卷积核,且也对输出进行了最大池化操作

    对于得到的编码表征,输入一个全连接层,得到每个类别的非归一化分数,但不再对输出做 softmax 操作,而是直接对正类别和负类别进行采样,从而计算损失函数,损失函数(pairwise ranking loss function)如下所示:

    这个损失函数主要有以下几个特点:m+m+ 和 m−m− 为 margin 参数,γγ 为缩放因子

    sθ(x)sθ(x) 为模型输出的非归一化分数,y+y+ 为正确标签,c−c− 为错误标签中分数大于 m−m− 的那些标签,作者认为这些标签具有更大的信息量。

    显然,损失函数 L 将随着 sθ(x)sθ(x)y+ 的增大而减小,随着 sθ(x)sθ(x)c− 的减小而减小

    此外,模型还考虑了两个实体不属于任何类别,将其看作类别 "Other",在训练的过程中,不考虑这个类别的分类,或者说在全连接层为该类别分配了一个不可训练的零初始化的神经元,对于该类别为正确标签的训练样本,损失函数的第一项为0,只保留第二项。在预测的时候,只当某个样本所有类别分数为负数时,才将其分类为 "Other"

    模型在训练过程中还额外添加了 L2 正则化项

    小结:该模型的主要创新点在于其 Ranking loss 上,相比于 Softmax 函数,其能够使得模型不仅仅考虑到正类别分数要尽量高,还要关注易分类错误的类别分数尽量低。其缺点仍然是模型结构上的缺陷。   

    Model 4: Bidirectional Long Short-Term Memory Networks for Relation Classification

    原文链接:https://www.aclweb.org/anthology/Y15-1009/

    在这篇论文之前有过利用简单的 RNN 和 BiRNN 作为模型编码模块的处理关系抽取任务的,但是效果较 CNN 来说差的就不是一点两点了,这里就不提了。该论文用经典的 BiLSTM 作为模型主要模块,此外,重新考虑了 lexical feature,实验证明 lexical feature 对模型性能确实有十分明显的提升效果。

    模型的主要架构是 BiLSTM,这个结构大家再熟悉不过了,论文也没有贴模型整体图,这里我也偷下懒...接下来分段阐述一下模型的主要工作。

    特征初始化:模型使用到的特征除了词和位置特征以外,还利用NLP工具获得了词性(POS)、实体(NER)、依存句法(dependency parse)以及上位(hypernyms)特征词、词性(POS)、实体(NER)以及上位(hypernyms)特征均为 lexical feature

    位置向量和依存句法特征的构造方式如下所示位置向量:位置向量(图中为PF)的构造方法与 Zeng CNN 中一致

    相对依存特征(Relative dependency features)依赖 Stanford dependency parser 依存句法树生成,做如下定义Relative root feature:根节点定义为 rrrr,根节点的子节点定义为 rcrc,其他节点定义为 roro

    Relative e1e1 feature:实体 e1e1 定义为 ee1e,实体 e1e1 的父节点定义为 ee1p,实体 e1e1 的子节点定义为 ee1c,其他节点定义为 ee1o

    Relative e2e2 feature:相对实体 e2e2 做如 e1e1 类似的定义

    Dep feature:为每个词与其父节点的依存关系

    将两个向量拼接,然后通过多层的全连接网络将其进行整合

    最后利用前连接层 + softmax 进行分类

    小结:论文最后测试了不加人工特征,只用 word embedding,结果下降了1.51.5个点,说明人工特征还是有一定效果的。此外,论文还测试了移除某个特征对模型的影响,发现位置特征和 NER 特征的移除对模型的影响非常小,这也是十分好理解的,这里就不多说了。

    Model 5: Attention-Based Bidirectional Long Short-Term Memory Networks for Relation Classification

    原文链接:https://www.aclweb.org/anthology/P16-2034/

    该模型利用了典型的注意力机制对 BiLSTM 的输出进行了注意力加权求和,在仅利用了词向量的情况下效果接近加入人工特征的模型,可见注意力机制的作用也是十分强大的。

    模型的主要架构如上图所示。其实模型的主要架构还是比较常规的,下面简单介绍一下:

    Input Layer: 即输入的句子,每个词用 one-hot 向量表示

    Embedding Layer: 预训练的词向量层,为 one-hot 向量提供查询词表

    LSTM Layer: 利用 BiLSTM 对输入句子进行编码,得到每个时刻的输出,即对应每个词的编码结果

    Attention Layer: 典型的 Soft-Attention 层。直接随机初始化一个参数向量作为 Query,用于与句子的编码结果进行一维匹配计算注意力分数,再对句子的各个词的编码结果进行加权求和,具体表达式如下所示:

    其中,H为 BiLSTM 的所有时刻的输出,ww 为随机初始化的参数向量,同时也参与到模型训练,αα 为注意力分数的计算结果,rr 为对 HH 注意力分数加权的结果,最后还对注意力加权结果通过一个 tanhtanh 激活函数,即 h∗=tanh(r)h∗=tanh(r) 得到注意力层的输出

    Output Layer: 即一层全连接层分类器,损失函数为交叉熵,同时加入了 L2 正则化项

    小结:从论文的结果来看,不进行特征工程,仅仅将整个句子作为模型输入,并加入注意力机制,模型效果得到了非常大的提高,一方面说明必要的特征工程还是有效的,另一方面表明注意力机制也起到了十分明显的作用

    Model 6: Relation Classification via Multi-Level Attention CNNs

    原文链接:https://www.aclweb.org/anthology/P16-1123/

    这篇文章公布其在 SemEval-2010 Task 8 上的分数达到了 88.0,但是没有开源,且复现结果也不太好,这个模型的效果存在争议,或许是论文中个别细节描述有误,但是其思路还是非常不错的,先给概括一下整个论文的工作:

    模型主要依赖一种多层注意力机制第一层的注意力机制在输入层,用于计算所有词对目标实体的注意力大小

    第二层的注意力机制在CNN的输出部分,用于计算对于目标关系的注意力大小

    提出了一种新的损失函数,证明其效果要优于传统的损失函数

    其优秀的模型表现依赖于非常丰富的先验知识

    模型的主要结构如上图所示,下面分别阐述下模型的各个模块:

    小结:可以看到这篇论文的两次 Attention 以及 损失函数的设计都是十分巧妙的,且论文中提到效果非常好,许多技巧还是可以借鉴的。

    Model 7: Bidirectional Recurrent Convolutional Neural Network for Relation Classification

    原文链接:https://www.aclweb.org/anthology/P16-1072/

    论文的主要思想是对两个实体间的词法句法的最短依赖路径 SDP (shortest dependency path)进行建模,这也是常见的一种关系抽取任务的建模方法,并与之前的建模方式存在一些区别,下面相对详细地阐述一下。

    由于受到卷积神经网络和循环神经网络特性的限制,之前的工作将句法依赖关系看作是词或者某些句法特征,如词性标签 (POS)。该论文的第一个贡献就是提出了一种 RCNN 的网络结构:

    利用两通道的 LSTM 对 SDP 进行全局信息编码

    利用 CNN 捕获每个依赖关系连接的两个单词的局部特征

    此外,作者还指出,两个实体之间的依赖关系是有向的,如上图展示的因果关系示例图,若存在 KK 个关系,则需要将其看作 (2K+1)(2K+1) 种分类问题,其中 11 为 OtherOther 类。因此,作者提出其第二个贡献就在于使用双向的循环卷积神经网络 (BRCNN) 来同时学习双向的表征,可以将双向依赖问题建模为对称的依赖问题,从而将其简化为 (K+1)(K+1) 的分类问题

    模型细节如上图所示,下面简单讲解一下整个模型结构:

    Input:模型的输入为两个实体间的 SDP。论文中提到,对于句子中的两个实体,存在某种关系R,则其词法句法的最短依赖路径 SDP 将阐明这个关系 R 的大多数信息,其主要有如下两个原因:如果实体 e1e1 和 e2e2 是同一谓词的论元(与谓词搭配的名词),则它们之间的最短路径将通过该谓词;

    如果实体 e1e1 和 e2e2 属于不同的谓词-论元结构,但共享了同一个论元,则最短路径通过这个共享论元

    Lookup Table:包括词向量和依存关系向量,词向量是预先训练得到的,依存关系向量直接随机初始化即可,此外,还可以在词向量中加入 NER、POS 以及 WordNet 等特征

    BRCNN:BRCNN 为模型的主要架构,包括三个部分 Two-channel BiLSTM、CNN、Classifier

    小结:将词法句法的 SDP 作为输入特征来实现关系抽取也是常见的一种建模方法,且效果也非常不错。这篇论文通过对文本以及依赖关系分别建模,利用 LSTM 和 CNN 进行不同层次的特征编码,并分两个方向进行信息融合,确实是一大亮点。如果词向量只用 Word Embeddings,分数可以达到 85.4,如果加上 NER、POS 以及 WordNet 等特征可以达到 86.3。  

      Pipline Model 性能对比

    将关系抽取看作单独任务的模型总结就做到这里了,或许之后看见更优秀的论文还会进行一些更新,这里将每个模型在 SemEval-2010 Task-8 上的分数都记载一下:

    总的来说,人工特征、句法特征、注意力机制、特殊的损失函数都是关系抽取模型性能提升的关键点,其余的就需要在模型架构上进行合理的设计了,下一篇准备介绍实体与关系联合抽取模型,争取早点写出来...

    参考链接

    http://www.shuang0420.com/2018/09/15/知识抽取-实体及关系抽取/

    https://zhuanlan.zhihu.com/p/91762831

    http://shomy.top/2018/02/28/relation-extraction/

    阅读过本文的人还看了以下文章:

    【全套视频课】最全的目标检测算法系列讲解,通俗易懂!

    《美团机器学习实践》_美团算法团队.pdf

    《深度学习入门:基于Python的理论与实现》高清中文PDF+源码

    python就业班学习视频,从入门到实战项目

    2019最新《PyTorch自然语言处理》英、中文版PDF+源码

    《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码

    《深度学习之pytorch》pdf+附书源码

    PyTorch深度学习快速实战入门《pytorch-handbook》

    【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》

    《Python数据分析与挖掘实战》PDF+完整源码

    汽车行业完整知识图谱项目实战视频(全23课)

    李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材

    笔记、代码清晰易懂!李航《统计学习方法》最新资源全套!

    《神经网络与深度学习》最新2018版中英PDF+源码

    将机器学习模型部署为REST API

    FashionAI服装属性标签图像识别Top1-5方案分享

    重要开源!CNN-RNN-CTC 实现手写汉字识别

    yolo3 检测出图像中的不规则汉字

    同样是机器学习算法工程师,你的面试为什么过不了?

    海征信大数据算法:风险概率预测

    【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类

    VGG16迁移学习,实现医学图像识别分类工程项目

    特征工程(一)

    特征工程(二) :文本数据的展开、过滤和分块

    特征工程(三):特征缩放,从词袋到 TF-IDF

    特征工程(四): 类别特征

    特征工程(五): PCA 降维

    特征工程(六): 非线性特征提取和模型堆叠

    特征工程(七):图像特征提取和深度学习

    如何利用全新的决策树集成级联结构gcForest做特征工程并打分?

    Machine Learning Yearning 中文翻译稿

    蚂蚁金服2018秋招-算法工程师(共四面)通过

    全球AI挑战-场景分类的比赛源码(多模型融合)

    斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)

    python+flask搭建CNN在线识别手写中文网站

    中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程

    不断更新资源

    深度学习、机器学习、数据分析、python

     搜索公众号添加: datayx  

    长按图片,识别二维码,点关注

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 216,004
精华内容 86,401
关键字:

信息抽取

友情链接: 中央对齐PWM.zip