目录
Part 1:属性抽取基本描述
实际上,属性抽取较之关系抽取的难点在于,除了要识别实体的属性名还要识别实体的属性值,而属性值结构也是不确定的,因此大多研究都是基于规则进行抽取,面向的也是网页,query,表格数据[1,2,3]。但是这种方法在医疗领域数据上有一定的弊端,因为医疗知识图谱不同于常识性知识图谱,它对于信息的质量有着很高的要求,对信息噪音的容错性也较低。
当然也有研究使用了一些机器学习模型对文本中的属性名进行序列标注,但这种方法的局限在于,实体属性实际上是非常丰富的,但模型除了需要标注数据,也无法cover多种多样的属性。
- 《ReNoun-Fact Extraction for Nominal Attributes》
通常假定事实是用动词短语表示的,因此很难为基于名词的关系提取事实[4]。ReNoun主要用于提取长尾型名词属性,首先从文本和查询流中提取一个大型但不完善的本体。然后使用一组小的高精度抽取器,利用属性的文本表达特性来获得一个训练集,然后通过远程监督从训练集中归纳出一组更大的抽取模式。最后,用基于三元组模式频率和属性之间的语义相似度来计算事实的分数。
- 《MetaPAD-Meta Pattern Discovery from Massive Text Corpora》
以往研究采用了一种基于依赖分析的模式发现方法,如ReNoun。但是,解析结果会丢失模式中实体周围丰富的上下文,而且对于大规模的语料库来说,这个过程代价很高[5,6,7]。本文提出一种新颖的类型化文本模式结构,称为元模式,在一定的语境下扩展到一个频繁、信息丰富、精确的子序列模式:MetaPAD,它使用三种技术从海量语料库中发现元模式:(1)开发了一种上下文感知的分割方法,通过学习模式质量评估函数来仔细确定模式的边界,避免了代价高昂的依赖性分析,并生成了高质量的模式。(2)从多个方面识别和分组同义元模式,包括它们的类型、上下文和提取;(3)检查每个模式组提取的实例中实体的类型分布,并寻找适当的类型级别,以使发现的模式精确。实验证明,该框架能够有效地从海量语料库的不同类型中发现高质量的类型文本模式,并有助于信息提取。
MetaPAD不是处理每个单独的句子,而是利用大量句子,其中冗余模式用于表示大规模实例的属性或关系。首先,MetaPAD使用有效的序列模式挖掘生成元模式候选,学习候选模式的质量评估函数,特征选择具有丰富的域独立上下文特征:频率,信息性。然后挖掘质量元模式通过评估引导的上下文感知分割。其次,MetaPAD将同义元模式的分组过程制定为学习任务,并整合多个方面的特征(包括实体类型,数据类型,模式上下文和提取的实例)。第三,MetaPAD检查每个元模式组中的实体类型分布,并寻找模式最合适的类型级别。包括自上而下和自下而上两种方案,这些方案遍历类型本体,以确保模式的准确性。
因此我们利用MetaPAD,采用了一种集成方法
首先利用NER,名词短语抽取,词典,jiba对文本进行精准的分词,统计动词列表和停用词列表,并标注每个词的类型,如"Disease","NP"等,利用MetaPAD对海量数据进行pattern抽取,并统计pattern频次,通过TrueIE[8],筛选出描述实体属性的高质量语句pattern,并将其中的"NP"抽出,作为候选属性词。
然后,将所有候选属性词生成词典,重新对刚才的语料进行分词,并将所有属性词标记类型为"Attribute",进行第二次pattern抽取,只取与"Attribute"类型词有关的pattern,筛除其中的文本,作为属性值。对于属性值为句子的属性,直接截取相关语句作为答案。
实际上,MetaPAD不只可以用在属性抽取任务上,也可发现更多的术语表达,模版,统计信息等,工业价值比较高。
[1] Weakly-Supervised Acquisition of Open-Domain Classes and Class Attributes from Web Documents and Query Logs.
[2] Attribute extraction and scoring-a probabilistic approach.
[3] Automatic Discovery of Attribute Synonyms Using Query Logs and Table Corpora.
[4] Global Inference for Entity and Relation Identification via a Linear Programming…
[5] ReVerb:Identifying Relations for Open Information Extraction.
[6] Open information extraction from the web.
[7] Toward an architecture for never-ending language learning.
[8] TruePIE: Discovering Reliable Patterns in Pattern-Based Information Extraction.
Part 2:属性抽取基本研究内容
属性抽取背景:信息抽取是从非结构化、半结构化文本中将有价值的信息转化为结构化数据的过程,在抽取的过程中,根据抽取的内容不同又分为关系抽取、事件抽取、属性抽取。
属性抽取任务描述:目标是从不同信息源中采集特定实体的属性信息。比如人物实体的生日、性别、国籍等,都是它的属性信息,通过属性抽取,通过多个数据源的获取,我们就可以通过丰富的属性信息来较为完整地刻画一个实体。
属性抽取的方法总结:
2.1基于无监督的属性抽取方法
(1.1)基于规则的槽填充算法
场景:在纯文中的抽取人物属性。
论文:《中文人物属性槽填充技术的研究与实现》
方法:通过人工编写规则针对任务场景进行属性抽取,由于人工构造规则模板比较麻烦,可以使用Booststrapping方法生成规则。
生成规则的步骤:
①、人工置顶规则种子作为初始化规则种子集Spatter,属性值集合Sattr。
②、使用规则种子集Spattr,遍历并匹配文本中的属性值,获取候选属性集合h。
③、计算候选属性值集合h中每个属性值的可行度,将可信度较高的三个属性值加入到种子属性值集合Sattr中,若收敛,则算法结束,否则,执行④。
④、使用属性值集合Sattr,遍历文本,由匹配到的属性值的上下文两个词,生成候选模板集合h’。
⑤、计算候选模板集合h’中每个候选模板的可信度,将可信度较高的3个候选模板加入到规则种子集合Spatter中,若Spatter收敛,则算法结束,否则执行步骤②。
重复②-⑤到满足一定的次数。
效果:通过自动生成规则进行抽取的效果不好,准确率较低。
(1.2)基于聚类的属性抽取方法
场景:产品的属性抽取
论文:《An Unsupervised Approach to Product Attribute Extraction》
方法步骤:
①、数据预处理:
找出限定性的短语和名词短语,论文认为一般属性出现在这种词语中
②、对上一步筛选出的名词进行聚类,删除词语稍少的类
③、从类中抽取属性:计算unigrams, bigrams and trigrams,使用作者定义的属性分数函数进行计算,得分高的则为属性。
2.2. 基于依存关系的半监督的槽填充算法
场景:在纯文本中抽取人物属性
论文:《中文人物属性槽填充技术的研究与实现》
方法:
依存关系:在自然语言处理中,用词与词之间的依存关系来描述语言结构的框架称为依存语法(dependence grammar),又称从属关系语法。利用依存句法进行句法分析也是自然语言理解的重要技术之一。(来自维基百科)。
使用这种方法对人物进行属性抽取的步骤如下:
①、为每个属性生成对应的触发词表(词典);
②、根据属性槽特点,识别出句子中所有可能候选属性,比如出生地的NER标注为LOC,感觉是自己设置一些规则匹配一些属性出来;
③、通过句子的依存结构,确认侯选属性与主体实体(这里是人物)的关系。将依存关系树看作一个无向图,顶点对应pagerank算法中的网页,利用pagerank算法,计算两个词在句法上的相关性。
④、计算<动词,人名,属性词>三元组的得分,取前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》
方法:这种方法可以在海量语料库中发现元模式,在属性抽取的场景中,可以使用这种方法发现高质量的属性描述语句,作为属性值。
Paper List
会议:ACM SIGKDD International Conference 2017
论文:MetaPAD-Meta Pattern Discovery from Massive Text Corpora
论文链接:https://arxiv.org/pdf/1703.04213.pdf
相关学习资料:
Bootstrapped Named Entity Recognition for Product Attribute Extraction