论文:A Novel Use of Statistical Parsing to Extract Information from text
一、关系抽取
关系抽取是在实体抽取基础上进行的。
二、关系抽取步骤
通用的句子处理步骤:词性标注、name finding、句法分析,经常局限在名词和动词组分块、语义分析,经常基于模式匹配。
这样的一种处理弊端在于:前面步骤的错误很有可能会影响后面的步骤,没有反馈的操作,后面的步骤错误无法反馈到前面。
处理方法:
设计一个集成模型,上述的所有步骤都能够同等互相影响。
一个集成模型可以解决前面三个步骤,虽然每个模型在细节上不一样,但是基础内容一样。
如果也可以扩展到语义分析,那么这个模型可以用到整个流程的所有步骤上。
1)合并表示句法和语义
使用增强的解析树对它们进行合并表示。
增强的标准TREEBANK结构用来表示语义信息(实体和关系)。
“Nance”——人名
“a paid consultant to ABC News”——描述人
“ABC News”组织名
“a paid consultant to ABC News”这样的人在ABC News工作
“Nancy”和“a paid consultant to ABC News”这样的人是一个人。
姓名和描述语义标签都带有一个r。其他的标签表征实体之间的关系。
2)创建训练数据
为了训练集成模型,需要一个大的增强解析树语料。
应用信息检索系统选择多个来源的大量文章,得到的文章使用增强树标注形成训练语料。(仅仅手动标注语义信息,如下图)
剩余的标注使用Penn树库,采用下面的步骤生成:
a) 模型首先在Treebank上生成的依存树上训练。
b)对于每个语义标注的句子:
利用上述模型解析句子,只得到与语义标注一致的解析树。(一致的意思是:标注的句法未跨越语义标注的实体和描述的界限)
除了句法结构,得到的解析树用来反映语义结构。
最后得到想上图1中一样完整的标注树。
3)增强树
现在有两种语料:人工标注的语义、机器标注的句法解析树
结合这两种语料,树增强算法分为以下几个步骤:
a) 插入区分name和descriptors的结点(在生成的解析中没有括起来的)
b)语义标签与所有name或descriptor相关的结点关联。这些标签反映实体类型,例如人物、组织、地点以及结点是否是合适的名字或描述。
c)实体之间的关系,如果一个实体不是另一个的句法修饰符,识别跨越两个实体的最低的解析结点。将关系的语义标签置于该结点上。例如“Mary Fackler Schiavo is the inspector general of the U.S. Department of Transportation”,co-reference语义标签加在name“Mary Fackler Schiavo”和descriptor“the inspector general of the U.S. Department of Transportation”两个之间。
d)将区分每个关系参数的结点插入到解析树中。比如两个实体之间有关系,其中一个实体是另一个实体的句法修饰符,插入的结点表示关系和参数,例如“Lt. Cmdr. David Edwin Lewis”,插入结点表示“Lt.Cmdr”是“David Edwin Lewis”的descriptor
e)每当一个关系在解析树的直接后代不是一个实体时,语义标签“Pointer”就会附加到所有的中间节点上。 这些标签有助于在关系和论点之间形成一个连续的链条。
4)模型结构
首先生成head,然后是head产生的修饰符,然后为每个修饰符生成head words、词性标签、特征。
对于图一中的话,首先生成S和head word: said,然后依序生成下面的内容:
a) S的head部分标注(本例中为VP)
b) S的预修饰部分(本例中只有一个PER/NP)
c) PER/NP的head词性标签(本例中为PER/NNP)
d) PER/NP的head word(本例中为nance)
e) PER/NP的head word的词特征
f)PER/NP的head部分(PER-R/NP)
g) PER/NP的预修饰部分(无)
h)PER/NP的后置定语成分(首先是一个逗号,然后是SBAR结构,然后是第二个逗号)
该概率模型head部分的类是基于它的父结点类进行计算的:
修饰部分的类是由他们的父节点、他们父节点的head部分、前修饰、他们父母的head共同决定。
L表示left(pre):前置修饰
R表示right(post):后置修饰
词性标注:修饰、head的词性标注、head本身。
Head words:修饰词、修饰词词性标注、head词性标注、head本身
词特征:修饰、修饰词的词性、head词的词性、head词本身、是否为modifier head word
完整树的概率是生成树中每个元素的概率的乘积。
5)训练模型
最大似然估计通过训练语料频率获得。这些估计比较稀疏不能利用。所以使用由连续低阶估计混合成的插值估计法。
修饰:
词性:
head word:
词特征:
6)动态规划得到结果
利用动态规划得到最有可能的解析结果:
a. 有一致的类标签
b. head成分有一致的标签
c. 有相同的head word
d. left修饰有相同的标签
e. right修饰有相同的标签
剪枝:
下面的概率乘积:
生成特定类成分的概率*某成分的结构生成概率。
有一个句子,检索的结果是标注了句子的句法和语义结构的树结构。实体和关系可以直接从中抽取得到。
7)结果
参考文献:A Novel Use of Statistical Parsing to Extract Information from text