查看原文
其他

知识图谱技术:大词林为代表的中文概念层级图谱构建项目剖析

刘焕勇 老刘说NLP
2024-10-08

本体schema是知识图谱构建中的重要一环,而本体的层级is-a体系是schema的一个核心。

例如,我们在构建一个金融领域知识图谱时,需要定义一些类型,如上市公司,而上市公司是公司的小类,公司又是机构的小类。如果有一个涵盖父子类层级关系知识库,对于schema辅助构建、基于图谱的上下位推理、事件抽象具有重要意义。

YAGO、wordnet、wiki-taxonomy等都是面向英文的概念知识图谱,近年来,也陆续出现了中文的概念图谱资源,其中CN-probase和大词林实体类型知识库是两个典型代表,前者以百科词条义项和标签等信息作为上下位概念数据来源进行构建,后者借助搜索引擎和启发式规则进行概念对识别,并借助同义词词林作为上下位层次骨架进行组织,均实现了数千万级的规模。

本文主要围绕知识图谱技术中的概念层级关系获取,从大词林、CN-probase两个代表性工作出发,对其构建细节相关技术进行介绍。

一、大词林上下位层级知识库

《大词林》是一个开放域命名实体知识库自动构建系统,由哈尔滨工业大学信息检索实验室研发,系统从Web搜索结果、在线百科和命名实体字面等多个信息源挖掘命名实体的类别,借鉴《同义词词林(扩展版)》的顶层结构,并从Apriori关联项、后缀上位词、分类层次化和词汇分布表示等多个角度学习获取类别之间的层次关系,分成上位抽取和上位词层次化的工作

1、大词林的由来

开放域实体是当下知识图谱构建中的一个关键问题,尤其是在面临开放域的问答时,常常会涉及到开放实体的情况。

与开放域信息抽取类似,开放域实体存在两个突出特点,一个类型众多并且形式不固定,例如阿司匹林、双黄连口服液等药品实体,20国集团伦敦峰会、中央经济工作会议等会议名实体,另一个是类别更细且存在一定的层次结构,例如机构实体又可以进一步分成企业类型、高校类型等。

为了对开放域实体进行建模,解决实体类别以及实体类别体系的问题,哈尔滨工业大提出了《大词林》的工作。

2、大词林的构建步骤

大词林的整体构建步骤包括实体上位概念的获取、排序以及实体类型的组织两个重要步骤。

3、候选上位词的获取

在构建上,大词林首先从多个来源收集给定命名实体的类别候选,然后再进行类别候选排序。其中,针对一个给定的命名实体,为了确定该命名实体的所属上位词并且缩小比对空间,采用基于互联网web挖掘的方式来获取候选上位词。具体地从三个来源分别获取,最终进行合并,实现多源头信息聚合

1)借助搜索引擎搜索结果的候选上位词获取

首先,将实体名称作为搜索关键词进行查询,借助百科或者搜狗搜索引擎搜索,得到相关网页搜索结果,其中,为了保证实体能够被完整的检索,采用了严格的匹配模式,在命名实体两侧添加引号,以保证只有包含完整命名实体的网页才会被检索到。

其次,由于在返回结果中会出现很多命中纪录,因此,针对返回搜索结果中的标题和摘要进行处理,统计与给定实体名称共现词语的频率,并设置阈值,将频率最高的名词或名词短语作为候选上位词。

2)借助在线百科类别标签的候选上位词获取

与在前面所述多次的百科类词条中所述的一样,百科中针对某个特定词条都标记了其所属的开放分类标签。

该工作也同样采用这种方法,通过使用百度百科和互动百科(现在更名为头条百科)进行爬取,通过html解析的方式,获取指定的标签集合。

3)借助实体自身核心实体词的候选上位词获取

实体自身的核心部分,也可能成为其潜在上位词,例如“北京语言大学”中的“大学”和“语言大学”都可以作为其上位词。一般,一个实体词的核心词通常是该实体的名词性结尾短语,可以根据这条规则获取候选上位词进行选择

4、候选上位词的排序

通过挖掘互联网web后,针对某个特定的实体,可以召回多个上位集合,但这个概念集合当中存在着大量的噪声,需要进一步地进行筛选排序,将最准确的上位词排在前面。

为此,该工作设计了一套用于排序的特征集合,八廓命名实体类别的先验概率(一个名词出现在百科类别标签中的次数越多,那么这个名词成为类别的概率就越大)、是否为百科类别标签、是否为核心词、候选的来源数、当前候选的同义词所占全部候选的比例、候选中汉字和实体最末一个字偏旁匹配的比例等

然后,在此基础上采用线性核函数、SVM等排序模型进行排序,得到最终的实体类别列表。

5、基于候选上位词的类别层次化

通过候选上位词排序,已经可以得到效果较好的上位词结果,针对一个实体名称,可以赋予其所对应的实体类型,但这个实体类型还是单层的,上位词之间还可能存在进一步的上下位关系。因此,该工作进一步提出类别层次化的工作,针对给定的实体及其上位词列表,给出上位词之间的层次关系。

具体地,在实现上采用了一种基于词汇分布式表示的方法,利用一个映射矩阵来刻画上下位关系,即一个词汇的分布式表示乘以这个映射矩阵可约等于起上位词的分布式表示,并使用同义词词林中抽取的上下位词对作为训练数据。

6、大词林的总结

大词林针对开放域命名实体中存在的类别多、类别细、类别具有层次性的特点,融合多个信息来源进行上位词抽取,并利用分布式表示方法建构了实体类别之间的实体关系,是一个十分具有启发性的工作。

由于《大词林》具有自动构建能力,其数据规模可以随着互联网中实体词的更新而扩大,很好地解决了以往的人工构建知识库对开放域实体的覆盖程度极为有限的问题。目前《大词林》2.0版已拥有实体三千万、上位词十八万、优质的实体上下位关系对一千五百万、属性-值对七千九百万对、关系(属性)数四十三万,可以用于实体抽象、实体路径层级抽象、事件抽象等典型任务当中

二、CN-Probase中文概念图谱

CN-Probase是由复旦大学知识工场实验室研发并维护的大规模中文概念图谱,是目前规模最大的开放领域中文概念图谱和概念分类体系,严格按照实体进行组织,以百科词条义项和标签等信息作为上下位概念数据来源进行构建,有较高的准确率。

1、CN-Probase的由来 

中文概念图谱目前还相对空缺,而中文百科中包括括号(bracket)、摘要(abstract)、信息框(infobox)、标记(tag)等信息,可以为概念的获取提供大量数据,充分利用这些信息就能够找到大量isA关系,例如百度百科中对“刘德华”的纪录中包含了大量信息。

例如,下图展示了中文百科对“刘德华”词条的信息页面。

但是基于这种方法得到的结果常包含噪音,从三元组和文本推出的上位词仍然容易出错。为解决从标签中提取错误isA对,CN-Probase采用生成和验证框架,以中文百科知识库为输入源,利用不同的算法从中文百科全书的多个来源中提取isA关系,以确保了覆盖范围,构建起一个大规模实体型概念知识库

2、CN-Probase的构成

CN-Probaseb从系统构成上包括生成模块和认证模块两个组成部分,首先制定了四种相应的算法从中文百科全书的四个来源(即括号,摘要,信息框和标签)获取isA关系,并在最后通过认证模块进行校验,最终合并形成概念分类体系

例如,下图展示了CN-Probase中文概念获取过程。

首先,生成模块:

针对括号内容,如“刘德华(中国香港男演员、歌手、词作人)”,采用分离的算法,将括号中的名词短语进行分词,提取所有叶节点以及二叉树的最右边路径作为实体的上位词

针对摘要信息,采用神经生成的方法,先利用远程监督构造数据集,训练概念抽取模型,采用编码器-解码器模型从抽象中生成概念

针对infox信息框,由于已经是结构化的信息,因此采用谓词发现的方法,以从括号中提取的isA关系作为先验知识,使用这些isA关系对齐SPO三元组,来发现隐含的isA关系之类的谓词

针对标签内容,因此直接使用对与标签信息,其为开放分类,可以直接使用作为实体的上位词语。

其次,在认证模块:

设置不兼容概念、命名实体识别以及基于语法规则的三种方法。

其中,不兼容的概念通过检测不兼容的概念对来筛选错误的isA关系,实现上分成不兼容的概念对构造和错误的isA关系检测两个子步骤:

先基于两个概念的下位集之间的 Jaccard相似性和概念属性分布之间的余弦相似度构造不兼容的概念对,然后给定实体e及两个不兼容概念c1和c2,通过KL散度检测错误的一个,进行概念过滤;

由于命名实体通常不是实体的上位概念,根据这条规则可以对错误的is-a对进行筛选;

此外,在语法规则方面,通过指定一些典型规则,例如好的上位词不应是诸如政治,军事之类的主题词,过滤词典中isA关系,其isA的上位词,上位词的词首不出现在下位词的非首位置,例如(教育机构,教育)就是一个错误的上下位关系对

3、CN-Probase的总结

CN-Probase作为一个利用生成式框架得到的大规模中文概念分类体系,通过对百科词条的不同信息来源采用不同的方式进行提取、评估、聚合,最终形成了包含约1700万实体、27万概念和3300万isa关系的数据规模。

与前面所述的大词林相比,CN-Probase在实体、概念和isA重关系的数量上有较大优势。此外,在模型的搭建上,与同样采用多源数据的大词林构建中上位词采用合并统一排序的方法不同,CN-probase对各个不同的来源设计了不同的矫正方式,保证了较高的准确率性能。

作为目前规模最大的开放领域中文概念图谱和概念分类体系,CN-probase可用于面向百科实体的多义项搜索、上下位概念查询等支撑应用。

三、总结

本文主要围绕知识图谱技术中的概念层级关系获取,从大词林、CN-probase两个代表性工作出发,对其构建细节相关技术进行了介绍。

通过这两个项目,我们可以大致了解提取is-a概念上下位关系数据的常用方法。

实际上,作者也有做过类似开放的层级体系知识库项目实践,从实体知识图谱、事件知识图谱出发,形成了一个80万规模的概念知识层级库。

基于该库,可以查询得到某个实体对应的概念层级路径,这对于事件抽象来说,具有重要意义。​

感兴趣的,可以查看项目:https://github.com/liuhuanyong/AbstractKnowledgeGraph

参考文献

1、Chen,J.,et al. "CN-Probase: A Data-driven Approach for Large-scale Chinese Taxonomy Construction." 2019.
2、刘燊. 面向《大词林》的中文实体关系挖掘[D]. 哈尔滨工业大学, 2016.

关于我们

老刘,刘焕勇,NLP开源爱好者与践行者,主页:https://liuhuanyong.github.io。

就职于360人工智能研究院、曾就职于中国科学院软件研究所。

老刘说NLP,将定期发布语言资源、工程实践、技术总结等内容,欢迎关注。


继续滑动看下一个
老刘说NLP
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存