Knowledge-Based Systems 2023:基于注意力机制的图相似度学习探索

854c13d154a2cfeb8586780648c5864d.gif

©作者 | 桑士龙

单位 | 南京邮电大学

论文标题:

Exploring attention mechanism for graph similarity learning

论文地址:

https://www.sciencedirect.com/science/article/abs/pii/S0950705123004896

代码地址:

https://github.com/AlbertTan404/NA-GSL

b719fc722d17a75e31ba6e7405072d07.png

论文介绍

图相似度目前还存在三个问题:1)如何利用节点嵌入来融合局部空间邻域信息和全局上下文;2)如何从成对节点的角度有效地学习更丰富的跨图交互;3)如何利用图相似矩阵中的固有结构将相似矩阵映射到相似度得分。

为解决这些问题,本文探索了多种注意力机制进行图相似度学习:提出了一个统一的图相似度学习框架,包括(1)基于图卷积和图自注意力的节点嵌入学习混合模型;(2)用于图交互建模的跨图协同注意力(GCA)模块(3)图相似矩阵对齐的相似自注意力(SSA)模块;(4)图相似度矩阵学习用于预测相似度得分。

b14e36abbfcebde89c270ed90b489ea0.png

如图 1,现有的神经网络模型用于图相似度估计问题包括两个关键步骤:图嵌入学习和图相似度估计。但是局部结构难以通过全局嵌入来捕获,并且以往工作表明成对节点相似度机制比图级别嵌入的相似度计算更有效,可以捕获跨图之间的丰富的局部结构相似度模式。

cbfc245626cb60c19572dacead27a83c.png

贡献

  • 提出了一种基于注意力的节点级图相似度学习,通过学习有效的节点级表示、建模成对节点交互以及相似矩阵中的细粒度节点相似度。对于具有复杂结构的图,从全局层面看两个结构不同的图是相似的,但子结构使图在语义上不同。

  • 提供了第一个在图相似度学习中探索多头注意力潜力的研究,并研究了如何将注意力机制应用于图相似度学习,注意力机制以三种不同的方式引入:节点嵌入学习的图自注意力(GSA)、图交互建模的跨图注意力(GCA)以及用于融合和对齐不同语义层次相似矩阵的相似性自注意力(SSA)。

ea4a582d0ee211bb798a829e5a90cdc2.png

论文方法

43ec4e65f2ae7fe15cfb04f61cc2799b.png

给定两个图 和 ,学习的目标是产生两个图之间的相似度分数,记为 。本文提出的节点对注意力引导的图相似度学习(NA-GSL),包括四个模块:节点嵌入学习,图交互建模,相似矩阵对齐,相似矩阵学习,整体模型如图 2。

对于节点嵌入学习:由于高维图特征应嵌入到低维特征向量中用于下游任务,所以学习准确的图嵌入对于更好地学习图相似度至关重要。节点嵌入学习阶段负责将输入图转换为一组相应的节点嵌入。作者通过合并残差图卷积和图自注意力到图编码中以学习图嵌入:首先通过残差图卷积模块学习局部节点嵌入,然后采用图自注意力机制增强节点表示,以学习全局上下文信息。

图卷积层首先将节点嵌入与其邻居节点聚合,然后通过前馈传播转换嵌入。图卷积的主要问题就是存在过平滑,深层的图卷积模块可能导致节点表示质量的下降。因此,为了利用全局上下文并避免过平滑的问题,作者在图卷积层之间添加残差连接,以获得节点嵌入,

f46a964a403fb446254fc2a29a9d22d0.png

其中 和 分别是第 l 层的输入和输出。与图卷积相比,图自注意力允许在不考虑输入图中两节点距离的情况下建模任意两节点之间的远距离依赖关系。给定节点嵌入,通过线性映射计算第 m 个头的查询 键 和值 :

ff058910b19044669c850e3e05dd3d31.png

图自注意力有助于提供更多全局上下文信息来增强节点嵌入。除此之外,由于图中节点之间存在自然关系,即两节点之间的相对距离。所以本文结合每两个节点之间的最短路径距离的归一化矩阵 来增强表示。如果节点 p 和 q 的最短路径很大,则 相对较小,表示两节点之间关系较弱,最终多头图自注意力GSA计算缩放点积:

20691cae7ccbc514bd0ef699c811d43d.png

其中r是常数, 是一个缩放因子, 是一个表示节点归一化距离 的矩阵,。通过获得的注意力权重,可以得到第 m 个头的输出,并串联所有的输出从而得到最终的嵌入:

为了降低头的维度,多头节点特征送入前馈网络、残差连接和 LayerNorm 模块,得到更新后的节点特征 。这个图自注意力模块能够通过利用非局部图上下文捕获每个节点与其他节点之间的相关性。对输入图中的任意两个节点建模依赖关系,还考虑了每个节点对的距离。混合图编码器通过结合局部图卷积和全局多头自注意力,显著增强了节点表示,从而促进了下一步的相似度计算。

d60b95628cbb18d883fd4faa0a3e0427.png

66ce6690e39644768c59454b465faebe.png

为了捕获图之间的交互,现有方法首先将节点嵌入聚合形成对应的图级嵌入,然后通过图级表示的内积或余弦函数将一对图级表示映射到一个相似度分数。然而,这种简单的图相似度学习方式忽略了节点交互。因此,给定前一阶段生成的两个图的节点嵌入,本文提出了跨图协同注意力(GCA)模块来捕获两组节点嵌入之间的相关性。

以往的工作使用余弦函数,本文通过使用可学习的相似度评分函数。GCA 模块以任意两个图为输入,并输出它们的相似矩阵。给定一对图,其中一张图的节点视为查询,来自另一个图的节点视为键和值。

然后,计算注意力权重 ,以建模图 i 的第 p 个节点和图 j 的第 q 个节点之间的依赖关系,并同时考虑有向信息,提出一种有向节点-节点相似度学习方案,以充分捕获交互。

令 和 表示 和 的相似矩阵。使用掩码方法允许 GCA 模块对具有不相等大小的图建模节点-节点相似度。令 M 表示指示矩阵,其中每个元素表示是否是合法的节点对。对于图对 i 和 j,如果图 i 中的第 p 个节点和图 j 中的第 q 个节点存在,则 ,否则 。

1f67351fbcac4861f63e81468ba0538e.png

通过 GCA,两个图的节点嵌入, 被转化为多个相似矩阵,每个矩阵对应一个头,并包含根据相应头计算的成对节点-节点相似度分数。通过跨图协同注意力机制,可以保留有向相似信息。

然后,作者沿头的维度连接两个有向相似矩阵以获得第一阶段相似矩阵,,它能够在建模节点-节点交互的同时保留有向相似特性。GSA 和 GCA 模块的参数 和 是共享的,GCA 充当相似矩阵生成层,用于对两个图的每对节点嵌入之间的关系进行建模,生成包含节点-节点交互分数的多个相似矩阵。

GCA 中的多头机制使得该模型可以从多个语义角度捕获丰富的信息。但是,不同头关注不同的语义模式并生成多个相似矩阵,阻碍后续的相似矩阵学习过程。因此,需要自适应地融合和校准这些信息。

给定 GCA 获得的掩码相似矩阵集 ,本文提出相似度自注意力(SSA)模块来消除通过沿相似矩阵方向进行自注意力操作引入的不一致性,这样注意力模块可以看作是对多个不一致相似矩阵的校准。

首先将每个掩码相似矩阵 视为 token,并将矩阵 reshape 为掩码向量 。与原始自注意力不同,SSA 沿 reshape 后的相似向量轴进行自注意力计算,然后将相似向量归一化以平稳地传播梯度。再在相似矩阵上进行多头自注意力模块,即每个 sangs 8 通过三个线性层映射到 和 ,其中 表示此相似度校准多头模块中的头数。然后,通过自注意力公式计算更新后的相似矩阵:

ebf8bc683c8f7cb9d62bfc6899722df7.png

通过对齐的相似向量 ,将其恢复为矩阵形式 。通过沿相似矩阵方向利用自注意力机制进行相似度映射,SSA 模块能够通过有效捕获全局语义依赖关系来融合多级相似信息。对于具有大量节点的数据集,相似矩阵的大小很大,会增加计算复杂度。因此,在相似矩阵校准模块之前引入自适应池化层。

获得的相似矩阵对特定的图对 i 和 j 编码了特定的相似模式,目的是充分利用固有的结构和相似矩阵中的拓扑局部信息。作者在相似矩阵上提出了结构感知编码,它由两层组成:1)跨节点相似度编码层和 2)节点相似度学习层。为了对带有掩码元素的对齐相似矩阵应用结构感知编码,本文提出用零填充掩码部分来调整相似矩阵的大小,以保留相似矩阵的重要信息并固定大小。

f014ff9046e5819f570f7f30c37ca475.png

为了捕获相似矩阵的基本拓扑表示,文中提出了跨节点相似度编码层(CSL),它通过聚合 与两端节点相关的连接特征来利用相似度矩阵中的局部连接性。与 CNN 中的空间局部性不同,本文的局部性是指局部连接结构。如图 3,与图像不同的是相似度矩阵中不存在位置信息。因此,相似矩阵中的局部性表示与图 i 的第 p 个节点和图 j 的第 q 个节点相关联的所有行和列。

为了捕获局部信息,跨节点相似度编码层包含多个针对图中空间局部性的交叉形卷积核。令 M 表示跨节点相似度编码层的相似特征图,定义输入特征图 。跨节点相似度编码层的交叉形卷积核是计算量较小的水平和垂直方向滤波器组合而来,这两个基础滤波器在每个位置 进行单独的元素相乘,并在此对两个输出求和。跨节点相似度编码层定义为:

fad10c573e9a820d175e52de6a4630f3.png

其中 表示第 l 层第 p 和第 q 个节点之间连接的权重。CSL 的滤波器计算从第 q 个节点到第 p 个节点的所有连接上的权重之和。连接节点对包含了局部结构信息,这有利于节点相似度学习。

节点相似度学习层(NSL)以 CSL 增强的边嵌入为输入,并通过一维卷积滤波器将其映射以从节点视角生成节点嵌入。NSL 定义为:

509977641c1d75d1ad939447201757bb.png

其中 是经过 NSL 的第 p 个节点的嵌入, 是 NSL 中的通道数。图卷积层通过聚合自己的特征和邻居特征来更新节点表示,而 NSL 是通过聚合相关的边嵌入来获得节点表示的。

最终的训练损失为 MSE 损失:

7bd8b0b404912c4b661a066024068318.png

8ab0de321000cf68eb2e7a3fafdfb4bd.png

实验结果

与 SimGNN 和 GraphSim 相比,NA-GSL 考虑了更合适的交互方式和更有效的相似度矩阵学习方法,从而获得了更高的准确率。NA-GSL 模型的提升有三个原因:1)更全面的节点嵌入学习;2)更合适的图交互和 3)更有效的图相似度学习。该结果从节点的角度揭示了局部相似性特征学习的重要性,以获得准确的图相似性得分。

6be1d828b15578b86e8bde935079a7ba.png

表 3 到表 5 是不同数据集的消融实验,研究(i)节点嵌入学习过程中的残差连接、GSA 和节点距离感知;(ii)图相似度矩阵生成过程中的权重共享机制、GCA 和 SSA 模块;和(iii). 图相似度矩阵学习过程中的 SSL。

bbf63e936a887c5f1a6db00fda6fab81.png

去除 GSA 后,NA-GSL 的图相似度估计性能大幅下降,表明远距离依赖关系对节点嵌入学习至关重要,可以获得更好的性能。节点距离感知机制有助于 GSA 更有效地捕获非局部上下文。

ca96b68378a550ce899fcaeb39fb1717.png

f9f942d0a5cbde3ce0c93c0316fe9b59.png

测试了三个不同的图卷积模块,GraphSAGE 在 AIDS 数据集上表现最好,因为 GraphSAGE 在异构图上表现更好。从图 5 中可以看出,GCA 生成的相似度矩阵之间存在差距。此外,经过 SSA 后,不同语义层次的相似矩阵的 token 序列变得相似,这表明 SSA 对不同语义层次的相似矩阵对齐是有效的。

b5712680e3113295b8c9617722b90733.png

为了评估节点嵌入大小和头的数量如何影响我们的模型学习,进行参数敏感性分析,MSE 并没有随着节点嵌入规模的增大而减小,这表明较大的嵌入规模对于图相似度估计是不必要的,尤其是在 Linux 和 IMDBMulti 数据集上。在基于注意力的框架中加入更多的头,通常会带来更好的图相似性性能。可能的原因是,该模型可以从更多头部诱导的更多角度学习到更好的图相似性。

8ba0c7cbbde6740841aa6c86704ea2de.png

719bf9b26a0188a78c7dee2e51243110.png

总结

本文旨在通过引入多个基于注意力的模块,从节点角度改进图相似性学习。图相似度学习有两个关键步骤:1)通过编码每个节点周围的特征和结构属性进行图嵌入学习;2)基于这些特征向量进行相似度计算。

然而,图嵌入学习忽略了节点周围的局部结构,图相似度计算方式没有充分建模节点交互,也没有充分捕捉相似矩阵中的细粒度局部结构。针对该问题,提出一种节点注意力引导的图相似性学习方法,专注于学习有效的节点级表示、建模充分的节点-节点交互以及利用相似矩阵中的细粒度节点相似性模式。最后通过实验证明了模型的性能。

更多阅读

27084df4321658e6ceb8cfcc80e1f6b3.png

e49345439805139783a27cfb0878f25c.png

bf789d488e3003b3f2277bc7534fb8ae.png

d6d4783929acdfa0059ae47e99f22ebe.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

b20127cd1363e602757f22cf49985b0b.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

·

b4d66c109191f37e1fb6413ac181a1f6.jpeg

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答1: 知识库系统(Knowledge-based systems)是一种基于人工智能的计算机应用程序,它利用事先编写好的知识库(knowledge base)和推理机(inference engine)来解决特定领域内的问题。 知识库系统通常由三个部分组成:知识库、推理机和用户界面。知识库包含了一个特定领域内的知识和规则,这些知识和规则是由专家或知识工程师编写的。推理机根据用户提供的问题或情况,在知识库中搜索相关的知识和规则,并基于推理机中的推理规则进行推理和推断。用户界面允许用户与知识库系统交互,提供问题或情况,并获取系统的解决方案或建议。 知识库系统被广泛应用于各种领域,如医学诊断、金融分析、法律咨询、工程设计等,它可以帮助专业人员快速准确地解决特定领域内的问题。 回答2: 知识基础系统(Knowledge-based Systems)是一种使用先前获得的知识或经验来解决问题的人工智能技术。开发这样的系统需要使用专门的编程语言和工具来模拟人类的思维过程和决策过程。 知识基础系统是在人工智能领域非常重要的一部分。这种系统通过规则库,数据库和推理机构来模拟人类的推理过程,将专家的知识与计算机的处理能力结合起来,使计算机具备一定的“智能”。 知识基础系统具有以下几个方面的特点: 1. 高度可定制化:系统能根据不同问题的需求灵活更改动作、规则、知识库等内容,满足特定需求。 2. 可扩展性强:知识库中的知识是可以被不断丰富的,因为知识库可以从更多的域中吸收新的知识。 3. 可解释性强:该系统的决策过程是通过规则库和知识库进行的,因此可以经过一个透明的过程来解释系统的决策。 4. 面向任务:知识库中的知识都是与任务相关的,因此系统能够快速地回应用户的具体需求。 知识基础系统可以应用于许多不同的领域,如医疗、制造业、金融服务、交通、能源等。在这些应用领域中,知识基础系统可以为用户提供更加准确和高效的服务,提高工作效率,减少错误率。 未来,知识基础系统将会面临更多的挑战,例如技术应用越来越复杂,不断涌现的新技术需要不断升级、更新和迭代。但是,随着技术的不断发展和人工智能的普及,知识基础系统将在各个行业得到更广泛的应用,成为解决问题的重要手段。 回答3: 知识库系统是一种基于机器学习技术和知识表示方式的计算机程序,可以通过存储和使用专家的知识,自动地解决那些需要专业知识的问题,并为普通用户提供相应的决策支持。 在知识库系统中,专家知识被捕捉并表示为一些规则、框架、形、网络或其他形式,这些知识与专家文献、判例、实验数据等有关。在该系统中,专家知识被存储、管理和使用,以便在需要时自动解决所涉及的特定领域的问题。 知识库系统常常应用于诊断领域、规划领域和控制领域等,它们能够在实时解决重要的问题,提高生产效率,减少人为的误差,提高产品质量,满足客户的需求。 此外,知识库系统在社交网络、人工智能等领域也有广泛的应用。例如,在社交网络中,许多企业和人们都利用知识库系统来推广产品,提高用户体验,从而达到更好的销售目标。在人工智能领域,知识库系统被广泛用于智能家居、机器人等领域,它们利用已有的专家知识,实现自主决策、规划和控制,帮助人们更好地完成任务,提高生活质量。 综上所述,知识库系统是一种基于专家知识的计算机程序,它们可以在需求时自动解决相关领域的问题,提供有效的决策支持,并在现代社会中扮演着重要的角色。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值