深度学习----CVPR2018最佳论文提名Deep Learning of Graph Matching解读

读者反应,图片现在看不到了,之前图片还能显示,所以小编直接把原文放在上面,以便大家对照:http://openaccess.thecvf.com/content_cvpr_2018/CameraReady/1830.pdf


         ~~~~~~~~         作为一种常用的图数据处理技术,图匹配在计算机视觉中拥有丰富的应用场景和研究价值。CVPR2018最佳论文提名的工作Deep Learning of Graph Matching [1]首次将端到端的深度学习技术引入图匹配,提出了全新的深度图匹配框架。本文将首先介绍图匹配问题的背景知识,随后对深度图匹配论文进行深入的解读。

图 匹 配 图匹配
         ~~~~~~~~         图匹配(Graph Matching)试图在两个或多个图(graph)结构之间,建立节点与节点的对应关系。在计算机视觉领域,图匹配算法通常被用于求解多个图像(image)之间,关键点到关键点的匹配关系,如图 1。
                   ~~~~~~~~~~~~~~~~~~                   图 1 计算机视觉图匹配示意图
         ~~~~~~~~         相比于只考虑节点与节点之间一阶相似度关系的点匹配,图匹配还考虑了图结构中,边到边的二阶相似度,如图 2所示。图 2仅展示了图结构中,部分一阶相似度(蓝色箭头)与二阶相似度(红色箭头)的关系。实际上,在图匹配算法中,任意一对顶点、任意一对边之间,都存在相应的相似度度量。由于额外考虑了图结构中的二阶相似度信息,图匹配通常比简单的一阶点匹配更加精确和鲁棒。

                   ~~~~~~~~~~~~~~~~~~                   图 2 一阶与二阶相似度示意图

         ~~~~~~~~         考虑两个图结构之间的匹配,我们将一阶、二阶相似度建模为相似度矩阵。假设两图分别有个节点,则。其中的对角线元素代表点对点的一阶相似度,其余非对角元素代表边对边的二阶相似度。图匹配的目标是,找到一个最优的排列矩阵,最大化如下目标函数

         ~~~~~~~~         其中,x=vec(X)是将矩阵X按列向量化的结果,1是元素全为1的列向量。该问题属于NP-难的二次指派问题。研究者们已经提出了许多算法,在合理的时间复杂度下尽可能精确地求解该问题。对图匹配算法感兴趣的读者可以参考综述[3]。

         ~~~~~~~~         除了匹配两个图结构,研究者们还提出了同时匹配多个图结构的多图匹配算法,如[2]。在本文中,我们只考虑两个图结构之间匹配的简单情况,即二图匹配。
深 度 图 匹 配 简 介 深度图匹配简介

         ~~~~~~~~         论文Deep Learning of Graph Matching [1]获得了CVPR2018最佳论文的提名,这是第一篇结合了端到端深度学习以及图匹配的研究工作。过去的计算机视觉图匹配研究工作,研究者们大多使用SIFT等描述子或是手工定义的特征。这些人为构建的特征容易受样本噪声的影响,研究者们往往忽视了机器学习尤其是深度学习在图匹配问题上的巨大潜力。这篇工作将深度学习与图匹配结合,使用卷积神经网络CNN提取图像特征,同时学习构建相似度的匹配函数,通过反向梯度传播以及标准的深度学习梯度优化算法,实现端到端的训练。

         ~~~~~~~~         论文中提出的深度图匹配框架使用现有的CNN结构(VGG16 [4])从图像中提取图结构的一阶与二阶特征,基于这些特征构建上文中所述的相似度矩阵。随后,将相似度矩阵输入已有的图匹配求解算法[5]进行求解,得到匹配结果。深度图匹配的前向传播路径如图 3中黑色实线所示。在训练时,计算匹配结果与监督信息之间的损失函数,通过图 3中红色虚线所示的路径将梯度反向传播,实现端到端的参数更新

                   ~~~~~~~~~~~~~~~~~~                   图 3 深度图匹配概览

         ~~~~~~~~         如图 3所示,在论文中提出的深度图匹配框架下,提取特征的CNN网络、衡量相似度的匹配函数具有可学习的参数。论文中采用了已有的图匹配算法[5],求解相似度矩阵到匹配结果的映射。该图匹配算法具可微分的特性,能够在输入与输出之间传递梯度关系。因此,通过一个完全可导的图匹配框架,作者实现了端到端的深度图匹配。在之后的部分,我们将对深度图匹配论文中的细节进行解读。

细 节 解 读 细节解读

         ~~~~~~~~         深度图匹配的前向传播框图如图 4所示,包含了以下步骤:提取深度特征(Deep Feature Extractor)、构建相似度矩阵(Affinity Matrix)、求解图匹配(Power Iteration)、双随机化(Bi-Stochastic)、投票(Voting)以及计算损失(Loss)。在剖析前向传播的细节之前,我们先介绍深度图匹配问题的基本设定。

问题设定:
         ~~~~~~~~         考虑一幅源图片(source image)和一幅目标图片(target image),它们中包含同类别的物体,都具有关键点及其对应关系的标注。在训练和测试时,我们使用标注信息(ground truth)作为源图片的关键点,同时在目标图片中进行网格采样(grid sampling,例如16 x 16采样)作为候选的对应点。这样,就能够模拟实际应用中,已知关键点的源图与未知关键点的目标图之间的匹配关系。对于源图片,论文中使用德罗尼三角剖分(Delaunay Triangulation)构建图结构;对于目标图片,则对所有候选点构建全连接的结构。

 

提取深度特征:
         ~~~~~~~~         论文中使用了在ImageNet分类任务上预训练的VGG16[4]网络作为深度特征提取器,学习最适合图匹配问题的图像特征。实际上,由于CNN网络的中间层能够学习到图像中的共性特征,任何CNN模型稍作修改,都可以作为深度图匹配模型的特征提取器。在论文的实现中,作者在不同深度的中间层,分别提取一阶和二阶特征:在VGG16网络中,相对浅层的relu4_2激活信息被用于构建一阶特征,相对深层的relu5_1激活信息被用于构建二阶特征。根据深度学习中感受野(Receptive Field)理论,浅层的神经元拥有更小的感受野,包含更多的局部(local)信息,因此适合建模一阶特征;深层的神经元拥有更大的感受野,包含更多的全局(global)信息,因此适合建模二阶特征。在论文中,提取到的一阶特征由表示,二阶特征由表示,上标的1,2代表它属于第一或第二张图。在使用VGG16网络时,都拥有512维的特征维度。

 

构建相似度矩阵:
         ~~~~~~~~         论文中使用了深度学习提取的特征向量,基于人工指定的图结构,构建图匹配的相似度矩阵。其中,一阶相似度矩阵直接由一阶特征点乘得到

为获得二阶相似度,首先将每条边对应的两个节点的F连接,构建两个图的二阶特征矩阵X,Y(特征维度1024

之后构建二阶相似度矩阵

         ~~~~~~~~         二阶相似度包含了可学习的参数因而论文中的二阶相似度具有一个可学习的匹配函数。获得后,包含一阶、二阶相似度的相似度矩阵M可由论文中的式(22)构建,在此不再赘述。

求解图匹配
         ~~~~~~~~         根据使用的图匹配算法[5],图匹配的求解可以近似为求解相似度矩阵最大特征值所对应的特征向量(即leading eigenvector,以下简称最大特征向量)。幂迭代(Power Iteration)即是一种求解最大特征向量的迭代算法。初始化V0=1,通过不断迭代,收敛到矩阵M的最大特征向量

分母的符号表示二范数。

双随机矩阵的定义如下
         ~~~~~~~~         对于一个方阵X∈[0,1]n x n,若其每行、每列的求和均为1,则该矩阵称为双随机矩阵。在图匹配问题中,使用双随机矩阵表示匹配结果,可以直观地体现任意一对节点建立匹配关系的可能性,所以图匹配问题经常约束其结果为双随机矩阵。由Power Iteration算法求解出的匹配结果不满足双随机性,因此需要将其进行双随机化。我们使用迭代算法将矩阵双随机化:首先将矩阵按列归一化,随后将矩阵按行归一化。通过不断迭代,即可得到双随机矩阵。该步骤的数学表示为

投票 在算法实现时,上一步得到的双随机矩阵,同一行、同一列的元素的值相差不大。为了使差异明显,并为后续计算损失函数提供方便,作者将上一步得到的双随机矩阵乘以一个大常数α(论文中α=200),随后进行softmax处理,得到每个候选节点匹配的“可能性”矩阵。投票步骤输出的矩阵,仍然满足双随机的性质。

 

计算损失 : 作者使用了一种基于偏移向量的方法计算损失函数,见图 5。源图片中的关键点(第一张图,三角形点)在目标图片中的对应点(第二张图,三角形点)的位置。它们之间的偏移量,就是偏移向量(第三张图,红色箭头)。

                     ~~~~~~~~~~~~~~~~~~~~                     图 5 偏移向量

         ~~~~~~~~         首先,使用数据集的标注信息,可以计算真实的偏移向量随后,根据投票步骤获得的可能性矩阵,通过加权求和,可以得到模型预测的偏移向量d。论文中采用了如下的损失函数,最小化模型预测的偏移向量与真实的偏移向量之间的差

端到端训练:
         ~~~~~~~~         在模型训练时,得到损失函数后,就可以通过反向梯度传播算法,更新模型各个部分的参数。在论文中,作者详细地推导了提取深度特征、构建相似度矩阵、求解图匹配、双随机化等步骤的反向梯度。反向梯度的数学推导较为复杂,并且当下先进的开源深度学习框架都支持自动计算反向梯度,本文限于篇幅不做讨论,感兴趣的读者可以阅读论文的第三节。
总 结 总结
         ~~~~~~~~         Deep Learning of Graph Matching这篇工作首次将端到端的深度学习与图匹配问题结合,在学术界已经引起了不小的关注。结合机器学习,尤其是深度学习,提升传统计算机视觉算法的精度,是学术界发展的趋势之一。基于这篇工作,后续可能可以从主干网络、匹配函数、图结构学习、图匹配求解入手,进一步提高深度学习图匹配算法的精度。

 

 

参考文献

[1] Zanfir A, Sminchisescu C. Deep Learning of Graph Matching. Computer Vision and Pattern Recognition, 2018.

[2] Yan J, Cho M, Zha H, et al. Multi-Graph Matching via Affinity Optimization with Graduated Consistency Regularization. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2015, 38(6):1228-1242.

[3] Yan J, Yin X, Lin W, et al. A short survey of recent advances in graph matching. International Conference on Multimedia Retrieval.

[4] Simonyan K, Zisserman A. Very Deep Convolutional Networks for Large-Scale Image Recognition. International Conference on Representation Learning, 2015.

[5] Leordeanu M, Hebert M. A spectral technique for correspondence problems using pairwise constraints. International Conference on Computer Vision, 2005

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
近日,DeepMind 和谷歌联合进行了一项研究,该研究提出了一种执行相似性学习的新型强大模型——图匹配网络(GMN),性能优于 GNN 和 GCN 模型。该论文已被 ICML 2019 接收。 DeepMind 和谷歌的这项新研究聚焦检索和匹配图结构对象这一极具挑战性的问题,做出了两个重要贡献。 首先,研究者展示了如何训练图神经网络(GNN),使之生成可在向量空间中执行高效相似性推理的图嵌入。其次,研究者提出了新型图匹配网络模型(GMN),该模型以一对图作为输入,通过基于跨图注意力的新型匹配机制进行联合推理,从而计算它们之间的相似性分数。 研究者证明 GMN 模型在不同领域中的有效性,包括极具挑战性的基于控制流图的函数相似性搜索问题,这个问题在检索软件系统的漏洞中起着非常重要的作用。实验分析表明 GMN 模型不止能在相似性学习的环境下利用结构,还能超越针对这些问题手动精心设计的特定领域基线系统。研究主题:图相似性学习问题 图是编码关系结构的自然表征,常常出现在多个领域中。根据图结构数据定义的计算可以用在各种领域中,从计算生物学和化学的分子分析到自然语言理解中知识图或图结构解析的分析都可以。 近几年来,图神经网络(Graph Neural Network,GNN)已经成为可以有效学习结构数据表征、解决各种基于图的监督预测问题的模型了。这样的模型在迭代聚合局部结构信息的传播过程中设计并计算图节点表征,从而对图元素的排列(permutation)具有不变性。然后直接将这些节点表征用于节点分类,或者将它们合并到用于图分类的图向量中。而 GNN 在监督分类或回归以外的问题的相关研究相对较少。 DeepMind 的这篇论文研究的是图结构对象的相似性学习问题,这个问题在现实生活中有很多重要的应用,尤其是在图数据库中基于相似性的搜索。还有一个应用是涉及计算机安全的二元函数相似性搜索,给定的二元函数可能包含有已知漏洞的代码,我们要检查这个二元函数中是否有和已知易受攻击的函数相似的控制流图(control-flow-graph)。这有助于识别闭源软件中易受攻击的静态连结函式库,这是一个很常见的问题 (CVE, 2010; 2018),现在还没有很好的解决方法。图 1 展示了一个例子,在这个例子中用汇编语言注释的控制流图来表示二元函数。这种相似性学习问题极具挑战性,因为就算是图之间细微的差别也会造成语义上极大的不同,但结构不同的图语义上可能非常相似。因此,对这个问题而言,一个成功的模型应该(1)利用图结构;(2)能从图的结构和学习到的语义中推导出图的相似性。图 1:二元函数相似性学习问题。检查两个图是否相似需要推理图的结构和语义。左边两个控制流图对应使用不同编译器编译的相同函数(因此二者比较相似),但右侧图对应的是不同函数。 解决方案 为了解决图相似性学习问题,该论文研究了 GNN 在这种情况中的使用,探讨了如何用 GNN 将图嵌入到向量空间,并学习这种嵌入模型,从而使向量空间中相似的图靠近、不相似的图分开。这个模型的一个重要特性是它可以将每一个图独立地映射到一个嵌入向量,然后在向量空间中执行相似性计算。因此,可以预先计算并索引大型数据库中的图嵌入,这样就能用快速的最近邻搜索数据结构(如 k-d 树) 或局部敏感哈希算法 (Gionis et al., 1999) 执行高效的检索。 研究者进一步扩展 GNN,提出新型图匹配网络(Graph Matching Networks,GMN)来执行相似性学习。GMN 没有单独计算每个图的图表征,它通过跨图注意力机制计算相似性分数,来关联图之间的节点并识别差异。该模型依赖成对图计算图表征,因此它比嵌入模型更强大,并在准确率和计算之间做出了很好的权衡。 研究者在三个任务上评估了 GMN 和基线模型:仅捕获结构相似性的合成图编辑距离学习任务(synthetic graph edit-distance learning tas),以及两个现实世界任务——二元函数相似性搜索和网格检索,这两项任务都需要推理结构相似性和语义相似性。在所有任务中,GMN 都比基线和结构不可知(structure agnostic)模型的性能更好。在更详细的模型简化测试中,研究者发现 GMN 始终优于图嵌入模型和 Siamese 网络。 该研究的贡献如下: 展示了如何用 GNN 产生用于相似性学习的图嵌入; 提出了新型图匹配网络(GMN),该网络基于跨图注意力匹配来计算相似性; 实验证明,该研究提出的图相似性学习模型 GMN 在多个应用中都有良好的表现,比结构不可知模型和现有的手动建立的基线模型都要好。 深度图相似性学习 给定两个图 G1 = (V1, E1) 和 G2 = (V2, E2),我们需要一个可以计算两图之间相似性分数 s(G1, G2) 的模型。每个图 G = (V, E) 被表示为节点 V 和边 E 的集合,每个节点 i∈V 都可以和特征向量 x_i 相关联,每条边 (i, j) ∈ E 都可以和特征向量 x_ij 关联起来。这些特征可以表示节点类型、边的方向等。如果一个节点或者一条边不能关联任何特征,那么我们可以将对应向量设置成值为 1 的常量。研究者提出了两个图相似性学习模型:一个是基于标准 GNN 的学习图嵌入的模型;另一个是更为崭新也更加强大的 GMN。图 2 展示了这两个模型:图嵌入模型 图嵌入模型可以将每一个图都嵌入到向量中,然后用向量空间中的相似性矩阵衡量图之间的相似性。GNN 嵌入模型包括三个部分:编码器、传播层和聚合器。 图匹配网络 图匹配网络以一对图作为输入,计算它们之间的相似性分数。和嵌入模型相比,图匹配模型联合成对图计算相似性分数,而不是先将每个图独立地映射到向量上。因此,图匹配模型可能比嵌入模型更加强大,但它需要额外的计算效率。 图匹配网络改变了每个传播层中的节点更新模块,这样不仅可以考虑到每个图的边上的聚合信息,还可以考虑到衡量一个图中的一个节点和其他图中的一或多个节点匹配近日,DeepMind 和谷歌联合进行了一项研究,该研究提出了一种执行相似性学习的新型强大模型——图匹配网络(GMN),性能优于 GNN 和 GCN 模型。该论文已被 ICML 2019 接收。 程度的跨图匹配向量:以调整图的表征,在它们不匹配时放大它们之间的差异。 实验 研究者在三个任务上评估了图相似性学习(Graph Similarity Learning,GSL)框架、图嵌入模型(GNN)以及图匹配网络(GMN)的性能,并将这些模型与其他方法进行了对比。总体上,实验结果表明在图相似性学习任务上,GMN 表现优异,而且始终优于其他方法。 学习图编辑距离(GED) 图 G1 和 G2 之间的图编辑距离即将 G1 变换为 G2 所需的最小编辑操作。通常这些编辑操作包括添加/移除/替换节点和边。图编辑距离是衡量图之间相似性的自然指标,在图相似性搜索中有很多应用。 从下表 1 中可以看出,通过学习特定分布的图,GSL 模型的性能优于一般的基线模型,而 GMN 的性能持续优于图嵌入模型(GNN)。基于控制流图的二元函数相似性搜索 二元函数相似性搜索是计算机安全领域中的重要问题。当我们无法获取源代码时,可以通过二元函数执行分析和搜索,例如在处理商业或嵌入式软件或可疑的可执行程序时。 下图 4 展示了具备不同传播步和不同数据设置的不同模型在二元函数相似性搜索任务上的性能。从图中,我们可以看到: 图嵌入模型和图匹配模型的性能随着传播步的增加而持续提升; 在传播步足够的情况下,图嵌入模型持续优于基线模型; 图匹配模型在所有设置和传播步的情况下都优于图嵌入模型。研究者检测了GMN 模型中不同组件的效果,并将 GMN 模型与图卷积网络(GCN)、图神经网络(GNN)和 GNN/GCN 嵌入模型的 Siamese 版本进行对比。 下表 2 展示了实验结果,表明: GNN 嵌入模型是具备竞争力的模型(比 GCN 模型强大); 使用 Siamese 网络架构基于图表征学习相似性要比使用预先指定的相似性指标(Euclidean、Hamming 等)好; GMN 优于Siamese 模型,这表明在计算过程早期进行跨图信息交流是非常重要的。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值