logo资料库

一种准确而高效的领域知识图谱构建方法.pdf

第1页 / 共17页
第2页 / 共17页
第3页 / 共17页
第4页 / 共17页
第5页 / 共17页
第6页 / 共17页
第7页 / 共17页
第8页 / 共17页
资料共17页,剩余部分请下载后查看
软件学报 ISSN 1000-9825, CODEN RUXUEW Journal of Software,2018,29(10):29312947 [doi: 10.13328/j.cnki.jos.005552] ©中国科学院软件研究所版权所有. 一种准确而高效的领域知识图谱构建方法 杨玉基, 许 斌, 胡家威, 仝美涵, 张 鹏, 郑 莉   E-mail: jos@iscas.ac.cn http://www.jos.org.cn Tel: +86-10-62562563 (清华大学 计算机科学与技术系 知识工程实验室,北京 100084) 通讯作者: 杨玉基, E-mail: yangyujiyyj@gmail.com 摘 要: 作为语义网的数据支撑,知识图谱在知识问答、语义搜索等领域起着至关重要的作用,一直以来也是研 究领域和工程领域的一个热点问题,但是,构建一个质量较高、规模较大的知识图谱往往需要花费巨大的人力和时 间成本.如何平衡准确率和效率、快速地构建出一个高质量的领域知识图谱,是知识工程领域的一个重要挑战.对领 域知识图谱构建方法进行了系统研究,提出了一种准确、高效的领域知识图谱构建方法——“四步法”,将该方法应 用到中国基础教育九门学科知识图谱的构建中,在较短时间内构建出了准确率较高的学科知识图谱,证明了该方法 构建领域知识图谱的有效性.以地理学科知识图谱为例,使用“四步法”共得到 67 万个实例、1 421 万条三元组,其中, 标注数据的学科知识覆盖率和知识准确率均在 99%以上. 关键词: 语义网;知识图谱;本体;语义标注;实体集扩充;关系抽取 中图法分类号: TP18 中文引用格式: 杨玉基, 许斌, 胡家威,仝美涵,张鹏,郑莉.一种准确而高效的领域知识图谱构建方法.软件学报,2018,29(10): 29312947. http://www.jos.org.cn/1000-9825/5552.htm 英文引用格式: Yang YJ, Xu B, Hu JW, Tong MH, Zhang P, Zheng L. Accurate and efficient method for constructing domain knowledge graph. Ruan Jian Xue Bao/Journal of Software, 2018,29(10):29312947 (in Chinese). http://www.jos.org.cn/1000- 9825/5552.htm Accurate and Efficient Method for Constructing Domain Knowledge Graph YANG Yu-Ji, XU Bin, HU Jia-Wei, TONG Mei-Han, ZHANG Peng, ZHENG Li (Knowledge Engineering Group, Department of Computer and Sciences, Tsinghua University, Beijing 100084, China) Abstract: In supporting semantic Web, knowledge graphs have played a vital role in many areas such as knowledge QA and semantic search. Therefore, they have become a hot topic in the field of research and engineering. However, it is often costly to build a large-scale knowledge graph with high accuracy. How to balance the accuracy and efficiency, and quickly build a high-quality domain knowledge graph, is a big challenge in the field of knowledge engineering. This paper engages a systematic study on the construction of domain knowledge graphs, and puts forward an accurate and efficient method of constructing domain knowledge graphs as “four-steps”. This method has been applied to the construction of knowledge graphs of nine subjects in the k12 education of China, and the nine subject knowledge graphs have been developed with high accuracy, which demonstrates that the new method is effective. For example, the geographical knowledge graph, which is constructed using the “four-steps” method, has 670 thousand instances and 14.21 million triples. And as part of it, the annotation data’s knowledge coverage and knowledge accuracy are both above 99%. Key words: semantic Web; knowledge graph; ontology; semantic annotation; entity set expansion; relation extraction 1998 年,互联网的创始人 Berners-Lee 最先提出了“语义网(semantic Web)”的概念[1],其核心思想是:在网页  基金项目: 国家高技术研究发展计划(863)(2015AA015401) Foundation item: National High Technology Research and Development Plan of China (2015AA015401) 本文由“本体工程与知识图谱”专题特约编辑漆桂林教授推荐. 收稿时间: 2017-07-22; 修改时间: 2017-11-08; 采用时间: 2018-01-24; jos 在线出版时间: 2018-02-08 CNKI 网络优先出版: 2018-02-08 11:55:49, http://kns.cnki.net/kcms/detail/11.2560.TP.20180208.1155.008.html
2932 Journal of Software 软件学报 Vol.29, No.10, October 2018 数据中添加能够被计算机所理解的语义信息,从而提升机器的理解能力.作为语义网的数据支撑,知识图谱成为 研究领域和工程领域的热点问题.知识图谱是一个巨大的知识网络,网络中的节点表示实体,节点之间的边表示 实体和实体之间的关系,实体包含概念和实例两种,每个实体还有很多(属性-值)对来描述实体的内在特性.例 如:“中国”和“俄罗斯”是实例,也是“国家”,而“国家”是一个概念;“中国”和“俄罗斯”有着“毗邻”的关系,“中国”和 “俄罗斯”也都有各自的“人口数量”“面积”等属性.上述知识都可以通过(主语-谓语-宾语)的形式来描述,这种形 式被称为三元组,也被称为事实.以上事实在知识图谱中就可以表示为: (中国-类型-国家) (俄罗斯-类型-国家) (中国-毗邻-俄罗斯) (中国-面积-9 634 057 平方公里) (中国-人口数量-13.8 亿(2016 年)) (俄罗斯-面积-17 098 242 平方公里) (俄罗斯-人口数量-1.4 亿(2016 年)) 知识图谱可以分为不限领域的知识图谱(通用知识图谱)和限定领域的知识图谱(领域知识图谱)两种.通用 知识图谱有很多,包括研究领域的 DBpedia[2]、YAGO[3]、Freebase[4]等和工程领域的 Google 的 Knowledge Graph[5]、百 度 的“知 心”(http://baike.baidu.com/view/10972128.htm)、搜 狗 的“知 立方”(http://baike.baidu.com/ view/9645207.htm)等.领域知识图谱也有很多被构建出来,例如地理信息领域知识图谱 Geonames(http://www. geonames.org/ontology)、“天眼查”(https://www.tianyancha.com)的企业领域知识图谱等. 知识图谱的构建往往需要付出很大的代价.由于当前的自然语言处理方法还不够完善,完全自动化的构建 方式难以得到较为准确的知识图谱,例如,DBPedia、YAGO 等都存在有较多错误;而完全人工构建的方法虽然保 证了准确性,但却需要花费巨大的人力和时间成本,完全人工构建较大规模的知识图谱几乎不可能.因此,如何 协调准确率和效率、平衡自动化方法和人工参与,以最高效的方式构建出最准确的知识图谱,是目前构建知识 图谱需要解决的一大难题. 本文主要基于以上难题提出了系统性的解决办法——“四步法”,4 个步骤分别是: 步骤 1:领域本体构建; 步骤 2:众包半自动语义标注; 步骤 3:外源数据补全; 步骤 4:信息抽取. 本体构建是指构建出知识图谱的本体结构,本体结构可以理解为知识图谱的框架.众包半自动语义标注指 的是将文本页面众包给多个标注者,根据步骤 1 构建好的本体,利用语义标注工具标注得到高质量的标注数据. 外源数据补全是指将其他来源的结构化程度较好的数据按照本体结构处理后,与标注数据整合在一起.而信息 抽取则是针对知识图谱中较为稀疏的实体或者关系,从文本中进行大规模的抽取和补充.步骤 1、步骤 2 是知识 图谱的骨架部分,是基础,也是核心.两个步骤相互迭代,本体构建指导标注,标注中遇到的新的情况又可以反向 改进本体结构.步骤 1、步骤 2 保证了知识图谱的准确性.步骤 3、步骤 4 是知识图谱的血肉部分.在步骤 1、步 骤 2 得到的高质量标注数据的基础上进行有针对性的、可控的扩充和补全,保证了知识图谱的覆盖率和构建的 高效性.步骤 3、步骤 4 也是相互迭代的关系,步骤 4 可以利用步骤 3 中得到的关系和实体从文本中进行信息抽 取,步骤 3 也可以利用步骤 4 中抽取出的新的实体和关系,将其他来源的结构化数据中的相关知识补充到知识 图谱中. 以上 4 个步骤能够充分利用领域内高质量的专业资料和海量的互联网数据,高效地构建出准确率较高的 实际可用的领域知识图谱.我们还使用此方法构建出了面向基础教育的地理学科的知识图谱,实例数量 67 万、 三元组数量 1 421 万,其中,标注数据的知识覆盖率和知识准确率达 99%以上. 本文的主要贡献如下.
杨玉基 等:一种准确而高效的领域知识图谱构建方法 2933  提出了一种准确、高效地构建领域知识图谱的方法——“四步法”,并用“四步法”构建出了一个面向基 础教育的高质量的地理学科知识图谱,验证了“四步法”的有效性;  构建的面向基础教育的高质量的地理学科知识图谱,为基于地理学科知识图谱的应用系统(知识问答 与高考答题)提供语义数据支撑;  研究实现的众包半自动语义标注工具可以在标注三元组的时候很好地兼顾质量和效率,同时可以用 于完善本体结构. 本文第 1 节是相关领域的研究综述.第 2 节是地理学科知识图谱构建,详细地介绍用“四步法”构建地理学科 知识图谱的整个过程.第 3 节是实验,介绍众包半自动语义标注、实体集扩充和关系抽取的相关实验和效果,以 及地理学科知识图谱的数量统计信息.第 4 节是结论. 1 相关研究综述 本节对知识图谱构建过程中的主要挑战进行介绍,包括本体构建、语义标注和信息抽取这 3 个部分. 1.1 本体构建 1993 年,Gruber[6]将本体定义为“一种概念化的精确的规格说明”.1998 年,Studer[7]进一步扩充了本体的概 念,将其定义为“共享概念模型的明确形式化规范说明”.简而言之,本体主要是用来描述某个领域内的概念和概 念之间的关系,使得它们在共享的范围内具有大家共同认可的、明确的、唯一的定义.所以,本体具有共享化、 明确化、概念化和形式化这 4 个基本特征. 本体构建的过程相当繁琐,而且构建过程往往因各自领域和具体工程的不同而有所不同[8].但是大家公认 的是,在领域本体的构建过程中,需要相关领域专家的协作与指导[911].一般而言,本体构建通常有人工、自动和 半自动这 3 种构建方法.  人工构建本体的方法通常是由大量的领域专家相互协作完成,例如 WordNet[12].常见的人工构建本体 的方法主要有 Skeletal 法[13](又称骨架法)、TOVE 法[14]、SENSUS 法[15]、Methontology 法[16]、Ontology Development 101 法[17](又称七步法)等;  自动构建本体通常也称为本体学习,其目标在于利用知识获取技术、机器学习技术以及统计技术等从 数据资源中自动地获取本体知识,从而降低本体构建的成本.杜小勇[18]根据数据源的结构化程度(结构 化、半结构化、非结构化)以及本体学习对象的层次(概念、关系、公理)将本体学习问题划分为 9 类 子问题,并详细分析了这 9 类子问题的研究进展.在此之上,还进一步介绍和比较了现有的本体学习工 具.在自动构建本体方面,目前还极少有方法能够得到覆盖率和准确率都表现良好的本体[19];  半自动构建本体介于人工构建本体和自动构建本体之间,对于大多数领域而言,完全自动化地构建本 体是难以实现的,所以在自动构建本体的过程中,通常还需要在用户的指导下进行. 本文采用的是半自动构建本体的方法,使用统计方法和无监督方法得到本体知识,结合其他知识图谱的本 体知识,在专家的指导下构建出了本体,并在众包半自动语义标注过程中进行了完善. 1.2 语义标注 语义标注是指对原始数据做标记,使其包含一定的语义信息,这样不仅人可以理解,而且机器也能够理解. 语义标注的研究主要包括利用本体技术和自然语言处理等技术来进行语义标注的算法研究和应用研 究[2028]. 根据语义标注结果的存储方式,语义标注可以分为两类[25]:嵌入式存储和独立存储.嵌入式存储方式是指将 标注结果嵌入在原始网页中,标注格式可以是 JSON-LD[29]、MicroData、RDFa[30]等,例如 Google 的结构化数据 标记辅助工具[31];独立存储方式是指将标注结果保存在外部存储中,可以保存到文件中,也可以保存到数据库 中,例如开源语义标注工具 Pundit[32,33],它可以对任何网页进行标注,标注结果将保存在标注系统后端的数据 库中.
2934 Journal of Software 软件学报 Vol.29, No.10, October 2018 根据语义标注的自动化程度,语义标注可以分为 3 类[24]:手工标注、半自动标注和自动标注.手工标注是指 标注人员直接将语义数据写入到标注文档中,最典型的是 Semantic Wiki,即 Wiki 的语义版本.它的实现方式是 在编辑 Wiki 页面时插入一些语义数据,使得 Wiki 系统能够解析这些语义数据,从而提供更加便捷的浏览和更加 智能的检索.其他的手动标注工具还有 SHOE Knowledge[34]、OntoMat Annotizer[35]等.半自动标注是由标注人员 指定网页或者网页中的文本片段,然后由标注人员选择合适的本体概念(或属性)或者由系统自动显示可选的本 体概念(或属性),最后生成并保存语义标注结果.典型代表就是由 W3C 主导的 Annotea[36]项目,它是最早的基于 RDF 的语义标注项目,该项目实现了一个半自动语义标注工具 Amaya.标注人员可以通过添加标注模板来完成 半自动标注,但是由于标注工作必须由人工在客户端软件中完成,因此 Annotea 并不适合大规模的网页语义标 注.其他的半自动标注工具还有 SMORE[37]、Pundit 等.自动标注是指标注工具可以按照预定的规则自动产生并 保存语义标注信息.典型代表有 AeroDAML[38],它把常见的概念和关系映射到 DAML+OIL 本体中的类和属性, 并采用自然语言处理和信息抽取方法从网页文档中自动生成 DAML 标记的知识.其他的自动标注工具还有 MnM[39]等.研究表明,采用自动标注方式虽然提高了标注速度,但其标注质量很难得到保证[21]. 本文采用的是基于 Pundit 开发的众包半自动语义标注工具,可以满足众包标注过程中的标注审核、标注溯 源、共指消解、数据存储等需要,极大地提升了众包标注的效率. 1.3 信息抽取 信息抽取包括实体抽取、关系抽取和属性抽取. 实体抽取也称命名实体识别,是从文本中自动识别出命名实体.与之相似的任务是实体集扩充,该任务指的 是根据种子实体集,从文本中抽取出相同类别的新实体.对于实体集扩充,Bootstrapping 方法是最直接的想法[40], 此方法根据种子实体从文本中抽取出特征模板,然后利用这些模板从文本中抽取出新的实体,再根据新实体从 文本中抽取新的特征模板.反复迭代此过程,便可以抽取出目标概念下大量的新实体.这种方法最大的问题是语 义漂移[41],即:随着迭代次数的增加,扩充的新实体会逐渐偏移原来的类别. 关系抽取指的是从文本中抽取出实体和实体之间的关系,这样才能将零散的实体联系起来.关系抽取的算 法可以分为基于规则的方法和基于机器学习的方法.基于规则的方法需要人工制定较多规则且难以全面;基于 机器学习的方法又可以分为有监督、半监督和无监督这 3 类:有监督的方法需要大量质量较好的标注数据,半 监督的方法需要少量标注数据,无监督的方法不需要标注数据.使用有监督的方法进行关系抽取,可以看作是多 分类问题,预先将每个关系定义为一个类别,然后将句子中实体之间的关系划分到预先定义的类别中;较多采用 的半监督算法有 Bootstrapping 算法、协同训练算法和标注传播算法[42],其中,Bootstrapping 方法中的远程监督 方法目前最受学界关注,该方法首先将每种关系的少量三元组作为种子集,然后回标出同时包含种子集中三元 组的两个实体的句子作为表征这一关系的训练数据,再从文本中找出符合这一关系的其他句子,这些句子中的 实体和实体之间则很有可能也满足这一关系.该方法最大的问题是训练数据噪声,即:包含两个实体的句子的语 义关系可能会有很多种,但是回标的时候所有句子被当成了一种语义关系.本文对有监督、半监督和无监督的 方法都进行了相关实验. 属性抽取则是从文本中抽取出实体的属性信息,例如实体“中国”的“面积”、“人口数量”等属性.由于可以将 实体的属性视为实体和属性间的一种名词性关系,因此也可以将属性抽取问题视为关系抽取问题[43],故以下属 性抽取也归为关系抽取的范畴,不再分开表述. 2 地理学科知识图谱构建 本节将以面向基础教育的地理学科知识图谱的构建为例,详细介绍使用“四步法”构建领域知识图谱的过 程,构建框架如图 1 所示.其中,4 个步骤的具体内容如下. (1) 领域本体构建:基于地理学科权威的教材教辅资料,利用无监督的 OpenIE 方法和相关统计方法,参考 其他知识图谱的本体结构,结合地理学科领域专家和一线教师的指导意见,完成面向基础教育领域的 地理学科本体构建;
杨玉基 等:一种准确而高效的领域知识图谱构建方法 2935 (2) 众包半自动语义标注:将地理学科教材教辅电子化后得到的文本作为标注对象,并以地理学科领域本 体为标注依据, 使用语义标注系统进行半自动语义标注,形成标注数据,且在此过程中完善地理学科 领域本体; (3) 外源数据补全: 按照地理学科知识图谱的本体结构,对结构化的外部数据源进行相应的处理之后, 得 到外源数据,作为地理学科知识图谱的重要部分; (4) 信息抽取:利用标注数据中的数据作为训练数据,按照地理学科知识图谱的本体结构,采用有监督、半 监督和无监督的方法从百度百科等互联网文本中抽取实体和关系,得到扩充数据. Fig.1 Construction route of geographical knowledge graph 图 1 地理学科知识图谱的构建路线 2.1 本体构建 对于基础教育领域的学科本体,覆盖率和准确率是非常重要的评价指标.在当前中文本体自动构建技术还 不成熟的情况下,我们结合基础教育领域的特点,利用本体学习和统计学习等方法得到的本体知识,结合其他知 识图谱的本体知识,在专家的指导下构建出了地理学科领域本体. 2.1.1 归纳领域概念 领域的核心概念对应的是本体中的类(owl:Class), 每个核心概念都对应着许多实例,例如“国家”这个概念 下就对应着“中国”“美国”“俄罗斯”等实例.我们采用 3 种方法来得到地理学科领域的核心概念. (1) 用统计方法得到领域术语,再从领域术语中得到领域核心概念. 领域的核心概念是领域术语的子集合,因此可以用获取领域中术语的方法来获得领域概念. 从理论上讲,领域中的重要术语需要满足两个基本条件.(1) 术语在领域相关文档中出现的频率相对较 高;(2) 术语在领域相关文档中出现的频率远高于在普通文档中出现的频率. 结合重要术语的两个基本条件可以看出,领域中的重要术语和文档集合中的关键词非常类似.所以利用相 关统计学理论和文本挖掘技术,可以对领域中重要术语的归纳起到一定的辅助作用,进而大大缩小重要术语的 查找范围. TF-IDF[44]算法和 TextRank[45]算法是关键词提取研究领域中两个最基本的算法.TF-IDF 算法是一种统计方 法,它的作用是评估一个词语对于一个语料库中的其中一份文档的重要程度.该算法的核心思想是:一个词语的 重要性随着它在文档中出现的次数成正比地增加;但同时,会随着它在语料库中出现的频率成反比地下降. TF-IDF 算法综合考虑了词语出现的频率、位置和密度等因素,但是它没有对整篇文档中相互有联系的词 语进行综合考虑,而 TextRank 算法恰恰考虑到了词语之间的关系,并对词语的重要程度进行分配.
2936 Journal of Software 软件学报 Vol.29, No.10, October 2018 TextRank 算法基于 Google 的 PageRank[46]算法,其核心思想与 PageRank 算法相同:如果将网络中的节点看 作是词语,那么在词语网络中词语的重要程度取决于与它相连的词语(指定窗口内的词语)给它的投票数目,而 票的权重取决于该词语自己的票数. 以上两种算法得到的关键词确实有不少是地理学科的核心概念,例如“国家”“城市”“河流”“海洋”“地形”等 等.而有些词语虽然出现频率较高,但是是实例而不是概念,例如“温带”和“中国”.还有些词语虽然出现频繁,但 是与地理学科并不具有强相关性,例如“清单”“现象”“年代”“产生”“作用”等. (2) 参考质量较高的知识图谱或数据源. 我们主要参考了 Schema.org(https://schema.org.cn)、DBpedia(http://mappings.dbpedia.org/server/ontology/ classes/)和 Geonames.Schema.org 是一套包含语义信息的被各大搜索引擎所支持的 html 标签的词汇表,这里的 标签等同于概念;DBpedia 是一个大规模的通用知识图谱,因此它也有一套概念体系;Geonames 中的每个地名都 有对应的 featurecode 信息,而这些 featurecode 对应的就是概念. (3) 众包半自动语义标注步骤中进行完善补充. 以上方法得到的核心概念的归纳整理需要参照本体构建的两个基本原则,即,本体中类的设计应当秉承独 立性和共享性原则[10].前者指的是这个类可以独立存在,不依赖于特定的领域;后者指的是类是可以共享的,即 有被复用的可能和必要.此外,本体中包含的类的数目应该尽可能地最小化,尽可能地去除冗余的类.根据上面 的原则,我们最终确定了地理学科的核心概念.如图 2 展示的是位于“地理事实”概念下的核心概念(每个节点是 一个概念,节点之间的连线表示父概念(靠近中心的节点)和子概念(远离中心的节点)的关系). Fig.2 Concepts in geographical ontology (part) 图 2 地理学科本体中的核心概念(部分)
杨玉基 等:一种准确而高效的领域知识图谱构建方法 2937 2.1.2 定义领域关系及其约束 关系是本体的核心基本要素,它是对领域中的概念、实例之间的相互作用的描述.关系直接决定了本体知 识图谱的知识丰富程度以及基于知识图谱构建的其他应用系统的功能范围.关系学习是本体学习中的一个重 要部分,我们主要通过 4 种方法来定义关系. (1) 利用 OpenIE 方法对地理学科领域文本进行无监督的开放关系抽取,再从中找到有意义的关系.优点 是无需标注语料或其他预处理直接就可以抽取原始文本,缺点是抽取出的结果大多数是像(船员们- 历经-千辛万苦)这样无意义的关系.我们将从 27 本地理教材教辅中得到的 63 567 个句子用 Stanford 的 OpenIE 工具(https://stanfordnlp.github.io/CoreNLP/openie.html)处理后,得到了 112 145 个带有打分 值的关系抽取结果,并在此基础上对关系进行过滤; (2) 参考质量较高的知识图谱或数据源 Wikidata(https://www.wikidata.org/wiki/Wikidata:Main_Page)和 Schema.org.Wikidata 是维基百科的结构化版本,也可以理解为是一个大规模的通用知识图谱,我们主 要 参 考 了 地 理 概 念 相 关 的 关 系 列 表(https://www.wikidata.org/wiki/Wikidata:List_of_properties/Geo- graphical_feature);Schema.org 在每个标签下有其对应的众多关系,我们也主要参考了地理领域相关 的标签,例如“城市”标签(https://schema.org.cn/City); (3) 根据核心概念和百科信息框来确定关系.每个核心概念下都有很多实例,大多数实例在百科中都有对 应的信息框.通过整合同一概念下多个实例的信息框信息,便可以得到该概念下较为重要的关系.例 如“国家”概念下有“中国”“美国”“俄罗斯”等国家,这些国家的信息框中都包含了“面积”“人口数量”等 关系,那么这些关系就比较重要; (4) 众包半自动语义标注过程中补充新的关系.在众包半自动语义标注过程中,如果发现有新的关系无法 用已有的关系表达时,便说明这是一个新的关系需要补充. 根据上述方法,我们最终整理得到了 400 多个关系,对于每个关系都有详细的描述,包括关系的名称、描述、 URI 形式、定义域和值域等内容,表 1 是地理学科的“特征”关系的详细描述. Table 1 Description of a relation called “characteristic” 表 1 “特征”关系的描述 描述 名称 Label 关系的名称 Description 关系的描述 关系的 URI URI 值 特征 地理常用属性:特点,特性 http://edukb.org/knowledge/property/geo#tezheng Domain 关系的定义域 [“http://www.w3.org/2002/07/owl#NamedIndividual”] Range Type [“http://www.w3.org/2000/01/rdf-schema#Literal”] 关系的值域 关系的类型 数值属性 2.1.3 本体检查 目前,学术界研究学者公认,在构建领域本体的过程中需要领域专家的参与和协作,所以在完成了前面的本 体构建的两个步骤之后,我们特别邀请了北京市具有丰富教学经验和教材分析能力的地理学科专家和一线教 师来指导我们对本体进行检查和评估.根据专家的指导意见,我们修改和完善后得到最终的地理学科领域本体. 地理专家和一线教师的指导主要包括两方面:一是核心概念的结构是否合理,例如专家建议总的可以分为地理 概念、地理事实、地理方法和地理原理;二是每个概念的合理性、必要性以及相似概念间的辨析,例如专家建 议要有“地理名人”这个概念. 2.2 众包半自动语义标注 标注数据是地理学科知识图谱的基础和重点,我们采取的是众包半自动语义标注的方式来保证质量和效 率.标注的数据来源是 HTML 格式的教材教辅文本. 基于领域本体的语义标注是指在领域本体的指导下,从文档中抽取出结构化知识的过程,即,将文档中的纯 文本知识用 RDF 语言描述出来.语义标注的过程通常可以包含两种标注.
2938 Journal of Software 软件学报 Vol.29, No.10, October 2018 (1) 类型标注:将文档中与本体中概念相对应的词语标记出来,并将该词语作为概念所对应的实例; (2) 关系标注:找出实例之间存在的与本体中关系相对应的关系,关系标注可以丰富实例的内在信息. 标 注时,通常将实例及实例间的关系表示为三元组的形式(E1,R,E2),其中,R 是实例 E1 和 E2 之间的关系. 从对比结果中,我们可以总结出语义标注系统作为知识图谱构建的关键系统,其主要需求包括以下几点. (1) 标注依据:语义标注系统提供的是基于本体的语义标注功能,所以它必须要能够导入一个或多个本体 描述文件,或者采用包含本体信息的文件进行配置,这样,语义标注系统才有了基本的标注依据; (2) 标注对象:语义标注系统一般都支持对文本文件或者静态网页文件的标注,目前,大多数的教材教辅 书籍数据都存放在静态网页文件中,所以语义标注系统需要支持对静态网页文件的标注功能; (3) 标注方式:语义标注系统必须能提供基本的标注功能,包括类型标注和关系标注.同时,考虑到教材教 辅书籍数据中存在着大量的图片也需要进行标注,所以语义标注系统还要能够支持图片标注的功能; (4) 本体语言:目前,大多数的语义标注工具都只支持 RDF(S)、DAML+OIL、XML 等本体语言中的某个 或者某几个,而对 W3C 推荐的最新的本体描述语言 OWL 支持较少.所以为了更好地使用不同的本体 语言,语义标注系统应该能够支持目前主流的本体语言,例如 RDF(S)和 OWL. 除了上面 4 个基本需求之外,结合我们构建的地理学科知识图谱目标,我们认为,以下需求对于语义标注系 统同样重要. (1) 协同式标注:出现时间较早的语义标注系统一般都是 C/S 模式的,不仅需要标注人员安装客户端,而且 软件配置和语义标注过程都不太方便.随着互联网的发展,基于 B/S 模式的语义标注系统逐渐出现,因 为它可以很方便地支持大量标注人员的协同式标注,显著地提高了标注速度; (2) 标注审核:标注系统应该具有一定的用户权限控制.简单情况下,用户主要包括标注人员和审核人员 两种,其中,标注人员只能编辑和删除自己的标注记录,而审核人员可以编辑和删除当前页面所有标 注人员的标注记录; (3) 标注溯源:对于任何一条由页面标注而产生的知识,在生成对应知识的同时需要保存将来能够追溯到 具体的标注来源这个元数据信息.通常,标注溯源都是采用 XPointer[47]技术来实现的,XPointer 是一种 根据数据在 XML 文件中的位置、字符内容或者属性值等特性对数据进行定位的语言; (4) 标注数据存储:标注数据的存储也是需要重点考虑的问题,目前已有不少出色的 RDF 数据库可供选 择.其中,Sesame[48]数据库是一个开源项目,它不仅架构简单易于部署,而且功能完善易于操作.它实现 了一个通用的 RDF 数据管理框架,并提供了相应的编程接口,以便于集成不同的存储系统、推理和查 询引擎等; (5) 共指消解:实例的共指问题是标注网页数据的过程中经常出现的问题,它是指在不同的网页文档中出 现了相同的实例,例如,多个文档中都出现了地名实例“中国”.为了避免产生多个重复冗余的实例, 标 注工具应该具有实例查询的能力,这样,当遇到相同实例时,可以选择已经存在的实例进行标注,从而 避免重新生成新的实例造成的实例共指问题. 针对以上几点需求,结合当前要构建的地理学科知识图谱目标,我们提出相应的语义标注的架构,如图 3 所 示.在地理学科本体和资源管理系统的基础上,利用语义标注系统,通过标注人员的标注产生标注数据库,最终 清洗导出到标注数据中. 我们研发的语义标注系统在原 Pundit 系统功能的基础上添加了许多新的功能,例如, (1) 标注审核权限控制:为了保证标注结果的准确率,对标注人员的标注结果进行审核是语义标注系统的 一个核心需求; (2) 添加本体描述文件作为标注系统的配置:原系统虽然支持自定义属性和领域词表,但是它并不直接支 持将本体描述文件作为标注系统的配置,也不支持根据网页数据类型灵活地改变属性和领域词表的 功能.所以,为了方便语义标注系统能够自适应不同领域的本体配置,我们添加了此项功能; (3) 自定义新建实例和搜索实例.当实 例的名称在页面内容中不存在时,如何创建新的实例?考虑到在标
分享到:
收藏