«上一篇 下一篇»
  计算机工程  2022, Vol. 48 Issue (12): 140-149  DOI: 10.19678/j.issn.1000-3428.0063070
0

引用本文  

张晓明, 郑理欣, 王会勇. 基于图排序和最大信息增益的领域实体抽取方法[J]. 计算机工程, 2022, 48(12), 140-149. DOI: 10.19678/j.issn.1000-3428.0063070.
ZHANG Xiaoming, ZHENG Lixin, WANG Huiyong. Domain Entity Extraction Method Based on Graph Sorting and Maximal Information Gain[J]. Computer Engineering, 2022, 48(12), 140-149. DOI: 10.19678/j.issn.1000-3428.0063070.

基金项目

河北省自然科学基金(F2018208116);河北省高等学校科学技术研究重点项目(ZD2021048)

通信作者

王会勇(通信作者),副教授、博士

作者简介

张晓明(1975—),男,教授、博士,主研方向为语义计算、知识图谱;
郑理欣,硕士研究生

文章历史

收稿日期:2021-10-27
修回日期:2022-01-12
基于图排序和最大信息增益的领域实体抽取方法
张晓明 , 郑理欣 , 王会勇     
河北科技大学 信息科学与工程学院, 石家庄 050018
摘要:领域知识图谱在各行各业中都发挥着重要作用,领域实体的获取则是构建领域知识图谱的重要基础。数据标注、编写抽取规则等现有的实体抽取方法往往需要较多的人工参与工作。提出一种基于图排序的实体抽取方法和基于最大信息增益的实体扩展方法来构建领域实体集,通过实体识别获得候选实体,基于维基百科的背景信息计算候选实体间的相关度构建实体图,并利用基于置信度传播的图排序算法筛选领域核心实体。在DBpedia中根据最大信息增益来平衡类与领域核心实体相关性及类的抽象程度两个因素以生成实体扩展的共性类。在此基础上,通过SKOS体系中的“Is subject of”关系获得共性类的实例实体,并根据基于字符串相似和结构相关度的方法对扩展实例实体进一步筛选,最终获得全面、准确的领域实体集。以数据结构课程为例构建该课程领域实体集,得到1 115个实体。实验结果表明,在领域数据集上,领域实体抽取F1值达到0.67,能够在较少人工参与的条件下有效获得领域实体,有助于领域知识图谱的构建。
关键词实体抽取    实体扩展    图排序算法    最大信息增益    知识图谱    
Domain Entity Extraction Method Based on Graph Sorting and Maximal Information Gain
ZHANG Xiaoming , ZHENG Lixin , WANG Huiyong     
School of Information Science and Engineering, Hebei University of Science and Technology, Shijiazhuang 050018, China
Abstract: Domain knowledge graphs play an important role in various industries, and the acquisition of the domain entity is an important basis for their construction.However, existing approaches frequently rely on human work such as data annotation and the compilation of extraction rules.To address this problem, this paper proposes a graph-based propagation method for extracting entities and provides an expansion of the core entities using the concept of maximal information gain. Subsequently, an entity graph is constructed through entity recognition, the relevance of the candidate entities is calculated, and the domain entities are screened using the graph sorting algorithm based on confidence propagation.The entities are then expanded according to the maximal information gain principle to balance the correlation and degree of abstraction of classes, which are used to generate generic classes.Finally, the instance entity of the generic class is obtained using the "Is subject of" relationship of the SKOS system, and the extended instance entity is filtered based on string similarity and structural relevance to obtain a comprehensive and accurate domain entity set. This paper takes a data structure course as an example to construct the entity set of the course domain, and 1 115 entities are obtained. The results show that the domain data set F1 of the entity extension experiment reaches 0.67, which can effectively obtain domain entities with less human participation, making it is useful in the construction of domain knowledge graphs.
Key words: entity extraction    entity expansion    graph sorting algorithm    maximal information gain    knowledge graph    

开放科学(资源服务)标志码(OSID):

0 概述

随着知识图谱技术的发展,越来越多的研究开始从通用知识图谱转向领域知识图谱,例如医疗知识图谱、金融知识图谱、电商知识图谱、课程知识图谱等。领域知识图谱中的节点是领域实体,因此,领域实体的挖掘是构建领域知识图谱的基础。以课程知识图谱为例,将传统的非结构化文本形式转化为以课程术语实体为核心的知识图谱,更易于学生对学科架构[1]、知识点的学习。教育知识图谱中的节点具有多样性,如节点可以为术语、视频资源、知识点等,而术语是最基础、最细粒度的学习资源。因此,构建课程领域实体集对教育知识图谱的构建起着重要的作用,为教育课程推荐、个性化学习等任务[2-4]奠定了基础。

目前对于实体抽取方法的研究主要采用基于机器学习的方法、基于深度学习的方法和基于关系的方法。垂直领域实体抽取与公开领域实体抽取特点不同,垂直领域的语料较少,标注数据稀缺,因此基于机器学习的方法、基于深度学习的方法在领域实体抽取过程中存在一定的限制。基于关系的实体抽取方法则是先获得候选实体,然后在给定种子的基础上利用实体间关系进行排序筛选,其中对于非结构文本数据源需要先构建相关度等关系再进行排序,对于结构化的知识则通过一定的策略利用已有的结构关系进行实体挖掘。

本文提出一种基于关系的领域实体挖掘方法,基于结构相关度从文本中构建实体图以抽取领域核心实体,根据最大信息增益原理在DBpedia中对核心实体进行扩展。通过对基于维基百科的TagMe系统进行实体识别,计算实体间的相关度,并根据图排序算法进行实体抽取获得领域核心实体作为种子实体集,在CSEN、EcoEN数据集上对实体抽取方法进行评估。基于种子实体集在DBpedia中计算具有最大信息增益的类,并将其实例经筛选后作为扩展实体,最终在INEX数据集上对实体扩展方法进行评估。

1 相关工作

早期的实体抽取分为基于规则的方法[5-6]和基于统计的方法[7-8]。基于规则的方法抽取的实体准确率较高,但依赖领域语言特点,且领域移植性较差。基于统计的方法利用术语共现和词频等特征抽取实体,对低频术语不敏感,且依赖目标语料库。因此,基于以上方法的局限性,目前对实体抽取的方法主要采用基于机器学习的方法、基于深度学习的方法和基于关系的方法。

1.1 基于机器学习的实体抽取

该方法一般通过序列标注[9]、术语分布等特征利用分类算法抽取实体,通常需要大量的训练数据训练算法模型,实体抽取的准确率较高。但不同于通用领域的数据,领域的标注数据较为缺乏,由领域专家来标注数据则会消耗大量的时间和人力资源,因此这种方法在构建领域实体集时代价成本较高。

1.2 基于深度学习的实体抽取

该方法通过对文本向量嵌入,将嵌入向量输入到深度学习模型中,经过多个处理层的学习来抽取实体。基于深度学习的实体抽取方法不需要人工特征工程,具有强大的学习能力,也是近年来较好的实体抽取方法,典型的神经网络模型有BiLSTM[10-11]、CNN-LSTM-CRF[12-13]等,但该方法也存在一些限制,例如需要大量的标注数据,训练模型的时间较长,且存在模型复杂、可解释性弱的缺点。

1.3 基于关系的实体抽取

该方法通常在给定少数种子的条件下,利用候选实体间的关系进行排序来抽取领域实体。候选实体间的关系有类别信息[14]、结构路径关系[15]、语义路径[16]、语义距离[17]等。排序过程通常利用图排序算法[18]通过主题信息进行编码或利用候选实体之间的相互加强关系[19]来提高候选词的排名效果。

基于图排序的实体抽取方法较为常用,该方法的来源为PageRank算法,将实体间关系紧密程度和领域实体的置信度作为衡量领域实体的依据,以此来迭代更新实体节点的置信度。例如利用单词上下文的语义信息[20]、位置信息[21]及图结构的主题信息[19]迭代更新图,对候选术语进行排序。基于图排序的实体抽取方法不需要大量的标注数据,不存在低频术语不敏感问题,是效率较高的实体抽取方法。

基于关系的实体抽取方法不需要大量的人工参与,具有普适性及可解释性的优点,因此利用该类方法构建课程领域实体集。首先利用维基百科的信息计算相关度来构建实体间关系,通过排序算法从中抽取领域核心实体,然后在知识图谱中利用最大信息增益进行实体扩展,最后通过计算扩展实体与领域核心实体的相关度进行扩展实体的过滤,提高领域实体集的质量。

2 问题描述

本文研究的问题是如何构建领域实体集。首先从文本中构建候选实体图,并利用图排序算法抽取领域核心实体;然后对DBpedia中的subject关系利用最大信息增益原理对核心实体进行扩展;最后通过实体过滤策略进一步提高领域实体集的准确性。任务描述如图 1所示。

Download:
图 1 任务描述 Fig. 1 Tasks description

对使用的符号进行以下定义,候选实体图表示为G=(TR),其中包括候选实体节点T和候选实体间的相关度Rtii=1,2,…,n)表示候选实体,riji=1,2,…,nj=1,2,…,n)表示候选实体titj的相关度,TC为领域核心实体集(TC$ \subset $T),TC的扩展实体集表示为TE,扩展实体集筛选过滤得到的领域全部实体集表示为TD

领域实体集获取方法主要包括3个步骤:

步骤1   在文本中进行实体识别,计算两两实体间的相关度构建实体图G,并通过基于置信度传播的图排序算法得到领域实体TC

步骤2   将文本抽取的领域实体TC作为种子,利用DBpedia中的subject关系进行实体扩展,得到扩展实体集TE

步骤3   通过筛选策略对扩展的实体过滤,以提高领域实体集的准确率,获得领域实体集TD

3 基于图排序的实体抽取

基于文本的实体抽取主要分为构建候选实体图和对候选实体排序两大步骤。

3.1 候选实体图的构建

构建候选实体图的目的是利用文本中的实体及实体间的关系构建一个图,思想为识别文本中所有的实体作为候选实体集,候选实体之间通过相关度建立相关关系,这样就形成了一个结点为候选实体、边为相关度的候选实体图。

文本中的实体通常以缩读、口语化等形式出现,使得多个名词性短语表达的是同一实体,因此将文本语料中的名词性短语和维基百科中的实体建立映射关系,减少冗余实体。实体映射过程利用TagMe系统[22]对输入的文本自动识别出实体,并返回维基百科对应的实体。

候选实体间通过相关度建立关联,候选实体间的相关度是指两个候选实体存在相关关系的可能性大小,其取值为[0~1],值越大表示两候选实体间的相关性越强。每个实体在维基百科中有详细描述信息,在描述信息中提及次数较多的实体通常与该实体具有较强的相关程度,且每个相关实体都是以超链接形式存在的。因此,利用WML[23]模型,通过比较两个维基百科页面的输入和输出的超链接来衡量其语义相关度。对于两个候选实体titjIJ是分别链接到titj的维基百科页面的超链接集合,W是维基百科中实体的集合,rtitj)表示两候选实体间的相关度,通过WML计算,如式(1)所示:

$ r({t}_{i}, {t}_{j})=\frac{\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}\left(\mathrm{m}\mathrm{a}\mathrm{x}\right(\left|I\right|, \left|J\right|\left)\right)-\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}\left(\right|I\bigcap J\left|\right)}{\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}\left(\right|W\left|\right)-\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}\left(\mathrm{m}\mathrm{i}\mathrm{n}\right(\left|I\right|, \left|J\right|\left)\right)} $ (1)

候选实体图G由所有的候选实体T和候选实体间的关系R组成,其中两两候选实体都通过相关度计算建立联系,但由于较低的相关度值rtitj)在接下来的基于置信度传播的图排序算法中可能引入噪声,因此引入了一个相关度阈值α来修剪图,即当候选实体间的相关度rtitj)大于阈值α时才保留在图G中。

3.2 基于置信度传播的图排序算法

对实体图的候选实体按照与领域的相关程度排序得到领域实体。对于实体图G中的每个候选实体ti,将conf(ti)作为领域实体的置信度。与较高置信度候选实体相关度高的实体很大可能也是该领域实体,从而可以发现其他潜在的领域实体。这里利用基于置信度传播的图迭代算法CCP[18]对候选实体进行排序。

首先给图G中的每个候选实体ti分配一个初始置信度,然后通过相邻候选实体的置信度及候选实体间的相关度迭代更新每个候选实体节点的置信度值。初始情况候选实体的置信度值由种子集决定,即将种子实体置信度值设为1,其他候选实体置信度值设为0。实体ti的置信度用conf(ti)表示,ti迭代k次后实体的置信度用conf k+1ti)表示,Ati)表示与候选实体ti的邻居实体。置信度更新过程则是由Ati)投票得分的平均值计算而来,即每次置信度的更新受其邻居实体的影响,若邻居置信度较高,则表示该实体是领域实体的可能性也越大。达到迭代停止条件时通过设定截止置信度阈值来选择领域实体,即置信度大于阈值的为领域核心实体TC,小于阈值的为非领域核心实体。图传播算法的迭代过程如式(2)所示:

$ \mathrm{c}\mathrm{o}\mathrm{n}{\mathrm{f}}^{k+1}({t}_{i})=\frac{1}{Z}\left(\frac{\sum\limits _{{t}_{j}\in A\left({t}_{i}\right)}v{s}^{k}({t}_{i}, {t}_{j})}{\left|A({t}_{i})\right|}\right), k=\mathrm{0, 1}, \cdots $ (2)

其中:Z为标准化因子,取值为所有候选实体置信度的最大值;|Ati)|表示ti邻居节点的个数;vsktitj)为候选实体tj对候选实体ti的影响,vsktitj)定义如式(3)所示,即tj的置信度与titj的相关度值乘积。

$ v{s}^{k}({t}_{j}, {t}_{i})=r({t}_{i}, {t}_{j})\mathrm{ }\cdot \mathrm{ }\mathrm{c}\mathrm{o}\mathrm{n}{\mathrm{f}}^{k}\left({t}_{j}\right) $ (3)

基于文本的实体抽取具体实例如图 2所示。以数据结构课程中的部分文本内容为例,通过TagMe系统识别出候选实体“Huffman coding,Binary expression tree,Data compression,Binary tree,Binary code,AA tree,Red-black tree”。计算两两候选实体间的相关度,并将相关度值小于阈值α的边r(Huffman coding,Binary code)、r(Data compression,Binary expression tree)、r(Binary tree,Binary code)等剪枝。给定种子实体为“Binary tree,Red-black tree”,则conf0(Binary tree)=1,conf0(Red-black tree)=1,其余候选实体初始置信度为0,第1次迭代后各候选实体的置信度更新。迭代达到停止条件后取大于置信度阈值实体TC(“Huffman coding,Binary expression tree,Binary tree,AA tree,Red-black tree”)为数据结构课程实体。

Download:
图 2 实体抽取实例 Fig. 2 Entity extraction example
4 基于最大信息增益的实体扩展 4.1 方法步骤

由于从文本中抽取的领域实体不够全面,因此需要进行实体扩展。下文对使用的概念进行定义,类表示实体在DBpedia中通过subject关系相连的抽象概念。每个实体有多个类,例如Red-black tree的类有Binary trees、1972 in computing等。

利用DBpedia的subject关系获得种子的类,在类中利用最大信息增益获得与种子相关程度较高的类,称为共性类,然后将共性类的实例作为扩展实体TE,最后通过计算扩展实体与种子的相关程度进行筛选过滤得到领域实体TD。该方法主要包括以下3个步骤:

步骤1   生成共性类。实体从不同的角度来看属于不同的类,会划分到不同的类下,共性类则是与种子集相关的类,即共性类能尽可能多地涵盖种子集中的实体。

步骤2   共性类实例扩展。共性类通过subject的逆关系Is subject of得到共性类的所有实例作为扩展实体TE

步骤3   扩展实体过滤。通过计算扩展实体与种子的相关性对扩展实体进一步筛选,以提高领域实体集的准确率。

4.2 共性类生成

共性类利用种子集与类的相关性和类的抽象程度两个因素衡量。当类的抽象程度较高时,其包含的实例通常越多,与种子集有较强相关性的概率越大,但抽象程度较高的类包含的实例也就越杂,即非领域实体就越多,因此当类同时满足种子集与该类的相关性较高且类的抽象程度较低2个条件时才为种子集的共性类。为平衡这两方面因素的影响,采用最大信息增益原理将2个条件相结合,如式(4)所示:

$ \left\{\begin{array}{l}\begin{array}{l}{c}^{i}\left(t\right)=p\left({c}^{i}|{T}^{C}\right)\times \\ \sum\limits _{{c}^{j}\in C\left(t\right)}\left(p\left({c}^{j}|{T}^{C}\right)\times \left|\left(I\left({c}^{j}\right)-I\left({c}^{j}|{c}^{i}\right)\right)\right|\right)\end{array}\\ {c}^{\mathrm{*}}\left(t\right)=\underset{{c}_{i}\in C\left(t\right)}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{a}\mathrm{x}}\left({c}^{i}\left(t\right)\right)\end{array}\right. $ (4)

其中:ct)表示实体t的所有类;ci表示其中一个类;p表示实体t的类ci与种子集TC具有共同特性的程度,取值范围为[0, 1],值越大,表示类ciTC的共性程度越高;I表示类的抽象程度,通过类的实例个数来计算。

式(4)参考了文献[15]实体扩展方法,其方法是在DBpedia的DBO体系中,根据关系路径的抽象程度和该路径上的实体与种子的相关程度来选择合适的关系路径,并对路径上的实体进行相关度排序得到扩展实体。本文则是在DBpedia的SKOS体系中,通过计算subject关系对应的类与种子的相关程度及其抽象程度选择合适的类,并对其实例进行过滤筛选,其中根据类的实例集与种子集的共现情况来计算类的相关性,通过类包含的实例个数评判其抽象程度。

最大信息增益是用来描述一个属性区分数据样本的能力,在这里最大信息增益是用来衡量类与种子集的共性程度,判断是否为共性类是从该类的相关性和抽象程度两个方面确定的。因为相关性高的类通常抽象程度较高,抽象程度低的类与种子的相关性通常较低,而生成共性类的目标是高相关性与低抽象程度,所以要平衡存在矛盾的相关程度和抽象程度方面因素,采用Icj)-Icj|ci)来衡量,该公式表示在计算类ci的共性值情况下,周围类cjci的影响,cj的抽象程度越低且与ci的相关程度越高,对ci共性值的计算影响就越大。cit)值越大表示类ci与种子的相关度高,并且周边的类也与种子相关度高,同时周边类的抽象程度低。c*t)表示实例t的类中最大的共性值,最大共性值对应的类作为共性类。

4.2.1 种子集与类的相关性的计算

种子集与类的相关性由种子集与类实例的交集个数判断。判别方法如图 3所示,对于种子集t1t2t3t1的类:类1和类2,类1的实例包括t1t2t4t5t6,类2的实例包括t1t7t8t9,类1的实例与种子集有t1t2两个相同的实例,类2的实例与种子集有t1一个相同的实例。类的实例与种子集交集个数越多,该类与种子集的相关性越高,所以类1比类2具有更高的相关性。

Download:
图 3 种子集与类相关性示意图 Fig. 3 Schematic diagram of correlation between seed sets and classes

通过式(5)计算类与种子集的相关性程度,将两者的交集个数作为衡量相关性的标准。

$ p\left({c}^{i}\right(t\left)\right|{T}^{C})=\frac{‖E\left({c}^{i}\right(t\left)\right)\bigcap {T}^{C}‖}{‖{T}^{C}‖} $ (5)

其中:$ {T}^{C} $表示种子集;$ ‖{T}^{C}‖ $表示种子集的个数;Ecit))表示实例t的类ci的实例。

种子集与类的相关性计算具体实例如图 4所示。以种子集$ {T}^{C} $={AVL tree,B-tree,Red black tree}中AVL tree为例,其类为Soviet inventions,Binary trees,Search trees,AVL tree与3个类的实例交集个数分别为1、2、2,相关度分别为1/3、2/3、2/3,则与$ {T}^{C} $相关度高的类为Binary trees、Search trees。

Download:
图 4 种子集与类相关性实例 Fig. 4 Correlation between seed sets and classes example
4.2.2 类的抽象程度计算

类的抽象程度是指对实体描述的粗细程度,对实体描述的越抽象,抽象程度越高,即该类的实例涵盖范围越广,实体集间的相关性越小。实体扩展过程的目标则是生成抽象程度较低的类。通常抽象程度高的类,其实例数量一般也越多,抽象程度越低的类,其实例数量越少。因此,通过类的实例数量来判断其抽象程度,计算公式如式(6)所示:

$ I\left({c}^{i}\left(t\right)\right)=\left|\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}\frac{‖E\left({c}^{i}\right(t)‖}{N}\right| $ (6)

其中:Nt的类中实例个数最大的值;I值越大表示类的抽象程度越低,即该类的表达粒度越细。目标是获得抽象程度低的类,即I值越大越好。

通过式(7)探究类和周边的类之间的相关性,其值越小表示各个类之间的关联强度越强。类cj与类ci的相关性越强,则表明类cj对类ci的影响越重要,该值越小越好。

$ I\left({c}^{j}\left(t\right)\left|{c}^{i}\right(t)\right)=\left|\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}\frac{‖E\left({c}^{j}\right(t)\bigcap E({c}^{i}\left(t\right)‖}{E\left({c}^{i}\right(t\left)\right)}\right| $ (7)

由于取共性类时仅将共性值最大的一个类用来扩展,使得扩展的实例较少,因此为提高领域实体的召回率,采用松弛机制适当放松生成类的条件,即为每个实体生成多个共性类,使得在保证一定查准率的同时提高扩展实体的查全率。当类ci的共性值cit)与最大共性类值c*(t)比值大于阈值$ \theta $时,类ci也作为实体的共性类。如图 4中AVL tree的类中Search trees、Binary trees都和数据结构课程的关联性较强,若仅选择其中一个类来扩展,则扩展的实例较少,因此在使用松弛机制后生成了多个类,会进一步提高领域实体的召回率。

4.3 实例扩展和过滤

通过以上步骤获取共性类,在DBpedia中,共性类与其实例之间通过关系(Is subject of)相连,因此通过该关系提取共性类的实例作为扩展实体。例如AVL tree的类Search trees包含的实例:Red black tree,Binary Search tree,(ab)-tree,…均为AVL tree的扩展实体。

扩展过程也会引入噪声,例如类Binary trees的实例中除Binary search tree、Top tree外,还有Interleave lower bound、Rotation distance这样的非数据结构的实体,因此需要对扩展实体再进行筛选。

领域实体中许多实体是由单词拼接而成的,以数据结构课程为例统计了术语实体中由词缀拼接而成的情况,如图 5所示,这对判别术语实体间相似度有着很大的参考价值。

Download:
图 5 领域实体特点分析 Fig. 5 Analysis of domain entities characteristics

但基于字符串相似的特征具有局限性,没有考虑到实体间结构语义相关性,因此在计算扩展实体tj与种子集$ {T}^{C} $相关度时,将基于字符串的相似度Comm(titj)和基于结构的相关度rtitj)进行相加作为实例与种子集的相关度Sim,如式(8)所示:

$ \mathrm{S}\mathrm{i}\mathrm{m}\left({t}_{j}\right)=\frac{\sum \limits_{{t}_{i}\in {T}^{C}, {t}_{j}\in {T}^{E}}\mathrm{C}\mathrm{o}\mathrm{m}\mathrm{m}({t}_{i}, {t}_{j})+r({t}_{i}, {t}_{j})}{‖{T}^{C}‖} $ (8)

字符串相似度计算采用SMOA算法[24]的Comm方法,如式(9)所示:

$ \mathrm{C}\mathrm{o}\mathrm{m}\mathrm{m}({t}_{i}, {t}_{j})=\frac{2\times \mathrm{l}\mathrm{e}\mathrm{n}\left(\mathrm{m}\mathrm{a}\mathrm{x}\;\mathrm{C}\mathrm{o}\mathrm{m}\mathrm{S}\mathrm{u}\mathrm{b}\mathrm{S}\mathrm{t}\mathrm{r}\mathrm{i}\mathrm{n}\mathrm{g}\right)}{\mathrm{l}\mathrm{e}\mathrm{n}\left({t}_{i}\right)+\mathrm{l}\mathrm{e}\mathrm{n}\left({t}_{j}\right)} $ (9)

其中:分子为两个字符串的最大公共子串长度的两倍;分母为两字符串的长度之和。

基于结构的相关度rtitj)利用TagMe系统实现,原理如式(1)所示。

扩展实体筛选过程首先计算扩展实体与每个种子的相关度,然后将该扩展实体与种子集相关度均值作为该扩展实体的相关程度,最后将扩展实体按相关度值由大到小排序,取topN为领域实体TD

5 实验结果与分析 5.1 实体抽取实验分析

本节首先分析实体间相关度阈值α和图传播算法迭代次数两个参数的影响,然后在最佳参数条件下与实体抽取基线方法分别在公开数据集和领域数据集上进行对比。

5.1.1 数据集和评价指标

在数据集CSEN、EcoEN[18]上进行实体抽取实验对比。数据集CSEN、EcoEN是从MOOC平台的Coursera和XuetangX上收集计算机科学和经济学英文版本的课程资源,其中从8个计算机科学课程中收集视频字幕来形成CSEN数据集,从5个经济学课程中选取视频字幕来构建EcoEN数据集。

实验评测指标选择精确率P、召回率R、F1值、R-precision(Rp)、mean Average Precision(mAP)。精确率P是指扩展结果中领域实体个数与扩展实体个数的比值。召回率R是指扩展结果中领域实体个数与领域实体个数之比。F1值是对精确率P和召回率R的综合评价。Rp是一个关注排名的信息检索指标,给定一个包含n个种子的排名列表,它计算排序后的前n个实体中领域实体的精确率。平均精度均值(mAP)是信息检索中评价排名列表的重要评价指标,AP指的是在不同召回率上的准确率,mAP是AP的平均值,如式(10)所示:

$ {m}_{\mathrm{m}\mathrm{A}\mathrm{P}}=\frac{\sum\limits _{i=1}^{n}P\left({R}_{i}\right)}{n} $ (10)

其中:n为种子的个数;Rin个召回率;PRi)表示在召回率为Ri时的准确率。

5.1.2 实体抽取实验参数设置

实体相关度阈值α这一参数控制着实体图中边的建立。当α过小时,一方面使得实体图中的边较多,计算复杂度大,另一方面使得置信度传播过程噪声增大。当α过大时,会使得存在相关性的实体间因未建立边而造成召回率较低。如图 6所示,当α取0.2时Rp、mAP取得最高值,因此实体图构建时候选实体间相关度阈值设为0.2。

Download:
图 6 不同阈值的Rp和mAP值 Fig. 6 Rp and mAP values of different thresholds

迭代次数决定图迭代何时结束,迭代次数过少会使得置信度不能充分传播到每个实体上,导致领域实体的实体置信度值较低而被过滤掉,从而使召回率较低。迭代次数过多则会使置信度值趋于一致,从而引入非领域实体且浪费计算资源。图 7所示为在不同迭代次数的条件下Rp和mAP值。迭代次数过少则无法扩展更多的领域实体,例如当初始条件时(即迭代次数为0)领域实体仅为种子,迭代次数过多则在扩展实体中引入非领域实体,例如当迭代次数过多时,高置信度的实体会被邻居节点的投票得分拉低,导致领域实体与非领域实体置信度值趋于一致。从图 7可以看出,迭代次数从6到11时尚有下降趋势,说明迭代过程中扩展了领域实体,导致种子实体排名下降。第11次迭代后基本不变,说明基本不再扩展更多的领域实体,所以种子实体排名也基本不变,如果继续迭代则会使得所有实体置信度值的差值越来越小,不利于根据置信度值判定是否为领域实体,因此最佳迭代次数为11。

Download:
图 7 不同迭代次数的Rp和mAP值 Fig. 7 Rp and mAP values of different iterations
5.1.3 与基线实验的对比

实体抽取的实验基线选取了两个基于统计的方法TF-IDF和PMI,两个基于图的方法TextRank、topic PageRank(TPR)与CCP,基线结果来自文献[18]。从表 1可以看出(粗体数字为最优结果),在CSEN数据集上的Rp和mAP评价指标仅次于最优的CCP方法,在EcoEN数据集上Rp指标达到最优效果,mAP指标仅次于TPR方法。总体分析可以看出,本文实验效果与CCP接近,但本文实验不需要搜集大量的领域资料与嵌入过程,相比而言,本文实验的操作更加便捷。

下载CSV 表 1 实体抽取结果 Table 1 Results of entity extraction
5.1.4 领域数据集的实体抽取实验结果

数据结构领域实体抽取数据源为数据结构教材,以每章中的节为单位进行实体抽取,评价结果为各节评测值的平均值。实验对比基线为TextRank、TF-IDF,评价指标采用P@n、Rp和mAP,在P@nn分别取值5、10、20,结果如表 2所示(粗体数字为最优结果)。

下载CSV 表 2 数据结构领域实体的抽取结果 Table 2 Extraction results of data structure domain entity

由于基于图的TextRank方法和基于词频统计的TF-IDF方法均受到语料规模及质量的影响,因此在语料相对较少的情况下实验效果较差,而本文所提出的方法则是利用维基百科作为背景知识进行实体抽取,因此受语料影响较小,从而具有较好的实验结果。

表 2中可以看出,在评测指标P@n中,随着n的增大,P@n呈下降趋势,这是合理的现象。因为实体按领域性相关性排序后,在领域相关性越强的部分领域实体越密集,随着领域性的减弱,领域实体越稀疏,所以会出现在P@n中随着n的增大,P@n减小的趋势。

5.2 实体扩展实验分析

本节首先分析实体扩展实验中参数的影响,然后将扩展方法与基线在公共数据集INEX上进行对比,最后分析在数据结构课程领域数据集上的扩展结果。

5.2.1 数据集和评价指标

公共数据集采用INEX-XER2009[25](INEX),领域数据集采用本文构建的数据结构领域术语实体集。INEX是一个包含60个主题的数据集,其中每个主题包含一个问题描述和若干个种子,按每个话题给出种子个数(seed = 2、3、4、5),INEX分为4组数据。该数据集常被用来评估实体检索相关任务,如实体排名、实体扩展任务。数据结构领域实体由5名计算机专业研究生手动标注,取其公认的领域实体作为数据结构领域实体集。

评估测度采用召回率R、准确率P、F1值和前n个结果的准确率P@n,本文取P@5、P@10和P@20。

5.2.2 松弛机制参数的影响

为研究松弛机制对扩展实验的影响,在INEX的4组数据上评估松弛阈值$ \theta $的影响。松弛机制的目的是获得较高的召回率,因此这里的评测指标仅为R,结果如表 3所示。从表 3可以看出,随着$ \theta $的减小,召回率R不断增大。当考虑种子数量seed的影响时,在seed取值为2、3、4时,随着种子个数的增加,召回率也在提升,这表明种子越多,实体扩展方法的性能越好。当seed取值为5时,召回率较小,这是因为种子越多,其共性会减弱,使得召回率较低。当考虑松弛阈值$ \theta $的影响时,随着$ \theta $的减小,召回率R不断提高,当$ \theta $取0.6时,R值最大,但当$ \theta $从0.7减小到0.6时,R的增幅较小,但每降低较小的阈值,得到的扩展实体个数会增加很多,扩展结果中有很多的非领域实体,使得实体筛选的时间较长。因此,松弛阈值取0.7。

下载CSV 表 3 松弛机制参数$ \mathit{\theta } $R的影响 Table 3 Influence of relaxation mechanism parameters $ \mathit{\theta } $ on R
5.2.3 实体扩展与基线实验的对比

本文实验将与已有的7个基线进行比较,基线和基线间的实验结果来自文献[18]。基线包括LDSD、BBR、ARM、QBEES、SEAL、ESER。其中,LDSD是基于链接的实体扩展方法,BBR、SEAL为基于非结构化文本的实体扩展方法,ARM为基于关联规则挖掘的方法,以及基于种子共同特征的QBEES、ESER实体扩展方法。

在INEX的4组数据上评测P@5、P@10和P@20,将4组结果的均值作为评测结果,如图 8所示。

Download:
图 8 不同基线的对比结果 Fig. 8 Comparison results of different baselines

基于知识图谱的扩展方法LDSD表现较差,这是因为其利用的是文本描述中出现的带有超链接的相关实体来评估实体间的相似性,没有考虑种子的语义相关性。基于自然语言处理模型的实体扩展方法表现优于LDSD,但相较于本文基于语义结构的方法扩展效果相对较差,这也表明了基于自然语言处理模型从非结构化文本中扩展实体有一定的局限性。ARM应用关联规则挖掘来发现频繁模式,利用种子间的共性提高了召回率,但其排序模型不足以达到良好的准确性。由于知识图谱是不完整的,QBEES应用严格的模式检索类似的实体会导致召回率较低。SEAL从搜索引擎的强大功能中收益良多,使得检索到的网页与种子相关度较高,然而在某些情况下很难从非结构化文本中发现和提取种子的共性。ESER在结构化知识图谱中通过挖掘种子的公共语义路径扩展实体有着良好的表现,但随着种子个数的增加,挖掘的路径越多,导致扩展的实体精度降低。本文方法在INEX上综合表现最好,因为在扩展过程中仅利用了知识图谱中的一跳路径,即类与实例的关系,避免路径过长出现语义漂移,再利用扩展实体与种子实体的字符串相似性和结构距离相关性对扩展实体排序,使得扩展实验在拥有较高召回率的基础上提高TopN的准确率。

排序后的扩展实体在相关度越高的部分领域实体越密集,随着相关度的降低,领域实体越稀疏,所以P@n随着n增大而减小。

5.2.4 领域数据集的实体扩展实验结果

在数据结构领域数据集上按章节进行实体扩展,即以每章节的核心术语实体为种子在DBpedia中扩展。在实验评价中随机选取了3个章节PR和F1值的平均值作为领域实体扩展的评测结果。不同松弛机制阈值下的实体扩展结果如表 4所示。

下载CSV 表 4 数据结构领域实体的扩展结果 Table 4 Extension results of data structure domain entity

表 4可以看出,阈值越低召回的领域实体越多,因此将松弛机制阈值$ \theta $为0.7时的扩展实体进行标注获得领域实体。随着松弛阈值的减小,P值降低,R提高,这是因为阈值越小,扩展得到的实体越多,使得R提高,同时也因为引入了更多的非领域实体使得P降低。从综合评价指标F1可知,当阈值$ \theta $取0.8时,扩展的数据结构领域实体效果最佳。

5.3 结果展示

从数据结构课程文本中分别抽出各章节的核心实体,例如从讲解Heap的章节中抽取出实体Binary heap、Heap(data structure)、Binomial heap,在DBpedia中利用实体的subject关系(Is subject of的逆关系)选择类Heaps,类通过Is subject of获得其实例,最后通过实体筛选过滤,得到扩展实体Fibonacci heap、Breadth first traversal、Treap等。通过挖掘课程领域核心实体和从DBpedia中扩展实体共获得数据结构领域实体1 115个,结果如图 9所示。

Download:
图 9 实体扩展示例 Fig. 9 Entity expansion example
6 结束语

本文利用候选实体间结构相关度构建概念图,通过基于置信度传播的图排序算法抽取核心实体,在DBpedia中计算关系路径的最大信息增益选择实体的共性类,并将共性类下的实例作为扩展实体,最后通过基于字符串相似和结构相关度的排序方法对扩展概念进行过滤。实验结果表明,实体抽取方法在CSEN数据集上仅次于CCP方法,在EcoEN数据集上达到最优,实体扩展方法在INEX数据集上的P@n均优于基线实验。本文对领域实体相关度的计算以及扩展实体的筛选排序过程均未考虑语义上的相似度,这可能影响实体挖掘方法的鲁棒性,下一步通过将文本嵌入计算实体向量的语义相似度,从而使实体间相似性的计算更加可靠全面,并利用实体间关系信息挖掘领域实体,根据图像等多模态信息进行实体挖掘。

参考文献
[1]
张雪, 孙宏宇, 辛东兴, 等. 自动术语抽取研究综述[J]. 软件学报, 2020, 31(7): 2062-2094.
ZHANG X, SUN H Y, XIN D X, et al. Survey on automatic term extraction research[J]. Journal of Software, 2020, 31(7): 2062-2094. (in Chinese)
[2]
CHEN P H, LU Y, ZHENG V W, et al. An automatic knowledge graph construction system for K-12 education[C]//Proceedings of the 5th Annual ACM Conference on Learning at Scale. New York, USA: ACM Press, 2018: 1-4.
[3]
ALIYU I, KANA A F D, ALIYU S, et al. Development of knowledge graph for university courses management[J]. International Journal of Education and Management Engineering, 2020, 10(2): 1-10.
[4]
SHI D Q, WANG T, XING H, et al. A learning path recommendation model based on a multidimensional knowledge graph framework for e-learning[J]. Knowledge-Based Systems, 2020, 195: 105618. DOI:10.1016/j.knosys.2020.105618
[5]
OLIVER A, VAZQUEZ M. TermEval 2020: using TSR filtering method to improve automatic term extraction[C]//Proceedings of the 6th IEEE International Workshop on Computational Terminology. Washington D. C., USA: IEEE Press, 2020: 106-113.
[6]
李思良, 许斌, 杨玉基. DRTE: 面向基础教育的术语抽取方法[J]. 中文信息学报, 2018, 32(3): 101-109.
LI S L, XU B, YANG Y J. DRTE: a term extraction method for K12 education[J]. Journal of Chinese Information Processing, 2018, 32(3): 101-109. (in Chinese)
[7]
PAIS V, ION R. TermEval 2020: RACAI's automatic term extraction system[C]//Proceedings of the 6th IEEE International Workshop on Computational Terminology. Washington D. C., USA: IEEE Press, 2020: 101-105.
[8]
CAMPOS R, MANGARAVITE V, PASQUALI A, et al. YAKE! keyword extraction from single documents using multiple local features[J]. Information Sciences, 2020, 509: 257-289. DOI:10.1016/j.ins.2019.09.013
[9]
CHEN P H, LU Y, ZHENG V W, et al. KnowEdu: a system to construct knowledge graph for education[J]. IEEE Access, 2018, 6: 31553-31563. DOI:10.1109/ACCESS.2018.2839607
[10]
阳萍, 谢志鹏. 基于BiLSTM模型的定义抽取方法[J]. 计算机工程, 2020, 46(3): 40-45.
YANG P, XIE Z P. Definition extraction method based on BiLSTM model[J]. Computer Engineering, 2020, 46(3): 40-45. (in Chinese)
[11]
杨一帆, 陈文亮. 旅游场景下的实体别名抽取联合模型[J]. 中文信息学报, 2020, 34(6): 55-63.
YANF Y F, CHEN W L. Joint model for entity alias extraction in tourism domain[J]. Journal of Chinese Information Processing, 2020, 34(6): 55-63. (in Chinese)
[12]
WU F Z, LIU J X, WU C H, et al. Neural Chinese named entity recognition via CNN-LSTM-CRF and joint training with word segmentation[C]//Proceedings of World Wide Web Conference. New York, USA: ACM Press, 2019: 3342-3348.
[13]
仇瑜, 程力. 面向财税领域的实体识别与标注研究[J]. 计算机工程, 2020, 46(5): 312-320.
QIU Y, CHENG L. Research on entity recognition and tagging in fiscal and taxation domain[J]. Computer Engineering, 2020, 46(5): 312-320. (in Chinese)
[14]
WANG X C, FENG W Z, TANG J, et al. Course concept extraction in MOOC via explicit/implicit representation[C]//Proceedings of the 3rd IEEE International Conference on Data Science in Cyberspace. Washington D. C., USA: IEEE Press, 2018: 339-345.
[15]
郑玉艳, 田莹, 石川. 一种元路径下基于频繁模式的实体集扩展方法[J]. 软件学报, 2018, 29(10): 2915-2930.
ZHENG Y Y, TIAN Y, SHI C. Method of entity set expansion based on frequent pattern under meta path[J]. Journal of Software, 2018, 29(10): 2915-2930. (in Chinese)
[16]
CHEN J, CHEN Y G, ZHANG X L, et al. Entity set expansion with semantic features of knowledge graphs[J]. Journal of Web Semantics, 2018, 52: 33-44.
[17]
YU J F, WANG C Y, LUO G, et al. Course concept expansion in MOOCs with external knowledge and interactive game[C]//Proceedings of the 57th IEEE Annual Meeting of the Association for Computational Linguistics. Washington D. C., USA: IEEE Press, 2019: 4292-4302.
[18]
PAN L, WANG X, LI C, et al. Course concept extraction in MOOCs via embedding-based graph propagation[C]//Proceedings of the 8th IEEE International Joint Conference on Natural Language Processing. Washington D. C., USA: IEEE Press, 2017: 875-884.
[19]
BOUDIN F. Unsupervised keyphrase extraction with multipartite graphs[C]//Proceedings of 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 2(Short Papers). Stroudsburg, USA: Association for Computational Linguistics, 2018: 18-26.
[20]
CHI L, HU L. ISKE: an unsupervised automatic keyphrase extraction approach using the iterated sentences based on graph method[J]. Knowledge-Based Systems, 2021, 223: 107014.
[21]
FLORESCU C, CARAGEA C. PositionRank: an unsupervised approach to keyphrase extraction from scholarly documents[C]//Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). Stroudsburg, USA: Association for Computational Linguistics, 2017: 209-307.
[22]
FERRAGINA P, SCAIELLA U. TAGME: on-the-fly annotation of short text fragments[C]//Proceedings of the 19th ACM International Conference on Information and Knowledge Management. New York, USA: ACM Press, 2010: 99-108.
[23]
WITTEN I H, MILNE D N. An effective, low-cost measure of semantic relatedness obtained from Wikipedia links[C]//Proceedings of AAAI Workshop on Wikipedia and Artificial Intelligence. Chicago, USA: AAAI Press, 2008: 25-30.
[24]
STOILOS G, STAMOU G, KOLLIAS S. A string metric for ontology alignment[C]//Proceedings of International Semantic Web Conference. Berlin, Germany: Springer, 2005: 624-637.
[25]
DEMARTINI G, IOFCIU T, VRIES A P D. Overview of the INEX 2009 entity ranking track[C]//Proceedings of the 8th International Conference on Initiative for the Evaluation of XML Retrieval. Berlin, Germany: Springer, 2009: 254-264.