核心思想

  该文提出一种二次约束下的深度图匹配算法。所谓二次约束就是指图的结构约束,也就是说匹配两个图的过程中不仅考虑节点之间的相似程度,还要考虑图的结构之间的相似程度。这在传统的图匹配工作中是非常常见的约束条件,而在基于深度学习的图匹配工作中研究的还比较少。主要是如何引入该约束条件,且使其计算过程可微,能够进行梯度计算和反向传播。作者还提出一种新的损失函数,与基于交叉熵损失函数的方法不同,该方法考虑到了类别间的不平衡问题。因为正确匹配的点数量是很少的,而错误匹配点数量很多,两者之间的数量是不平衡的。如果单纯的使用交叉熵损失函数进行训练,容易出现过拟合与梯度爆炸的问题。该文的实现过程如下图所示

实现过程

  首先,输入两幅图像、对应的关键点以及图,关键点是由人工标注或关键点提取算法得到的,图结构是利用Delaunay三角剖分得到的。将图像输入卷积神经网络提取的特征,并通过双边上采样的方式与关键点对齐,特征提取与对齐如下式所示

U,F\mathbf{U,F}U,F分别表示不同层级网络输出的关键点特征,III表示输入图像,VVV表示关键点集合。对于每个关键点的一元特征PPP,其包含两个层级的关键点特征Pr=cat(U,F)P_r=cat(\mathbf{U,F})Pr​=cat(U,F)和关键点坐标[x^,y^][\hat{x},\hat{y}][x^,y^​]。为了引入节点之间的结构特征,作者提出一种加权邻接矩阵ADA_DAD​和BDB_DBD​分别用来描述两幅图的节点之间的连接关系,其计算方式如下

A,BA,BA,B表示两幅图原本的二元邻接矩阵,用[0,1]表示节点之间是否有连接。而f(P)f(P)f(P)可以看作是每个连接的权重,本文采用一种简单的线性核来计算f(P)f(P)f(P),fi,j=piTpjf_{i,j}=p_i^Tp_jfi,j​=piT​pj​,pip_ipi​表示矩阵PPP的第iii行。

如上图所示,f(P)f(P)f(P)的几何含义其实描述了两个特征向量之间的余弦距离,

其数值越大表示两个节点的相似程度越高,进而两个节点之间的连接权重也越大。
  然后利用图卷积神经网络GCN,通过信息传递机制来聚合相邻节点的信息,更新后的节点特征如下

其中Wrl,WslW_r^l,W_s^lWrl​,Wsl​表示GCN中第lll层的可学习参数。对于A,BA,BA,B两幅图都经过上述的信息聚合过程得到对应的更新的节点特征PAl,PBlP_A^l,P_B^lPAl​,PBl​,然后计算两幅图节点之间的关联矩阵KplK_p^lKpl​,计算方法如下

其中WafflW_{aff}^lWaffl​为可学习的参数矩阵,作者采用Sinkhorn算法将KPlK_P^lKPl​转化为双随机矩阵DDD。
  得到了关联矩阵KPlK_P^lKPl​后就可以尝试求解图匹配问题了,本文采用Koopmans-Beckmann的描述方式,目标函数如下所示

其中一元关联矩阵Xu=KPlX_u=K_P^lXu​=KPl​,匹配关系初始值X0=KPlX_0=K_P^lX0​=KPl​,通过迭代求解最优的匹配关系XXX即可完成图匹配过程。作者采用了可微分的Frank-Wolfe算法求解XXX,计算过程如下

其中ϵk=2k+2\epsilon_k=\frac{2}{k+2}ϵk​=k+22​表示每次迭代的步长,fprojf_{proj}fproj​在训练阶段采用Sinkhorn层,用于将参数映射为双随机矩阵,在推断阶段采用Hungarian算法用于获得离散结果。g(X)g(X)g(X)的梯度为

其中

  最后,为了实现网络的训练,作者提出了一种考虑类别不平衡性的损失函数——误匹配损失:

其中i∈GA,j∈GBi\in \mathcal{G}_A, j\in \mathcal{G}_Bi∈GA​,j∈GB​表示A,BA,BA,B图中的节点,X∗X^*X∗表示groundtruth匹配关系,α,β\alpha,\betaα,β是两个超参数项,L+,L−L_+,L_-L+​,L−​分别用于惩罚假阳性匹配和假阴性匹配。L+L_+L+​约束原本不匹配的点,但被误判为匹配的点要尽量少,L−L_-L−​则是约束原本匹配的点,但被误判为不匹配的点要尽量少,两者的关系如下图所示

创新点

  • 将二次约束引入到深度图匹配中,并提出一种可微分的训练方式
  • 设计了一种考虑类别不平衡性的损失函数

算法评价

  整篇文章的思路和设计还是比较中规中矩的,没有特别出彩的想法。损失函数的设计与之前的工作相比是有一定的创新性的。

如果大家对于深度学习与计算机视觉领域感兴趣,希望获得更多的知识分享与最新的论文解读,欢迎关注我的个人公众号“深视”。

论文阅读笔记《Deep Graph Matching under Quadratic Constraint》相关推荐

  1. 《Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs》论文阅读笔记

    <Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs>论文阅读笔记 主要挑战贡献: KG上的推理挑战主要 ...

  2. 论文阅读 | NIPS‘20 | Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs

    很有意思的一篇paper.在众多Knowledge Graph Embedding (KGE) 的论文中通过问题设计和有意思的解决方式脱颖而出. 首先来看看问题设计. 一般的KGE model都是利用 ...

  3. Beta Distribution Guided Aspect-aware Graph for Aspect Category Sentiment Analysis论文阅读笔记(EMNLP2021)

    目录 标题翻译:基于Beta分布引导方面感知图的方面类别情感分析 原文链接:https://aclanthology.org/2021.emnlp-main.19.pdf 摘要: 1 引言 2 相关工 ...

  4. Phrase-BERT: Improved Phrase Embeddings from BERT with an Application to Corpus Exploration论文阅读笔记

    问题: 因为bert是在长文本(512token长度)预训练的,因此,如果没有特定于任务的微调,BERT在短语和句子上的表现通常比简单基线(如GLoVe的平均池化)更差.且字节2020在EMNLP上的 ...

  5. DeepWeak: Reasoning Common Software Weaknesses via Knowledge Graph Embedding 阅读笔记

    DeepWeak: Reasoning Common Software Weaknesses via Knowledge Graph Embedding 阅读笔记 Article Background ...

  6. [论文阅读笔记] Are Meta-Paths Necessary, Revisiting Heterogeneous Graph Embeddings

    [论文阅读笔记] Are Meta-Paths Necessary? Revisiting Heterogeneous Graph Embeddings 购物返利 www.cpa5.cn 本文结构 解 ...

  7. 论文阅读笔记—Reasoning on Knowledge Graphs with Debate Dynamics(AAAI,2020)

    这是一篇非常有趣的工作,看完会觉得眼前一亮. 论文标题:Reasoning on Knowledge Graphs with Debate Dynamics 发表于AAAI,2020 动机  很多机器 ...

  8. 论文阅读笔记——《a simple but tough-to-beat baseline for sentence embeddings》

    <a simple but tough-to-beat baseline for sentence embeddings>published at ICLR 2017. ICLR会议的论文 ...

  9. Learning Hierarchy-Aware Knowledge Graph Embeddings for Link Prediction论文阅读笔记

    我的博客链接 0. 前言 1. 作者试图解决什么问题? 作者想在KGE中对语义层级(semantic hierarchies)进行建模. 2. 这篇论文的关键元素是什么? semantic hiera ...

  10. 斯坦福图机器学习CS224W笔记自用: Reasoning in Knowledge Graphs using Embeddings

    1. 基于嵌入的知识图推理 目标:如何对知识图进行多跳推理? 知识图推理: 回答多跳查询 路径查询 连接查询 Query2box 示例:生物医学图 知识图谱上的预测查询 我们是否可以进行多跳推理,即在 ...

最新文章

  1. 为什么越来越多的人都不再愿意做程序员了?
  2. innodb表 手工导入导出
  3. mysql事务,START TRANSACTION, COMMIT和ROLLBACK,SET AUTOCOMMIT语法
  4. Linux内核态之间进程通信,内核态和用户态通信(二)--实现
  5. Hybrid A*论文解析(2)
  6. TensorFlow2 Win
  7. PHP设计模式——中介者模式
  8. redis和couchbase的比较
  9. qgis自定义符号库
  10. PHP 千图成像,千图成像,教你制作由无数图片组成的人像效果
  11. 【数字IC】深入浅出理解UART协议
  12. 不属于计算机完成科学特点的是,2019年网络教育统考《计算机应用基础》试卷版练习题2...
  13. mix3android auto,小米MIX3滑盖全面屏值不值得买?三天真实体验说说优缺点
  14. linux上咋修复windows引导,linux rescue 修复引导 与linux下修复windows引导
  15. python中的开根、取整、求对数
  16. javascript的基本概念
  17. jenkins基础知识
  18. tomcat官方下载(历史版本,旧版本)
  19. Oracle使用纪要
  20. 芯片STC89C52 (宏晶STC)

热门文章

  1. swiper使用教程
  2. Android chrome默认设置Autoplay policy
  3. XShell远程登录华为云服务器
  4. php 获取当天是星期几,php 怎么获取今天星期几
  5. 陈一舟:以前创业占地就行 现在要做游击队
  6. 浅谈IM(InstantMessaging) 即时通讯/实时传讯
  7. locale 国际化配置(springboot)
  8. 苹果电脑安装windows双系统
  9. python操作word生成目录_Python操作Word批量生成文章
  10. 中国数字乳房断层合成(DBT)设备市场趋势报告、技术动态创新及市场预测