当可解释人工智能遇上知识图谱

来源:知乎—机器学习小谈

地址:https://zhuanlan.zhihu.com/p/386458680

本文按照以下章节进行组织:

1. 背景意义

2. 基于路径的方法

3. 基于嵌入的方法

4. 总结与展望

01

背景意义

1.1 什么是可解释性?

首先,什么是可解释性。由于可解释性人工智能、机器学习、神经网络等方兴未艾,可解释性的定义依旧没有准确的确定。目前较为受到认可的解释应该论文[1]提供解释Interpretability as the ability to explain or to present in understandable terms to a human,翻译过来的意识就是:可解释性是一种以人类认识的语言(术语)给人类提供解释的能力。

当然实际上人类也是高度进化的生物,不需要完整的解释,人类可以根据现有的知识自动进行脑补。所以这里引入可解释的边界。例如:为什么你这么聪明?因为我喜欢吃鱼。为什么吃鱼会聪明?因为鱼类富含DHA。为什么DHA聪明?因为 ...,我们不可能无穷无尽地解释下去。根据不同的人群,我们的可解释的工作也不一样。例如给大众解释吃鱼能够聪明就行了,因为吃鱼能够聪明我们很多人已经从小到大耳熟能详了。如果我们给专业人士解释DHA为什么会是大脑聪明,我们身边很多人也答不出来,这可能就需要外部知识去解决了(例如知识图谱)。当然,可解释的这种边界越深,这个模型的能力也越强。

1.2 当前可解释性方法

XAI总结了一些可解释性的方法。例如比较著名的可视化[2]方法,这种方法在计算机视觉上使用较多。又例如模仿模型[3],这种方法比较简单,例如用一些可解释性的模型去模仿深层黑盒模型,从模仿者的结构来来研究可解释性。有例如特征相关,这些是研究显著性特征的方向,区分特征的重要性来提供可解释性,但是这种解释一般比较弱。还有很多的方法,我在上一篇文章的神经网络的可解释性综述讨论比较多,欢迎大家可以参考我的这篇文章或者其他的资料。

经典可解释性方法分类

1.3 知识图谱对比其他知识表示的优势

2012年,Google推出了一款从Metaweb中衍生而来的产品,名字叫做Knowledge Graph(知识图谱),彼时其功能在于,搜索内容时提供附加的衍生结果。随着人工智能的发展,知识图谱开始应用于更多的场景,关注度不断攀升,成为认知智能领域的核心技术之一。最重要的是,知识图谱逐渐成为人工智能应用的强大助力。

  • 相比普通的传统知识表示,知识图谱具有专家知识、质量精良等优点

  • 当然知识图谱也可以从不同的数据源中统一结构,具有数据类型多样性的优点。通过节点和关系把所有不同种类的信息(Heterogeneous Information)连接在一起得到一个关系网络,为真实世界的各个场景直观建模。

  • 随着近几年知识图谱技术的进步一个重要变化就是越来越多的研究与落地工作从通用知识图谱转向了领域或行业知识图谱,转向了企业知识图谱。对比通用知识图谱,随着人工智能在细分以及新兴领域上的应用,专业型知识图谱越来越受到重视。

  • 相比于其他结构知识库,知识图谱的构建以及使用都更加接近人类的认知学习行为,因此对于人类阅读会更加友好

知识图谱的优势

1.4 决策树模型 vs 基于知识图谱的解释

在可解释性角度看来,由于知识图谱大多数属于异构图结构,对比其他的数据结构有更强的表达能力以及对应的更多用途的图算法。基于知识图谱的可解释性通常比之前的解释方法更有深度更容易让人类理解。如左图,是决策树中抽出的规则,总结食物的健康原因。对比右图,人工智能模型借助医疗生物领域知识图谱,例如基于路径得出的解释,显然比左图更容易理解、更有说服力。

决策树解释vs知识图谱解释

对于知识图谱在可解释人工智能上带来的优势,以及它们当前方法理论、限制以及机遇,Freddy Lecue博士在2020年的论文On the role of knowledge graphs in explainable AI[4]。给我们从人工智能的Machine Learning、Knowledge Representation and Reasoning(KRR)、Game Theory、Uncertainty in AI(UAI)、Robotics、Computer Vision 和 Natural Language Processing等分支分析了研究方法、可解释性面对的挑战、限制以及机遇。而本文主要从两个方法-基于路径的方法以及基于嵌入的方法对知识图谱在人工智能中的研究进行一个概述。

02

基于路径的方法

基于路径的解释方法主要应用在推荐系统上较多。下面主要介绍一个KPRN-基于知识图谱路径推理的可解释性推荐方法。这是我们在做综述的时候注意到的一篇论文Explainable Reasoning over Knowledge Graphs for Recommendation[5],在2019年发表于AAAI。通过用户-物品的异构知识图谱,可以通过找到的关联路径作解释。这类关联路径不仅表述了知识图谱中实体和关系的语义,还能够帮助我们理解用户的兴趣偏好,赋予推荐系统推理能力和可解释性。该论文提出了一种基于循环神经网络的方法KPRN,建模用户和物品对在知识图谱中存在的关联路径,按照路径的解释分数对路径进行排序后输出。它的训练数据主要来源于用户的历史记录CTR,其标签是用户最后对该项目(音乐歌曲)的评分或者是其他评价方式。例如有数据记录用户最终点击了Castle on the hill之前有哪些操作以及用户对该歌曲的最终评分。

Explainable Reasoning over Knowledge Graphs for Recommendation

我们先看一下模型,模型分为三层:嵌入层,将知识图谱的实体以及对应的关系映射到一个向量作为输入。再上一层是解码层,这里用了LSTM单元,这一步的作用主要是根据这些路径对下游任务进行解码,学习这些路径的时序依赖。最后经过池化层的处理后,根据不同的路径分数对物品进行一个打分。

KPRN训练

当这种模型训练好之后,我们可以使用这种模型对用户进行物品推荐的同时,追溯推荐的原因。例如这里路径S3最高分。
这条路径得出的一个解释是,“有很多观看该电影的用户,都喜欢The Incredible Journey;而这部电影刚好也是由你喜欢的电影Fantasia的导演Jams Algar指导的;不妨你可以试试。”当然这个解释可以用生成模型生成。
我们甚至还能从其他的高分路径得到这个用户感兴趣的导演James等。

KPRN的一个解释案例

除了KPRN之中方法之外,我们统计到了不少其他方法,例如这是一篇同一年发表在ACM的论文Reinforcement knowledge graph reasoning for explainable recommendation[6],它的思路用强化学习的方法去代替有监督学习,通过一个智能体自动在图上探索解释的路径,使得这种方法得到的解释更加灵活。具体细节大家可以自行去看这一篇论文。

关于KPRN收到的一个主要问题:关于刚刚基于路径的算法,在预测的时候,是怎样挑选路径的。一个点到另外一个点的路径数量随着长度限制应该是指数级别的,这篇文章是如何解决这种问题的呢?同时,我也注意到,它的训练数据是用户的CTR,模型学习这种CTR路径来为用户提供可解释性,你觉得真的有那么高的解释性吗?也许用户的一次点击是随心所欲的呢?
答复:这个问题问的很细节。我也曾经好奇过,但是我发现,作者挑选路径仅仅基于路径的长度来筛选,譬如筛选路径长度少于6跳的。但是我同时也会疑问,解释一定就跟长度有关吗?难道长路径的解释就一定比短路径要差?我发现很多读者也提出不同的想法,例如用随机游走之类的算法,收敛的时候对路径的概率进行排序,最后选择topk之类,这些也我们可以深挖的方向。关于第二个问题,其实我也觉得单单依据用户CTR历史信息,作为可解释性的一种训练,也是不靠谱的。因为用户点击或者进行其他行为例如评论或者收藏之类的,不一定是有意的,有时候就是随心所欲。我认为这里确实可以过滤的,就是过滤掉一些可能是用户随心所欲的行为,例如看点击的时间频率之类的,或者甚至人工打标记来训练一个过滤器之类的。不过我认为作者的初心只是想提出有这样的一种基于路径的方向,后面的例如强化学习的方法,要比种方法强不少,我觉得读者有兴趣可以探究一下。

03

基于嵌入的方法

下面我再给大家分享另一种方法-基于嵌入的方法,以QUERY2BOX为例。首先简单介绍一下嵌入-embedding。知识图谱的表示学习受自然语言处理关于词向量研究的启发,因为在word2vec的结果中发现了一些词向量具有空间平移性,如图:

embedding

vec(king)−vec(queen)≈vec(man)−vec(woman)

同理,我们是否可以参考word2vec,将知识图谱中包括实体和关系的元素映射到一个连续的向量空间中,为每个元素学习在向量空间中表示,向量空间中的表示可以是一个或多个向量或矩阵。这些方法有很多,之前也有很多文章提过,大家可以参考参考。而当前的一些嵌入,也就是用把实体映射成向量或者高维度空间中的一个点,有不少缺点:例如对于人工智能系统其中的对话机器人,面对复杂的问题:例如有鱼类食物富含的物质对身体哪些部位有好处?这种带有更深的逻辑推理问题,往往都有不止一个的答案,蕴含很多集合与集合之间的操作,因此用单个点或者向量是难以表示的。同时这些单点进行(合取/析取)也就是并集和交集操作也是不自然的。

“鱼类食物富含的物质对身体哪些部位有好处?”逻辑依赖图

所以小结当前方法:将复杂问题建模成向量空间的一个点。其普遍缺点是:

1.一个复杂的问题可能代表着一个很大的答案实体集合,用一个点(类比一个典型实体)表示是不合理的

2.向量空间中定义两个点的逻辑操作符(合取/析取)也是不合理的

QUERY2BOX:Reasoning over Knowledge Graphs in Vector Space using Box Embeddings[7]发表在2020年的ICLR会议上。那么QUERY2BOX是思路是什么呢?大家也可以从主题才到,QUERY2BOX是用“箱子”不再是一个点来进行嵌入。它的目标是想融入一阶逻辑推理EPFO能力到这些嵌入之中。大家可以看到右图,这些一个一个的box嵌入,看起来是适合集合之间的操作的,而且这些操作都是产生一个个新的box,因此它的操作也是封闭,一种闭包。从论文的总结看,box-embeddings有以下优势:

1.Box-embeddings更适合复杂而且答案多组合的推理问题

2.Box之间依然可以进行一阶逻辑操作EPFO(Existenial Positive First-order)

3.Box操作的结果是产生新的box,因此操作符是封闭的

那么QUERY2BOX是如何实现这种box-embedings?还是刚刚那个问题“鱼类食物富含的物质对身体哪些部位有好处?“。我们看一下具体的细节。图A,我们首先将复杂的抽象问题分解为依赖图,这是一种DAG。如果直接回答这些逻辑问题对于人工智能来说非常吃力,那么这种依赖分解对于人工智能则轻松得多,因此将查询转换为DAG依赖图是容易实现的一个环节。从人类的角度看,我们分析了问题的逻辑后,我们就可以借助外部知识(知识图谱)寻找答案。对于下图C,我们可以找到鱼类和食物的交集“三文鱼和鲢鱼”,从该交集,我们可以继续找到其成分EPA、DHA等,从而可以继续找到对身体有益部分(橙色的实体)。从计算机的角度,根据DAG,可以编译为计算机理解的运算-计算图(如图B)。计算机可以根据这些操作,图C,例如对鱼类进行Projection得到新的box,与食物的box进行交集(Interp)就得到了鱼类食物,诸如此类地一步一步推导出答案,橙色的箱子。

QUERY2BOX

关于箱子的定义,这里箱子是一个虚拟的中心点和偏移定义的,p是箱子里面的实体的坐标,off函数根据不同的实体计算一个偏移量。其中off函数,查看源代码,是一个神经网络实现的动态计算偏移量的函数,可以根据不同的实体p估计其偏移量。

而论文提出是这样训练的:训练的时候,有实体在箱子外面的,也有实体在箱子里面的,因此他们分为两个距离度量,dist-outside和dist-inside;dist-outside的在箱子外的实体距离有多远,目的是想把属于这个箱子的实体“拉扯”到箱子里面;而dist-inside是想让箱子内部的实体更加接近箱子的中心。

关于参数 ∈[0,1],如果 =0,意味着优化目标是把所有的答案实体控制在box内部即可。如果 =1,距离则变成原始L1距离,将会把所有实体向中心拉扯。

对于刚刚的计算图,Projection的定义是实体集合和他们对应的关系集合在集合层面上进行,投影操作,这一步跟TransE很相似。

Prohection定义

对于合取操作(Interp),它们的设计会复杂一点。它们在交集时候,交集的箱子会分配不同的权重(类似注意力机制),并且交集后的箱子的大小也会由一个MLP进行大小调整,这里用了sigmoid这里对箱子进行一定大小衰减。

Interp定义

对于析取操作(就是并集),大家可以想到,并集后的元素或者空间一般都是越来越大的。这样的话,如果后面再有其他的操作,计算成本就会更很多。而他们想出了一种优化方法。根据逻辑命题的范式存在定理,其实对应任何的公式,都能够找到等值的CNF和DNF。这里转换为DNF,也就是说所有的析取操作(并集操作将推到最后才进行)。如下图,这里就进行DNF转换,让并集操作在最后计算。

Union定义

通常在模型中,这一层会放在中间作为可解释层展示给用户。在18年提出的VRN网络,用于语音识别,就是这种架构。不过当时box-embedding还没有提出来,它们这一层使用一种基于路径的方式进行推理。可能有同学就想到了,这一层换成Box-embedding,后面编码器改成box-embedings的编码器,那不就是可以采用这个最新的技术呢?这个也是我们的一个机会。

拓展问题:关于box-embeddings部分,为什么就用这样的箱子的结构?有很多数据也不一定是规规矩矩按照超立方体来分布的,用球体是否可以?甚至是一些其他的复杂形状。

答复:首先这篇论文也没有拓展过其他的形状的embeddings。但是,根据我自己的想法,我觉得他们用box-embeddings是有道理的。因为超立方体的逻辑运算肯定是要比其他形状的运算是要快的,它只需要确定一个中心和长宽之类就可以了。当然,你也许会说,那球体也应该很快呀,不就确定一个中心和半径就可以了吗?但是我觉得这样会有第二个问题,就是球体的交集或者并集就很可能不再是球体了,可能是一些其他形状的空间了,这样子就引起了运算不封闭的问题,box进行EPFO之后,依旧是box,但是球体和其他形状就不一样了。当然了,在极坐标或者其他坐标系下也是可能的,这种情况类似TransE和RotaE。

04

总结和展望

一些总结

Hete-CF[8],LTN[9],NTP[10]

拓展问题:既然基于图结构的知识图谱,有强于其他数据结构的可解释能力以及算法。那么可以问问出了基于路径或者基于嵌入的提供解释性之外,还有哪一些类型吗?
答复:当然是有其他类型的。例如,混合型的,如涟漪神经网络RippleNet,这种网络是既有基于路径的也有基于嵌入的。有例如,比较火的是图神经网络,譬如自然语言处理里面就有与图神经网络相结合搞可解释性的。大概原理首先将文本进行图表示(例如语法解释树也是一种图结构,这种解释可以用一些语法相关的图谱去完成)

一些展望

这里引用Freddy Lecue论文中的图(对计算机视觉):

以及我的构想图(对自然语言处理中的命名实体抽取)

参考

1. Towards a rigorous science of interpretable machine learning F Doshi-Velez, B Kim - arXiv preprint arXiv:1702.08608, 2017 - arxiv.org https://arxiv.org/abs/1702.08608

2. K. Simonyan, A. Vedaldi, and A. Zisserman, “Deep inside convolutional networks: Visualising image classification models and saliency maps,” arXiv preprint arXiv:1312.6034, 2013. https://arxiv.org/abs/1312.6034

3“Extracting Decision Trees From Trained Neural Networks”. SIGKDD. July 23-26,2002 https://www.sciencedirect.com/science/article/pii/S0031320398001812

4. On the role of knowledge graphs in explainable AI F Lecue - Semantic Web, 2020 - content.iospress.com https://content.iospress.com/articles/semantic-web/sw190374

5. Explainable reasoning over knowledge graphs for recommendation X Wang, D Wang, C Xu, X He, Y Cao… - Proceedings of the AAAI …, 2019 - ojs.aaai.org https://ojs.aaai.org/index.php/AAAI/article/view/4470

6. Since 2021 Since 2020 Since 2017 Custom range... Sort by relevance Sort by date [PDF] arxiv.org Reinforcement knowledge graph reasoning for explainable recommendation Y Xian, Z Fu, S Muthukrishnan, G De Melo… - Proceedings of the 42nd …, 2019 - dl.acm.org https://dl.acm.org/doi/abs/10.1145/3331184.3331203

7. Query2box: Reasoning over knowledge graphs in vector space using box embeddings H Ren, W Hu, J Leskovec - arXiv preprint arXiv:2002.05969, 2020 - arxiv.org https://arxiv.org/abs/2002.05969

8. hete-cf: social-based collaborative filtering recommendation using heterogeneous relations c luo, w pang, z wang, c lin - 2014 ieee international …, 2014 - ieeexplore.ieee.org https://arxiv.org/pdf/1412.7610.pdf

9. Luciano Serafini and Artur d’Avila Garcez. Logic tensor networks: Deep learning and logical reasoning from data and knowledge. arXiv preprint arXiv:1606.04422, 2016. https://arxiv.org/abs/1606.04422

10. Tim Rocktaschel and Sebastian Riedel. End-to-end differentiable proving. In ¨ NIPS, pages 3788–3800, 2017. https://arxiv.org/pdf/1705.11040

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)大脑研究计划,构建互联网(城市)大脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。每日推荐范围未来科技发展趋势的学习型文章。目前线上平台已收藏上千篇精华前沿科技文章和报告。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/484286.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity3D-C#脚本介绍

Unity3D脚本介绍 脚本就是附加在游戏物体上用于定义游戏对象行为的指令代码。Unity支持C#高级编程语言。 1.语法结构 using 命名空间; public class 类名:Monobehaviour {void 方法名(){Debug.Log("调试信息.");print("调用…

JConsole连接远程linux服务器配置

1.在远程机的tomcat的catalina.sh中加入配置 (catalina.sh路径在tomcat/bin下面 如/usr/local/tomcat/bin) 1 if [ "$1" "start" ];then 2 JAVA_OPTS"$JAVA_OPTS -Djava.rmi.server.hostname192.168.10.98 -Dcom.sun.management.jmxremote"…

缺缺缺!IoT行业的“芯”选择是什么?

来源:北京物联网智能技术应用协会“最初,没有人在意这场灾难,直到这场灾难和每个人息息相关。”这是电影《流浪地球》的开头,预示着一场即将来临的危机。如今,这句话正在现实中应验,不过,这次遭…

Unity3D-相关函数功能

函数功能 1.每隔固定时间执行一次,时间间隔固定(0.02s),时间间隔可以修改。 适用性:适合对物体作移动,旋转等物理操作。 函数执行不受渲染影响。 private void FixedUpdate() {Debug.Log(Time.time); }设置更新频率&…

JMeter4.0以上 分布式测试报错 server failed start Listen failed on port

使用JMeter4.0做分布式测试的是否,我的电脑作为肉鸡(执行机),双击jmeter-server.bat后显示失败 Found ApacheJMeter_core.jarUsing local port: 1888Server failed to start: java.rmi.server.ExportException: Listen failed on …

Unity-基本函数用法

1.常用组件 组件作用Transform存储个处理游戏对象的位置、旋转和缩放Mesh Filter显示网格Rigidbody刚体,使物体能在物理控制下运动Collider碰撞器,和刚体一起来是游戏对象发生碰撞Renderer渲染器,使物体在屏幕上显示出来Audio Source音频源&…

AI芯片的未来之战:“霸主”英伟达真就无人能挡了吗?

来源: AI前线作者:NICOLE KOBIE译者:王强英伟达,AI 芯片市场的统治者业内有一个传说,讲的是英伟达怎样从游戏和图形硬件转向了 AI 芯片市场的统治者 — 这个故事中有猫的身影。早在 2010 年,现任英伟达首席科学家 Bill Dally 有一天正与斯坦福…

计算机网络(一)-概述(补充)

一.概述 1.新型网络 1.1 基本特点: 网络用语计算机之间的数据传送;网络能够连接不同类型的计算机;所有的网络结点都重要,大大提高了网络的生存性;计算机在进行通信时,必须有冗余的路由;网络结…

费米悖论的三十种解释 | 观点

© David B. Mattingly来源:公众号利维坦(ID:liweitan2014)文:Ella Alderson译:Rachel校对:Yord原文:medium.com/predict/30-solutions-to-the-fermi-paradox-aaabfce56280我常常在思索,我们大多数人选择相信其他星球上存在生…

计算机网络(一)-概述

一.计算机网络 (一)计算机网络概述 1. 概述 1.1 计算机网络是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。 1.2 互联互通,自治的计算机集…

json数组格式问题

---恢复内容开始--- 使用jsonserver来模拟后台数据接口时犯了一个很低级的错误 找了很久没有发现有什么不对劲的地方,后来仔细发现原来是一个很细微的语法问题:}] 中间不能有逗号!! ---恢复内容结束---转载于:https://www.cnblog…

图灵奖得主Judea Pearl谈机器学习:不能只靠数据

来源:选自Journal of Causal Inference作者:Judea Pearl编译:机器之心编辑:Panda在当前的人工智能研究社区,以数据为中心的方法占据了绝对的主导地位,并且这类方法也确实成就非凡,为语音识别、计…

计算机网络(二)-性能指标

一、计算机网络性能指标 1.时延 1.1 指数据(报文/分组/比特流)从网络(或链路)的一端传送到另一端所需的时间。也叫延迟或迟 延。单位是s。 数据到达路由器是,需要等待,产生排队时延,在路由器里面需要处理数据,包括检错和查找输…

axios请求本地的json文件在打包部署到子目录域名下,路径找不到

前言: 因为要同时部署两个项目,有一个是部署到域名下面的子目录下,如:https://xxx.com/siot-admin vue 项目中使用axios请求了本地项目的static文件夹下的json文件,使用npm run build 打包后,json文件请求不…

中国集成电路设计产业创新发展的认识和思考

来源:半导体行业观察 7月15日—16日,2021中国集成电路设计创新大会暨IC应用博览会在苏州召开。在本次大会高峰论坛上,中国集成电路设计创新联盟专家组组长、东南大学首席教授、南京集成电路产业服务中心(ICisC)主任、…

计算机网络(三)-体系结构

一.分层结构 1.分层的基本原则 各层之间相互独立,每层只实现一种相对独立的功能。每层之间界面自然清晰,易于理解,相互交流尽可能少。结构上可分割开,每层都采用最适合的技术来实现。保持下层对上层的独立性,上层单向…

基于SpringBoot项目的https

基于SpringBoot项目的https 在spring中配置项目运行的端口很简单。 在application.properties中 server.port: 8080 这样配置后,spring boot内嵌的tomcat服务器就是跑在8080端口启动http服务。但是如果在配置中启动https服务,用到的端口也是server.port。…

数年沉寂之后,VR/AR产业开始起飞!

来源:先进制造业现在,“新基建”已成为拉动投资、促进消费、稳定就业和提升综合实力的重要抓手,如何加载高质量的业务生态成为释放新基建发展动能的关键。当前,以虚拟现实VR(包含增强现实AR)为代表的未来视…

计算机网络(四)-奈氏准则和香农公式

一.奈氏准则 1.失真 1.1 在现实中信道,受到带宽限制,噪声,干扰等的影响,使信号失真。 1.2 影响失真程度的因素: 码元传输速率信号传输距离噪声干扰传输媒体质量 1.3 失真的一种现象------码间串扰 1)对于低频信号&…

珍藏版:3万字详解mRNA疫苗

来源:周观宇论撰文:邓周宇摘要新冠疫情的持续凸显了疫苗的重要性以及全球对疫苗的迫切需求。借此契机,mRNA疫苗登上了舞台,并以极高的保护率成为所有新冠疫苗种类中热度最高的C位选择。本报告介绍分析了mRNA疫苗相较于其他技术路径…