远程监督
《Distant supervision for relation extraction without labeled data》
复现地址:https://github.com/jainprateek/distant_supervision
笔记key:https://www.cnblogs.com/Dream-Fish/p/3956890.html
前言:本篇论文分两个部分,第一部分讲怎么标注,第二部分讲怎么抽取。(标注那部分讲得不是很详细)
零、名词术语
- ACE:Automatic Content Extraction
- 远程监督:假如一个句子中出现了两个实体,且这两个实体之间存在关系,那么就认为这句话体现了这种关系。“知道两个实体之间存在某个关系”是依赖一个外部知识库告诉我们的,所以叫做远程监督,是通过知识库作为监督信号进行标注的。所以,这种思想,就叫远程监督。
一. 背景:
-
实验概述:论文实验使用Freebase(一个包含数千个关系的大型语义数据库)来提供远程监控,在大型无标注语料库中标注实体关系。即,对于Freebase关系中出现的实体对,我们在一个大型的未标记语料库中找到包含这些实体的所有句子,并提取文本特征来训练关系分类器。(以达到给定一个句子进行分类的效果?分类器将实体对和特征向量作为输入,并基于实体对属于该关系的概率返回关系名称和置信度得分)
-
关系抽取中使用到的4种方法:
- a) 监督学习
- 优点:准确率很高
- 缺点:1.手工标注金标语料代价昂贵,时间金钱上需要很大的开销,并且数量受限,得不到大量的训练数据; 2.领域受限,标注都是在一个特定的语料中,训练出的系统可能会偏向于那个领域。
- b) 纯无监督学习:
- 在大量文本中提取实体之间的单词串,并对这些单词串进行聚类,但是得到的关系类很难映射到实际的关系类别中。
- 优点:可以使用大规模的数据,抽取出大量的关系
- 缺点:抽取的结果往往比较难映射到特定的知识库
- c) Bootstrap learning
- 一种迭代的模型,种子与大型语料库一起使用来提取一组新的模式,这些模式被用来以迭代的方式提取更多的实例,这些实例被用来提取更多的模式。
- 往往有低准确率的问题。
- d) 远程监督( distant supervision)
- 使用知识库(freebase)来获取 weekly labeled training data。
- 特点:相比监督学习,远程监督使用知识库提供训练数据来取代人工标注获取训练数据,没有过拟合的问题和领域依赖的问题;比起无监督,远程监督不用解决聚类结果到关系的映射问题,并且使用大规模的训练数据可以得到丰富的特征。
- 对于每对实体,将该对儿出现的许多不同句子中的特征聚合到单个特征向量中,为分类器提供更多信息,从而产生更准确的关系标签。(好像不是在构建数据,直接分类了)
二. 方法介绍
- 基本假设: 如果两个实体是某个关系的参与者,任意的一个包含这两个实体的句子都可能表达了这个关系。
- 训练阶段
- 使用 NET(named entity tagger)标注 persons, organizations 和 locations;
- 对包含freebase 中出现的某关系实例的实体对的所有句子提取特征,添加到该关系的特征向量中,构造训练数据;
- 训练多类别逻辑斯特回归模型(学习这个特征到类别的关系)。(之所以使用多个句子来提取特征,是因为任何单个句子都可能给出错误的提示)
- 测试阶段:
- 使用 NET(named entity tagger)标注 persons,organizations 和 locations
- 在句子中出现的每对实体都被考虑做为一个潜在的关系实例,作为测试数据。(把整个测试预料看作一个整体,每当某实体对一起出现时,就提取该句子上的特征,并将其添加到该实体对的特征向量中,最后对这个实体对分类,所有包含这个实体对的句子都会被分到相同的关系类别)
- 使用训练后的模型对实体对分类。
3. 特征选择
3.1. 词汇特征(Lexical features):
- a) 两个实体中间的词序列;
- b) 这些词的词性标记;(part-of-speech tags,7个类别:nouns, verbs, adverbs, adjectives, numbers, foreign words, and everything else)
- c) 标志位表示哪个实体出现在前面;
- d) 实体1及其词性标签左侧的k个单词的窗口;
- e) 实体2及其词性标签右侧的k个单词的窗口;
3.2. 句法特征(Syntactic features):
- a) 两个实体之间的最短依存路径;
- b) 两个实体的左右窗口。
3.3. 命名实体tag特征(Named entity tag features):
- 人名、地名、组织名和其他
4. 其他注意的地方
- 连接特征来丢进多类逻辑斯特回归模型。(这里要求大量数据,保证复杂的特征组合也会出现很多次,保证将来进行学习的时候能够学习到)
- 负例构造:随机在选择在freebase中没有出现关系的两个实体对,代表“不相关”关系(但是有错误的可能,因为可能是freebase没有覆盖到)
- 训练和测试数据构造:(Held-out evaluation)— freebase中的关系实例一半用来训练,另一半用来测试。数据使用维基百科数据,2:1的训练和测试数据分配。测试时只对在训练时未出现(不属于训练时的freebase中)的实例对分类。
- 评估:自动+人工结合的方式。
- 测试结果选择:对所有实体对分类,并对每对实体对分配一个分类结果的置信度。然后对它们的置信度排序,选取top n。