加入收藏 | 设为首页 | 会员中心 | 我要投稿 焦作站长网 (https://www.0391zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

知识图谱数据构建的“硬骨头”,阿里工程师怎样拿下?

发布时间:2021-10-03 17:29:36 所属栏目:大数据 来源:互联网
导读:作为近年来搜索领域和自然语言处理领域的热点,知识图谱正引领着搜索引擎向知识引擎的转变。在阿里的神马搜索中,知识图谱及其相关技术的广泛应用不仅能帮助用户

因子图是一种概率图模型,用于表征变量和变量间的函数关系,借助因子图可以进行权重的学习和边缘概率的推算。DeepDive 系统中,因子图的顶点有两种,一种是随机变量,即提取的候选实体对,另一种是随机变量的函数,即所有的特征和根据规则得到的函数,比方两个实体间的距离是否大于一定阈值等。因子图的边表示了实体对和特征及规则的关联关系。

 

当训练文本的规模很大,涉及的实体众多时,生成的因子图可能非常复杂庞大,DeepDive 采用吉布斯采样(Gibbs sampling)进行来简化基于图的概率推算。在特征权重的学习中,采用标准的 SGD 过程,并根据吉布斯采样的结果预测梯度值。为了使特征权重的获得更灵活合理,除了系统默认的推理过程,用户还可以通过直接赋值来调整某个特征的权重。篇幅关系,更详细的学习与推理过程本文不做展开介绍,更多的信息可参考 DeepDive 的官网。

 

交互迭代

 

迭代阶段保证通过一定的人工干预对系统的错误进行纠正,从而使得系统的准召率不断提升。交互迭代一般包括以下几个步骤:

 

1、 准召率的快速估算

 

准确率:在P集中随机挑选 100 个,看为 TP 的比例。

 

召回率:在输入集中随机挑选 100 个 positive case,看有多少个落在计算出的P集中。

 

2、 错误分类与归纳

 

将得到的每个 extraction failure(包括 FP 和 FN)按错误原因进行分类和归纳,并按错误发生的频率进行排序,一般而言,最主要错误原因包括:

 

在候选集生成阶段没有捕获应捕获的实体,一般是 token 切分、token 拼接或 NER 问题

 

特征获取问题,没能获取到区分度高的特征

 

特征计算问题,区分度高的特征在训练中没有获得相应的高分(包括正负高分)

 

3、 错误修正

 

根据错误原因,通过添加或修改规则、对特征进行添加或删除、对特征的权重进行调整等行为,调整系统,重新运行修改后的相应流程,得到新的计算结果。

 

神马知识图谱构建中的 DeepDive 应用与改进

 

在了解了 DeepDive 的工作流程之后,本章将介绍我们如何在神马知识图谱的数据构建业务中使用 DeepDive。为了充分利用语料信息、提高系统运行效率,我们在语料处理和标注、输入规模的控制、输入质量的提升等环节,对 DeepDive 做了一些改进,并将这些改进成功运用到业务落地的过程中。

 

中文 NLP 标注

 

NLP 标注是数据处理的一个重要环节。DeepDive 自带的 Stanford CoreNLP 工具主要是针对英文的处理,而在知识图谱的应用中,主要的处理需求是针对中文的。因此,我们开发了中文 NLP 标注的外部流程来取代 CoreNLP,主要变动如下:

 

使用 Ali 分词代替 CoreNLP 的 token 切分,删除词根还原、POS 标注和依存文法分析,保留 NER 标注和 token 在文本中的起始位置标注。

 

token 切分由以词为单位,改为以实体为单位。在 NER 环节,将 Ali 分词切碎的 token 以实体为粒度重新组合。例如分词结果“华盛顿”、“州立”、“大学”将被组合为“华盛顿州立大学”,并作为一个完整的实体获得“University”的 NER 标签。

 

长句的切分:文本中的某些段落可能因为缺少正确的标点或包含众多并列项等原因,出现切分后的句子长度超过一定阈值(如 200 个中文字符)的情况,使 NER 步骤耗时过长。这种情况将按预定义的一系列规则进行重新切分。

 

主语自动增补

 

数据处理环节的另一个改进是添加了主语自动补充的流程。以中文百科文本为例,统计发现,有将近 40% 的句子缺少主语。如下图刘德华的百科介绍,第二段中所有句子均缺少主语。

 

 

 

主语的缺失很多时候直接意味着候选实体对中其中一个实体的缺失,这将导致系统对大量含有有用信息的句子无法进行学习,严重影响系统的准确率和召回率。主语的自动补充涉及两方面的判断:

 

主语缺失的判断

 

缺失主语的添加

 

由于目前业务应用中涉及的绝大多数是百科文本,缺失主语的添加采用了比较简单的策略,即从当前句的上一句提取主语,如果上一句也缺失主语,则将百科标题的 NER 结果作为要添加的主语。主语缺失的判断相对复杂,目前主要采用基于规则的方法。假设需要提取的候选对(E1, E2)对应的实体类型为(T1, T2),则判定流程如下图所示:

 

 

 

具体的主语补充实例和处理过程举例如下:

 

 

 

以百科文本为例,经实验统计,上述主语自动补充算法的准确率大约在 92%。从关系抽取的结果来看,在所有的错误抽取 case 中,由主语增补导致的错误比例不超过2%。

 

基于关系相关关键词的输入过滤

 

DeepDive 是一个机器学习系统,输入集的大小直接影响系统的运行时间,尤其在耗时较长的特征计算和学习推理步骤。在保证系统召回率的前提下,合理减小输入集规模能有效提升系统的运行效率。

 

假设需要提取的三元组为R(E1, E2)且(E1, E2)对应的实体类型为(T1, T2)。DeepDive 的默认运行机制是:在数据处理阶段,提取所有满足类型为(T1,T2)的实体对作为候选,不考虑上下文是否有表达关系R的可能性。例如,抽取婚姻关系时,只要一个句子中出现大于等于两个的人物实体,该句子就会作为输入参与系统整个数据处理、标注和学习的过程。以下五个例句中,除了句1,其它 4 句完全不涉及婚姻关系:

 

 

 

尤其当句中的两个人物实体无法通过远程监督获取正例或负例标签时,此类输入无法在学习环节为系统的准确率带来增益。为减小此类输入带来的系统运行时间损耗,我们提出了以下改进算法:

 

 

 

(编辑:焦作站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读