导读:本次分享的主题为基于机器学习阅读理解(MRC)的信息抽取方法。由香侬科技发表在ACL2019,论文提出用阅读理解的方法对信息抽取这个传统问题进行建模,取得了比较好的效果。
▌Part1 香侬科技简介
香侬科技的主要研究方向为自然语言处理和深度学习,秉承“让机器读懂纷繁的大千世界”为使命,致力于用人工智能技术消除信息不对称的壁垒,让所有人都能平等获取信息。目前主要业务包括信息抽取、智能文档解析、智能数据聚类分析、文本对比审核等。
▌Part2 自然语言处理(NLP)
1. 自然语言处理(NLP)是什么?
自然语言处理是研究能实现人与计算机之间,用自然语言进行有效通信的各种理论和方法。(通俗讲就是计算机要理解人说的话,计算机生成的话,人也能够理解)
2. 为什么自然语言处理很难?
自然语言处理的难点在于歧义性。如下面的例子:
同样的表达方式,有不同的含义:
“喜欢一个人”:like someone 或者 like to be alone。
虽然表达方式不同,但表达的含义相同:
“我刚差点摔着”、“我刚差点没摔着”
“苹果多少钱一斤”、“苹果一斤多少钱”、“一斤苹果多少钱”
3. 常见的NLP任务
常见的NLP任务可以分为简单、中等、困难,分别包含的具体任务如下:
简单任务:分词、词性标注、垃圾邮件分类、句法依存分析
中等任务:词义消歧、情感分类、命名实体识别、信息检索
困难任务:关系&事件抽取、翻译、自动摘要、问答、对话
今天主要介绍命名实体识别、关系&事件抽取这两类信息抽取任务。
4. 深度学习与NLP结合的范式:
范式1:
第一种深度学习与 NLP 的结合的范式(Bert出现之前),一般包含以下几步:
-> Embed:该阶段把离散id变成稠密向量,可能对以下几个维度特征进行embedding,包括word(单词)、char(字符)、pos tag(词性)、position(位 置)。
-> Encode:该阶段使得稠密向量获得上下文信息, 一般方案包括CNN/RNN/Transformer。
-> Attend:该阶段可以使更远的信息可以互相注意,一般分为加性(sum)、乘性(product)的注意力机制。
-> Predict:NLP 任务一般是预测离散的变量,Classification分类、SeqLabeling序列标注、翻译/摘要可以model成seq2seq的任务。
范式2:
最近有些Pre-train的模型出现,打破的了之前的方案,把embed到Attend,基本上都用的类似的方法,通过Pre-train得到一个带着上下文信息的向量。算法包括elmo、gpt、bert、gpt2、xlnet、ernie、roberta等,在大数据量上进行预训练。
第二种深度学习与 NLP 的结合的范式,一般包含以下几步:
-> Pre-train:刚开始是用大规模的语料进行预训练。
-> Fine_tune:针对特定任务进行微调。
-> Predict:进行Predict。
▌Part3 信息抽取
1. 信息抽取简介
信息抽取是将非结构化的文本信息转换为结构化的信息,如上图所示,左边为非结构化文本,通过信息抽取得到右边结构化的信息。