【nlp入门了解】自然语言处理—关系抽取

2020 年 2 月 1 日 深度学习自然语言处理

点击上方,选择星标置顶,每天给你送干货

阅读大概需要11分钟

跟随小博主,每天进步一丢丢


https://www.cnblogs.com/vpegasus/p/re.html 

Author: Vpegasus  

E-mail: pegasus.wenjia@foxmail.com

编辑:泛音(公众号DLCV)


信息抽在自然语言处理中是一个很重要的工作,特别在当今信息爆炸的背景下,显得格外的重要。从海量的非结构化的文本中抽取出有用的信息,并结构化成下游工作可用的格式,这是信息抽取的存在意义。信息抽取又可分为实体抽取或称命名实体识别,关系抽取以及事件抽取等。命名实体对应真实世界的实体,一般表现为一个词或一个短语,比如曹操,阿里巴巴,中国,仙人掌等等。关系则刻画两个或多个命名实体的关系。比如马致远是《天净沙 · 秋思》的作者,那么马致远与《天净沙 · 秋思》的关系即是“创作”(author_of )关系,邓小平是党员,那么邓小平与共.产.党则“所属”(member_of)关系。

关系抽取可分为全局关系抽取提及关系抽取。全局关系抽取基于一个很大的语料库,抽取其中所有关系对,而提及关系抽取,则是判断一句话中,一个实体对是否存在关系,存在哪种关系的工作。

关系抽取分两步,一步是判断一个实体对是否有关系,而另一步则是判断一个有关系的实体对之间的关系属于哪种。当然这两步可变成一步,即把无关系当作关系的一种(特殊的),来进行多类别分类。

在监督学习的模式下,传统的关系分类方法为基于特征的方法与核方法,耗时,费事,准确度不高。

远程监督:

人工标注费事耗时还伤钱,2009年Mintz等人提出了远程监督方法。远程监督是借助外部知识库为数据提供标签,从而省去人工标注的麻烦。Mintz提出一个假设,如果知识库中存在某个实体对的某种关系,那么所有包含此对实体的数据都表达这个关系。理论上,这让关系抽取的工作大大简化。但远程监督也有副作用,因为不用人为的标注,只能机械地依赖外部知识库,而外部知识库会将同一对实体的所有情况都会标注一种关系,其标签的准确度就会大大的降低。比如汉武帝封卫青为大将军’,外部知识库中有关系:君臣_(汉武帝, 卫青)。,在这句中,'君臣'关系完全正确,但在另一句‘汉武帝是卫青姐姐的丈夫’,这里表达的关系可以是:亲属_(汉武帝, 卫青),而不是’君臣‘,此时外部知识库提供的信息就是不准确的,从而引入大量的噪声。因此目前在远程监督这个方向上的研究几乎都是聚焦在如何降噪

2010年Riedel对Mintz的远程监督方法进行改进,提出EALO(Expressed-at-least-once)假设:如果知识库中存在某个实体对的某种关系,那么至少有一个提到此对实体的数据表达此种关系。这个假设相对之前的假设确实温和了许多,也确实更贴近实际。但这假设也将抽取工作变得复杂,人们并不知道有哪些数据表达了知识库中提到的关系,而哪些为噪声。因此Riedel引入另一个技术称为多示例学习(multi-instance learning). 多示例学习第一次引入机器学习中是在1997年,Dietterich在研究药物活性预测中遇到到一个问题,即大多数时候,人们知道哪种药物分子有活性,适合制药,但因为药物分子大多是同分异构体,同种药物分子会有多种分子结构,其只可能只有一种结构真正地有药物活性。

多示例学习是一种监督学习模式,虽然因此信息不充足,没有办法为每个数据样本打标签,但可以对具有某种特征的数据样本集合打标签,这样的样本集合称为袋(bag). 即在多示例学习中,每个bag有标签,而每个bag中含有多个数据样本,每个样本即为一个示例(instance)。

正式地,设示例集 X = { x 1 , x 2 , . . . , x N } , 根据某种映射f 1 ,将示例集映射到bag空间, 然后,将经过某种映射f2,将bag空间映射到标签空间。