KG error/conflict detection

1.What is Normal, What is Strange, and What is Missing in a Knowledge Graph(rule-based)

KGist通过查找可以解释为规则的模式(右)来总结(summarizes)KG(左)。例如,书是由出生在某个国家的作者写的这条规则,在本例中有三分之二的情况下成立(弗兰肯斯坦缺少作者),它正确地描述了一般的书。然而,相反的模式却不存在:列夫·托尔斯泰写书,艾米莉·狄金森写诗。规则的总结描述了KG的正常特征,同时揭示了奇怪和缺失的东西,例如弗兰肯斯坦周围的错误和缺失的边缘。

KGIST通过归纳总结统一表征在KGs中什么是正常的、什么是奇怪的、什么是缺失的。

关于处理知识图谱错误和缺失信息的标准方法是“知识图谱细化”,这涉及针对每种类型的错误或缺失信息定制技术,但这有很多限制,首先是针对每种错误类型和缺失类型定制技术所涉及的开发时间和成本,第二是不可能针对未知类型的错误定制方法,我们不可能为未知的错误类型开发一种方法,第三是如果我们想在知识上运行一套不同的定制技术,图有可能是非常密集的(知识图谱非常大,新的事实添加到KG中时,图谱会变得更大,使这个问题变得更糟糕)。

我们换一个角度来看待问题,我们想知道这些不同类型的奇怪和缺失的共同特征是什么,它们都是异常事实的实例,与正常事实形成对比。

在本文工作中,我们不会将这些问题视为不同的问题,而是将他们视为一个问题(即,发现异常),将问题转化为归纳总结,“总结”允许我们识别什么是正常的,然后所有不正常的都是异常,我们不太关心为什么它是异常的,尽管我们能够推理,因为它是我们所有“丢失”和“错误”信息的共同特征。

我们的模型简称为KGist, 它指出如果给定知识图谱G,我们希望找到该图G的简明摘要,并且我们希望摘要包含归纳,软规则。这些规则将作为我们对什么是正常的描述或总结,这将允许我们识别什么是异常的(规则的例外)。我们通过对问题的转换将不同的细化任务统一为一个任务,使用富有表现力的图形结构规则,使用简洁的基于最小描述长度(MDL) 的方法。

模型结构

知识图谱被视为带标记的有向图,图谱的边就是三元组(由主语、关系、宾语)组成,我们可以在数学上将它表示为邻接张量,其中张量的每个切片对应特定的关系类型,除此之外我们还有一个二元标签矩阵,它指定每个实体的标签。

首先,该论文引入一个新的规则图论公式,将规则递归定义为有根的、有向、有标记的图。

如图10左边的规则适用于书籍,它特别断言关于它们的两件事,它断言它们具有虚构的家庭角色,并且它们是由出生在某些国家的作者写的。断言关于特定节点的事情时,它会在该节点周围引发一个子图,例如图10右边所示,书规则描述的内容适用于《战争与和平》,它断言一本书应该有一些虚拟的家庭角色,它拥有五个角色,它还断言书应该由一位作者写成,列夫托尔斯泰,作者出生于俄罗斯。所以针对一个节点,会导出一个子图,通过遵循规则隐含的引导遍历来实现的,所有这些遍历的集合被称为规则正确断言。

断言的总集合是正确的断言加上规则的例外情况:

                     

根据最小描述距离,如果我们得到一些称之为G的数据,我们想找到一个描述该数据的模型M,我们希望最小化描述。描述长度分为两部分,第一是我们需要描述的模型M的位数,第二个是给定模型M描述的位数数据,我们需要多少位来描述数据,这具有一个关键优势,因为我们正在尝试最小化它,从而形成一个更小的模型,可以更容易地使用我们的模型来改进大型知识图谱。这涉及四个步骤,第一步是定义模型是什么/定义模型空间,第二步是推导或定义描述的长度以及第三步模型下数据的描述长度,第四步是从模型空间中选择一个模型,即最小化描述长度的模型。

             

因此我们现在可以重新表述我们的问题,给定知识图谱的最小描述链接原则,我们希望找到简洁的归纳规则集M,使描述长度最小化,如果这里的M是我们的规则集,那么这些规则用于描述什么是正常的,然后描述链接的那部分昂贵的部分将揭示什么是异常的。

第一步再次是定义模型是什么,我们将非常简单的将其定义为一组规则,每个规则都有正确的断言,这些正确的断言首先用于描述图的结构,再次是引导遍历,所以其导出的子图的边缘已经由规则描述,它还描述了一些语义,因为它揭示了诱导子图中的标签。

第二步是推导描述长度,我们得到的信息有独立信息(图中结点数、边数)、图谱摘要模型(一组规则)以及规则的例外,我们使用它们来完善标签矩阵和张量矩阵。

我们通过对独立信息中的规则与例外,来填充标签矩阵和张量矩阵。

                 

下一步是驱动找到这样一个模型的方法,模型是一组规则,所以我们可以想象所有可能规则的集合或者代替候选规则和任何子集候选规则是一个有效模型,问题是这些规则呈指数增长,因此为了避免枚举或搜索的指数空间,我们将从简单的候选规则开始,简单的意思是它们只断言一件事并将它们组合成更复杂和更具表现力的东西。

所以第一步是生成这些候选规则,我们将通过迭代图来做到这一点,每次遇到边时,我们解释它的规则,例如如果我们遇到一个演奏音乐的人,那么我们将生成描述该示意图结构的规则,因此我们也有可能生成作者写的书、城市制造的车和山脉属于地方。

例如,边缘(《战争与和平》,作者是列夫·托尔斯泰)可以用“书是作者写的”和“作者写书”这样的规则来解释。分别为д1 = ({Book}, {writtenBy,→,({Author},∅)})和д2 = ({Author}, {writtenBy,←,({Book},∅)})。为了避免候选规则爆发,允许规则拥有节点标签的任意子集,我们在这里只生成每个节点具有单个标签的原子规则,并在下一步考虑更多的标签组合。

下一步是对模型中考虑的规则进行排名,并将通过测量它们压缩图的程度来实现,当我们计算出这个压缩值,我们将根据它们实现的压缩量对它们进行排名,并考虑按照这个顺序来建模。描述长度通过添加规则而获得减少那么我们将保留,如果描述长度增加了,那么我们会把它扔掉。

所以此时我们找到一些简单规则,我们想让这些规则更具表现力,所以我们将介绍两个细化步骤,第一个是合并细化,如果我们有作者写的书和出版商出版的书,那么我们可以将它们合并为一个规则。第二个规则是嵌套,如果我们有“山脉位于地方”的规则,和“轨迹包含地方”的规则时(第二条规则不是很准确,因为有很多地方它们不包含在轨迹中),我们可以通过嵌套使其更准确,嵌套后它只适用于山区、自然地区这些更有可能具备轨迹特征的地方。

在对候选规则C进行排序后,KGist初始化M =∅,并按照排序顺序考虑每个g∈C,以便包含在M中。对于每个规则g,它计算L(G, M∪{g}),即如果将д添加到当前模型中,则MDL目标。如果这小于没有规则的MDL成本L(G, M)(例如,规则g正确地解释了G的新部分),那么KGist将在M中添加g。如果g有一个相反的版本(例如,“书是由作者写的”和“作者写书”),KGist会同时考虑这两个版本,并选择给出较低MDL成本的那个。

Rn首先在每个兼容的дin和дr t之间计算匹配的内部节点和根节点的正确断言起点的Jaccard相似性(即,它量化了节点的“适合度”)。例如,如果一个规则断言“书有作者”(gin),而另一个规则断言“作者有出生地”(grt),那么将在书的作者集合和有出生地的作者集合上计算Jaccard相似性。然后,细化考虑按Jaccard相似度降序嵌套规则,导致规则дr t被包含到规则дin中,后者成为其祖先。

我们现在讨论如何利用由KGist挖掘的模型M(即规则摘要)来识别KG中奇怪或异常的内容࿰

根据提供的引用内容,"Command 'python setup.py egg_info' failed with error code 1 in /tmp/pip-build-shwvzlo3/simplejpeg/" 是一个错误信息,它表示在执行命令 "python setup.py egg_info" 时出现了错误代码1。这通常发生在安装Python包时,其中的某个依赖项无法正确安装或编译。 解决此问题的一种方法是确保你的系统上已经安装了所需的依赖项。你可以尝试以下步骤来解决这个问题: 1. 确保你的系统上已经安装了所需的编译工具。在Linux上,你可以使用以下命令安装: ```shell sudo apt-get install build-essential ``` 2. 确保你的系统上已经安装了所需的Python开发包。在Linux上,你可以使用以下命令安装: ```shell sudo apt-get install python-dev ``` 3. 确保你的系统上已经安装了所需的库和依赖项。你可以查看项目的文档或README文件,了解所需的依赖项,并使用适当的包管理器进行安装。 4. 确保你的系统上已经安装了正确版本的Python。有些包可能只支持特定的Python版本。你可以使用以下命令检查你的Python版本: ```shell python --version ``` 5. 如果以上步骤都没有解决问题,你可以尝试使用虚拟环境来安装包。虚拟环境可以隔离不同项目的依赖项,避免冲突。你可以使用以下命令创建和激活虚拟环境: ```shell python -m venv myenv source myenv/bin/activate ``` 以上是解决"Command 'python setup.py egg_info' failed with error code 1 in /tmp/pip-build-shwvzlo3/simplejpeg/"错误的一些常见方法。如果问题仍然存在,你可以尝试搜索相关错误信息或向开发者社区寻求帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值