文献阅读《Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering》

news/2025/4/1 23:51:03/文章来源:https://www.cnblogs.com/cdag/p/18797030

参考博客:

论文解读二代GCN《Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering》 - 别关注我了,私信我吧 - 博客园 (cnblogs.com)

摘要

为将CNN推广到高维图结构数据中,基于spectral graph theory(谱图理论),设计了一种通用的fast localized convolutional filters。优势有如下:具有和经典卷积神经网络相同的

  1. linear computational complexity
  2. constant learning complexity

Introduction

在图像、视频等领域,卷积神经网络借助于局部卷积滤波器或者内核识别来提取数据中的局部特征,并组合成多尺度层次模式。
而社交网络的用户数据、生物网络的基因数据等等位于非欧几里得域的数据,一般是通过图结构来进行描述,因其能够对于异质成对关系进行很好的表示。
因此,将卷积和池化操作推广到图结构是本文的目标,主要贡献有以下:

  1. Spectral formulation
  2. Strictly localized filters
  3. Low computational complexity
  4. Efficient pooling
  5. Experimental results

Proposed Technique

文中提出了三个步骤:

  1. 设计图上局部滤波器
  2. 图粗化
  3. 高效的图池化过程

局部滤波器

文中,作者提出了一种多项式参数化的滤波器,使得学习复杂度从非参数化滤波器的O(n),降低到了O(K),K是滤波器的支撑大小,因此,复杂度降低到了与经典卷积神经网络相同的复杂度。

图粗化

在这个过程中,作者使用Graclus算法对于相似结点进行相应的合并,进而每次减少约一半的结点。
但是,值得注意的是,每次图粗化后,图的拓扑结构会发生相应的变化,因此需要求相应的拉普拉斯矩阵。

图池化过程

从文中可知,首先使用 Graclus 算法对图进行粗化,在每一层粗化时,Graclus 的贪心规则是在每一个粗化层级选取未标记顶点并与邻居匹配,匹配完标记节点并设置粗化后的权重,重复操作直到所有节点被处理,得到不同层级的粗化图(如G1​、G2​等),此时顶点是无特定有意义排列的。
之后分两步进行处理,一是创建平衡二叉树,为使每个节点都有两个子节点,会添加虚拟节点(fake nodes)与单例节点配对;二是在最粗层级任意排序节点,然后将排序传播到最细层级,从而在最细层级得到规则的顶点排列。
这个时候,对于池化操作进行处理时,就会近似于一维池化操作,内存的访问是局部性的,利于GPU并行架构。

TIP:图粗化过程

graph coarsening procedure 即图粗化过程,是将卷积神经网络推广到图结构中的一个重要步骤,旨在为池化操作提供有意义的邻域,同时保留图的局部几何结构。

TIP:匹配局部领域的挑战

  1. 图结构的不规则行:图中节点的连接方式复杂多样,不像规则网格有固定的邻域模式。在规则网格上,如二维图像像素,邻域相对固定,卷积操作能以统一方式提取特征。但在图中,不同节点的邻居数量和连接关系差异大,难以用统一规则确定和处理局部邻域 。例如,社交网络中,某些节点可能有大量邻居,而有些节点邻居很少,这使得设计能适用于所有节点的局部卷积滤波器变得困难。
  2. 缺乏统一平移定义:在空间域中,图上没有像规则网格那样明确、唯一的平移概念。在图像等规则网格中,平移操作很明确,卷积核可按固定方向和步长滑动。但在图中,节点排列无规律,无法简单定义平移,这导致难以实现类似规则网格的卷积操作,影响滤波器在不同位置提取相似特征的能力,增加了匹配局部邻域的难度 。

TIP:池化后的反向传播

池化后改变了图的尺寸,是一个不可导的环节,因此,我们需要思考如何进行反向传播。
assets/文献阅读《Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering》/file-20250327201148928.png

  1. 平均池化
    对于平均池化来说,由于当前位的元素是由区域内所有元素取平均值所得,因此该梯度和为所有元素的梯度之和。因此,我们在反向传播的过程中只需将当前位的梯度值均分即可。
    assets/文献阅读《Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering》/file-20250327201235953.png
  2. 最大池化
    对于最大池化而言,由于当前位的元素是由区域内所有元素取最大值所得,因此该梯度和仅取决于该位的元素,即其余元素的梯度应置为0。因此,我们在前向传播的过程中应该记录该最大值的位置索引。
    assets/文献阅读《Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering》/file-20250327201333570.png
  1. 图信号处理
    弥合信号处理与谱图理论之间的差距,将一系列卷积、平移等一系列操作在保留原有直观概念的同时,引入到图数据当中。

  2. 非欧领域的卷积神经网咯
    主要提及了一些之前的工作

实验

数据集:
MNIST
20NEWS

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

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

相关文章

1013 Div3 F题目加注释

https://codeforces.com/contest/2091/problem/F这题主题思路就是递推,从下往上递推,然后用差分和前缀合得到下一行可能性,详细看代码注释点击查看代码 #include <bits/stdc++.h> using namespace std; using ll = long long; using pii = pair<int, int>; const…

20244319 实验二《Python程序设计》实验报告

20244319 2024-2025-2 《Python程序设计》实验二报告 课程:《Python程序设计》 班级: 2443 姓名: 梁悦 学号:20244319 实验教师:王志强 实验日期:2025年3月26日 必修/选修: 公选课 一、实验内容 1.设计并完成一个完整的计算机应用程序,完成加、减、乘、除、log等运算,…

让 LLM 既能“看”又能“推理”!

DeepSeek-R1 会推理,GPT-4o 会看。能否让 1 LLM既能看又能推理? DeepSeek-R1取得很大成功,但它有个问题——无法处理图像输入。 1.1 DeepSeek模型发展 自2024.12,DeepSeek已发布:DeepSeek-V3(2024.12):视觉语言模型(VLM),支持图像和文本输入,类似 GPT-4o DeepSeek-…

WindowsPE文件格式入门03.节表

https://www.bpsend.net/thread-306-1-1.html dump 我们点击运行程序进程加载时时,是把文件里面的数据映射进内存,这样进程里面的内存就拿到了各种各样的代码,数据等资源,但是如果我们反着来,就可以从进程的内存里把 exe 文件提出来,这个过程叫做dump过程 dump过程在对抗里面经…

7-二次、加解密、DNS等注入

加解密注入其实就是数据被加密了,注入的时候要先把注入语句进行相应加密再注入,只是叠加了一次加密而已二次注入二次注入一般用于白盒测试,黑盒测试就算是找到注入也没办法攻击 二次注入无法通过工具或手工发现,只能观察源代码才能发现 一般产生在有数据互联的情况,比如有…

8-WAF绕过

WAF WAF部署安全狗,宝塔等waf搭建部署 https://blog.csdn.net/nzjdsds/article/details/93740686 流量防护:某ip访问过多入黑名单 建议阿里云搞个服务器部署进行绕过测试WAF常见功能总体来说,WAF(Web Application Firewall)的具有以下四个方面的功能:审计设备:用来截获所有…

一个基于 .NET 开源免费的异地组网和内网穿透工具

前言 今天大姚给大家分享一个基于 .NET 开源免费的异地组网和内网穿透工具:linker。 工具介绍 linker是一个基于 .NET8 开源免费(GPL-2.0 license)的异地组网和内网穿透工具,支持TCP(支持IPV6)打洞、UDP打洞,服务器中继,异地组网使用虚拟网卡将各个客户端组建为局域网络、…

还是继续写博客吧!作为留痕、作为给面试官了解我的资料。

今天我被约谈了,没错,说的是“毕业”的事情 今天下午三点的时候,我接到了一个工单,我很纳闷,这是一个很简单且稳定运行了几年的东西,怎么有问题了?这个系统我太熟悉了,简单看下日志,便发现了问题所在——用户信息上的关键标识缺失,导致了某个接口查询无结果。我赶紧联…

SvelteKit 最新中文文档教程(12)—— 高级路由

前言 Svelte,一个语法简洁、入门容易,面向未来的前端框架。 从 Svelte 诞生之初,就备受开发者的喜爱,根据统计,从 2019 年到 2024 年,连续 6 年一直是开发者最感兴趣的前端框架 No.1:Svelte 以其独特的编译时优化机制著称,具有轻量级、高性能、易上手等特性,非常适合构…

代码随心录第一天|Leecode (704二分查找、27移除元素、977有序数组的平方

Leecode 704二分查找 题目链接:https://leetcode.cn/problems/binary-search/ 题目描述 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。题目解法 思路: 题目前提是数组为有序…

Linux输出重定向全攻略:掌握命令行高效管理的艺术

概述 在Linux中,输出重定向是一种将命令的输出(标准输出或标准错误)重定向到文件或其他设备的方法。以下是一些常见的输出重定向操作符及其用法:标准输出重定向 (>)将命令的标准输出重定向到一个文件中。如果文件不存在,它会被创建;如果文件已经存在,它会被覆盖。 co…