属性抽取调研——工业界
目录
1. 任务
1.1. 背景
信息抽取是从非结构化、半结构化文本中将有价值的信息转化为结构化数据的过程,在抽取的过程中,根据抽取的内容不同又分为关系抽取、事件抽取、属性抽取等。
1.2. 任务定义
属性抽取(Attribute Extraction):属性抽取的目标是从不同信息源中采集特定实体的属性信息。比如人物实体的生日、性别、国籍等,都是它的属性信息,通过属性抽取,通过多个数据源的获取,我们就可以通过丰富的属性信息来较为完整地刻画一个实体。
1.3. 数据集
- 目前属性抽取还没有统一的评测数据集,一般是根据不同的应用场景,对不同的数据进行抽取。
1.4. 评测标准
- Accuracy
- Precision
- f1
2. 方法总结
可以划分为四类:基于无监督的抽取方法,基于依存关系的半监督的槽填充算法,基于深度学习的序列标注方法、基于元模式的属性抽取方法。
2.1. 基于无监督的属性抽取方法
2.1.1. 基于规则的槽填充算法
场景:在纯文本中抽取人物属性
论文:《中文人物属性槽填充技术的研究与实现》
方法:通过人工编写规则针对人物场景进行属性抽取,由于人工构造规则模板比较麻烦,可以使用Bootstrapping方法生成规则。
生成规则的步骤如下:
1、人工置顶规则种子作为初始规则种子集Spatter,属性值集合Sattr
2、使用规则种子集Spatter,遍历并匹配文本中的属性值,获取候选属性集合h
3、计算候选属性值集合h中每个属性值的可行度,将可信度较高的三个属性值加入到种子属性值集合Sattr中,若收敛,则算法结束,否则,执行4
4、使用属性值集合Sattr,遍历文本,由匹配到的属性值的上下文两个词,生成候选模板集合h’
5、计算候选模板集合h’中每个候选模板的可信度,将可信度较高的3个候选模板加入到规则种子集合Spatter中,若Spatter收敛,则算法结束,否则执行步骤2
重复2-5到满足一定的次数。
效果:通过自动生成规则进行抽取的效果不好,准确率较低。
2.1.2. 基于聚类的属性抽取方法
场景:产品的属性抽取
论文:《An Unsupervised Approach to Product Attribute Extraction》
方法:
1、数据预处理:
找出限定性的短语和名词短语,论文认为一般属性出现在这种词语中
2、对上一步筛选出的名词进行聚类,删除词语稍少的类
3、从类中抽取属性:计算unigrams, bigrams and trigrams,使用作者定义的属性分数函数进行计算,得分高的则为属性。
2.2. 基于依存关系的半监督的槽填充算法
场景:在纯文本中抽取人物属性
论文:《中文人物属性槽填充技术的研究与实现》
方法:
依存关系:在自然语言处理中,用词与词之间的依存关系来描述语言结构的框架称为依存语法(dependence grammar),又称从属关系语法。利用依存句法进行句法分析也是自然语言理解的重要技术之一。(来自维基百科)。
使用这种方法对人物进行属性抽取的步骤如下:
1、为每个属性生成对应的触发词表
2、根据属性槽特点,识别出句子中所有可能候选属性,比如出生地的NER标注为LOC,感觉是自己设置一些规则匹配一些属性出来
3、通过句子的依存结构,确认侯选属性与主体实体(这里是人物)的关系。将依存关系树看作一个无向图,顶点对应pagerank算法中的网页,利用pagerank算法,计算两个词在句法上的相关性。
4、计算<动词,人名,属性词>三元组的得分,取前top4,看动词是否出现在触发词中。
效果:在有触发词的句子中效果较好,在描述句式灵活且对触发词依赖小的句子中,提取性能不好。
2.3. 基于深度学习的序列标注方法
序列标注属于一种较为常用的属性抽取方法,就是将属性值看作较长的实体值,对数据进行标注,使用序列标注模型进行训练和抽取。
- 场景:这种方法被应用于多个场景中,比如人物属性的抽取,抽取在线评论文本的属性、从无上下文信息的标题中抽取产品属性等,只要有相应的标注数据,就可以使用这种方法进行抽取。
- 论文:《基于弱监督的属性关系抽取方法》《面向非结构化文本的开放式实体属性抽取》《实体 —属性抽取的GRU+CRF方法》《Personal Attributes Extraction in Chinese Text Based on Distant-Supervision and LSTM》《Bootstrapped Named Entity Recognition for Product Attribute Extraction》等论文中都使用了这种方法进行抽取
- 方法:将属性抽取看作序列标注问题,标注需要花费一定的人工成本,在有些场景下,比如人物属性的抽取,可以使用百度百科等百科词条的结构化信息框进行标注,可以降低一定的人工标注成本;同时,标注时也可以使用Bootstrap方法由种子发现更多潜在属性值,这种方法在《Bootstrapped Named Entity Recognition for Product Attribute Extraction》论文中提到,是一种类似于Pakhomov 2002提出的首字母扩写算法的算法。该算法学习如何将首字母缩写与其正确扩展相关联的上下文,作者认为,分类器在经过标记的已知品牌训练集上进行训练,可以学习可以区分当前含义的上下文模式。序列标注常使用的模型:CRF模型、神经网络模型如BI-GRU+CRF模型等。
- 效果:使用这种方法进行属性抽取的效果较为理想,但也具有一定的局限性,由于属性值的内容和形式多种多样,对于字数较长的描述性属性,这种方法不能取得理想的效果;同时,对于某些不能使用百科词条数据进行回标的情况,将花费大量的人工成本进行标注,降低了可操作性。
2.4. 基于元模式的属性抽取方法
- 场景:这种方法可以被应用于多个场景中,不具有局限性
- 论文:《MetaPAD-Meta Pattern Discovery from Massive Text Corpora》
- 方法:这种方法可以在海量语料库中发现元模式,在属性抽取的场景中,可以使用这种方法发现高质量的属性描述语句,作为属性值。
3. Paper List
3.1. 论文列表
会议/年份 | 论文 | 链接 |
---|---|---|
ACM SIGKDD International Conference 2017 | MetaPAD-Meta Pattern Discovery from Massive Text Corpora | https://arxiv.org/pdf/1703.04213.pdf |
近几年的属性抽取论文待补充
4. 相关链接
Bootstrapped Named Entity Recognition for Product Attribute Extraction