知识库构建前沿:自动和半自动知识提取 _ 我爱机器学习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
主题分类科技速递微信及微博标签云讲座
现在的位置: 首页 > 搜索引擎 > 正文
分类目录
知识库构建前沿:自动和半自动知识提取
2014年04月06日⁄ 字号 小中大
编者按:在过去几十年,人们曾尝试采用直接编辑知识、利用大众智慧、自动或半自动知识抽取三类方法来构
建知识库。随着时代发展,直接编辑知识由于受时间和经济成本的约束,这种方式很难实现大规模知识库的构建。
而利用大众智慧是指利用互联网众包机制,过于依赖激励机制将降低知识库运行稳定性。微软亚洲研究院主管研究
员史树明在本文中重点讨论第三类方法——自动或半自动知识抽取,其基本思想是设计自动或半自动的算法,从
点之间的关系集合。图1 展示了一个简单的知识子图,而表1 则列举了此子图上一些结点之间的关系。
1
2
知识类型
知识图中可能包含三类结点:
实体 如某一个人物、某一个国家、某一个机构、某一条狗、某一种编程语言、某一个学科等。图1 中的实体包括E1、E2 和E3。
语义类 一种类型的实体或一些实体的集合,如国家、亚洲国家、动物、山脉等。图1 中C1、C2、C3 为语义类。
文本 通常作为实体和语义类的名字、描述等,如图1 中的T1~T4。
知识图中结点之间的边的类型包括:
实体—语义类 从一个实体指向它所属的语义类。此类型的边在图1 中标记为“类”。
子类—父类 从一个语义类指向其父类,在图1 中用“超类”来标识。
属性 从一个实体指向它的属性值。不同的属性类型对应于不同类型的边,如图1 中“出生地”和“妻子”是两种不同的属性。所有实体和语义类都拥有一个特殊的属性“名字”,它指向文本类型的结点,表示此实体或语义类的名字或自然语言表达(如中文名、英文名等)。
对于“关系”,维基百科给出了很好的定义和描述,即关系是一个函数,它把k 个点映射到一个布尔值。例如,假设关系R(X, Y, Z) 表示“X 认为Y 喜欢Z”,则当且仅当“张三认为李四喜欢王五”时,R( 张三, 李四, 王五)=TRUE。
如果把上述定义直接运用到知识库上,关系则是一个把k 个图结点(实体、语义类或文本结点)
映射到布尔值的函数。值得注意的是,有一类特殊的关系叫做事件,其特点是函数参数中包含时间,并且对应于一个或多个动作1。属性也可以看作是一种特殊的(二元)关系,即从实体和属性值到布尔值的映射。
权重的重要性
在知识图的结点和边上附加合适的权重对于上层应用至关重要。结点权重的重要性类似于互联网搜索中的网页等级,它通常标识着结点出现的频度或结点的先验概率。而将边的权重和结点的权重结合起来可以用来计算在给定一个结点的情况下其它结点出现的后验概率。例如在图2中,如果边和结点的权重都是合理的,上层应用就可以知道,对于实体E1 来说,“苹果”比“明目果”更常见,在文章中提到“苹果”时,在更多的情况下是指E1 或E2而不是E3 或E4。权重信息通常需要通过自动或者半自动统计的方法而不是通过人的编辑而得到。
3
知识提取任务
知识提取的主要任务就是构建知识图以及生成图结点间的关系,具体子任务包括:
实体名提取 提取实体名并构造实体名列表。
语义类提取 构造语义类并建立实体(或实体名)和语义类的关联。
属性和属性值提取 为语义类构造属性列表,并提取类中所包含实体(或实体名)的属性值。
关系提取 构造结点间的关系函数,并提取满足关系的结点元组。
知识提取方法
知识提取方法的典型输入是自然语言文本(如句子)或带标记的自然语言文档(如网页、搜索引擎查询日志等),输出是知识图的子图或者关系集合的子集。针对每一种知识提取任务,都有大量的方法被提出来。本文重点选取了简单、有效、扩展性良好的方法,而避开那些看上去似乎很有技术含量实则堪称“鸡肋”的方法。
实体名提取
实体名提取的任务是构建一个词表,词表中主要包含实体名(如“中国”),同时也包括语义类的名称(或称类型名,如“国家”)。常见的词表构建方法有:从百科类站点中提取,从垂直站点中提取,利用模式从网页和句子中提取,以及利用命名实体识别(named entity recognition, NER)技术从自然语言句子中提取。
最简单的方法是从百科类站点(如维基百科、百度百科、互动百科等)的标题和链接中提取实体名。这种方法的优点是能够得到开放域上几乎所有类型的最常见的实体名,其缺点是对于中低频实体的覆盖率较低。相比而言,针对某些垂直网站而特别设计的抽取算法则可以在特定类型和领域上实现很高的覆盖率。例如,从亚马逊网站上可以抽取到几千万本书的信息,这个数量超过英文维基百科的词条数目。这种方法的缺点是在试图扩展到所有领域和实体类型时,会有比较大的开销(需要针对每个网站设计抽取算法)或牺牲精度(设计通用抽取算法),同时很难保证所有类型的实体都有对应的垂直站点。基于模式的方法从网页和句子中抽取词的并列相似度和上下位关系信息,其副产品是一个词表。这种方法能够覆盖比较广的领域和实体类型,与从百科类站点提取实体名的方法相比,对中低频词具有更高的覆盖率,但所得到的词表精度要低。
命名实体识别技术主要用来从句子中提取命名实体并标记它们的类型(研究比较多的类型包括人名、地名和机构名)。其输入是一个无结构的句子,输出是标记了命名实体类型的句子。只要将此技术作用于大量的句子并把所标记的命名实体聚集起来,便可以得到一个词表,因此该技术的一个直接应用就是构建词表(尽管其更为重要的应用是提取句子的特征和理解句子)。最早的命名实体识别主要采用手工定义的规则,后来出现了基于少量种子实体(对每种实体类型而言)的半监督方法,如自助法或者自举法。研究人员进一步提出了各种各样的基于监督的方法来提高性能。基于命名实体识别的词表构建方法能够得到不错的精度,并且能够在有训练数据的实体类型上达到较高的覆盖率。它的主要缺点是需要针对每种实体类型来提供种子实体或者其它训练数据,因此难以扩展到开放域和所有类型的对象。
各种词表构建方法的对比参见表2。多种方法的结合有望达到更好的综合效果。
4
语义类抽取