1. Dirichlet Energy Constrained Learning

1.1 dirichlet energy

归一化拉普拉斯矩阵+ 归一化邻接矩阵

通过拉普拉斯矩阵和特征矩阵的形式求得 节点与节点之间 特征的差值:谱图理论书中第一节 就有相关的定义,reyleigh 熵和 二次型的样子。实质就是拉普拉斯矩阵的性质。

指出: 小的 迪利克雷能量 表明节点很相似,over-smoothing。大的 表明 over-separating,有可能相同类别的 节点都 变得很远。 当层数变多,这个能量上界收敛到0.

1.2 松弛分析

首先本文 沿着 SGC,去掉了 非线性。
lemma1 表明: 能量的上下界 和 拉普拉斯矩阵的 特征值有关。同时 参数矩阵 Wk的 最小和最大 奇异值 也有一定给 关系

lemma2
先 松弛 下界。 真实的图拉普拉斯矩阵的 特征值[0,2) 之间,上界λ0=0时,下界的λ1=1时,lemma1 松弛到lemma2
通过经验表明 当采用 glort初始化和l2正则,在深层gcn中 Wk趋近于0,因此相应的 奇异值 也趋近于0。 相反,如果没有l2和初始化,则 smax过大,导致 over-separating。

1.3 约束


先通过linear转化最开始的X获得 X0
下界: c min,(0,1)。选择合适的cmin 满足大于0,且k层的E大于最开始X0层的E, 即 :E(X(k)) ≥ ckminE(X(0)) > 0. (使得所有层的能量都大于cmin,从而不会过平滑)
上界:c max (0,1]。 避免 相同类 有很大的 E, 避免过分开

优化目标:
交叉熵+ W的范数 约束 + 能量约束 条件

此方程的求解是 non-trivial的,求得X的E是 很昂贵的,许多的约束使问题成为一个非常复杂的优化超平面,在其中原始任务目标往往落入局部最优。

2.Energetic GNN

由于上述约束导致 问题难以求解,作者通过以下三个方式来 满足上述约束, 权重,残差,激活

2.1 Orthogonal Weight Controlling

优化目标6 如果不 对 W 加 正则约束,能量上界 会 越界 大于 E(X0). 采用两种正则

2.1.1 Orthogonal initialization 初始化方式

广泛使用的 glort正则 不能 约束 W的奇异值 ,作者采用显示地 初始化W成为对角阵,从而控制 奇异值,标黄的为 约束的等式,即就让每一层的 能量 小于下届

第一层 W1 初始化sqrt(cmax) 以及 后续层 (奇异值平方=1)的 初始化方式, 这样使得 每一层都小于 cmaxE(X0)

2.1.2 Orthogonal regularization 训练过程正则

训练过程 这些W还是会变,不能够保证满足初始时候的理想约束。 这里对于 W1 和后续的W 在进行约束,通过矩阵的F范数,使得 训练时候的 权重和 初始化权重 之间的距离 不太远。 大的γ 约束力强,小的γ 使得损失侧重于task的损失(分类)

2.2 Lower-bounded Residual Connection

尽管上面约束了 上界, 但有时候 能量 会小于 下界。 lemma1 的下界,在真实情况下,当λ1=1,会松驰到 lemma2. 这里没怎么 解释清楚,为什么会 当smin>0 ,也会小于 下界。可能是 有的 图 的拉普拉斯矩阵的 特征值 不在 [0,2) 之间。

本文通过 alpha+beta = cmin 来增加 上一层和 初始残差来保证 下界。

2.3 SReLU Activation

relu 会使得 小于0的值变成0,从而减小了 能量(表征间的差值)。如果不加 激活函数,比如 SGC,缺少了 非线性。 本文设计的SReLU在线性和非线性之间, 当b无限大,激活函数 成为 线性。当X小于b,则为非线性 映射到b。 试验中 初始化b为 一个负值,通过损失来调节。

3.code

SReLU的实现 : 借用了 relu max(0,x) 。 如果 x-b 大于0,则返回 x-b+b =x 如果 x-b 小于0, 返回 0+b ,返回b



c min 和max的调节,beta,srelu里面的 b 。

代码关于参数矩阵 W的处理:

第一层 W1 初始化为 单位矩阵* sqrt(cmax),其余层 cmax=1,,对应文章的第一个 change

代码关于 参数矩阵W 后续通过损失约束:

通过 torch.norm 来计算损失,后续的k-1层每一层 计算W权重(model.layers_GCN.weight) 和第0层 standard(sqrt(cmax))的范数

传播



layer中的以下代码 等价于上面的 公式(计算表征*W),没有激活

model中 增加激活函数层

4.think

对于 W 进行 正交约束 2022有个正交GNN, 采用 两种残差,这个 想法很直接,也可以尝试。激活函数也是比较简单 实现,可以尝试替换。

文章对W 初始化限制并加上约束 也 很有理论 依据。 (奇异值)

ICLR21: EGNN Dirichlet Energy Constrained Learning for Deep Graph Neural Networks相关推荐

  1. 【论文导读】- STFL: A Spatial-Temporal Federated Learning Framework for Graph Neural Networks

    文章目录 论文信息 摘要 Contributions Methodology Graph Generation Graph Neural Network 联邦学习 Experiment 数据集 Nod ...

  2. Paper之DL之BP:《Understanding the difficulty of training deep feedforward neural networks》

    Paper之DL之BP:<Understanding the difficulty of training deep feedforward neural networks> 目录 原文解 ...

  3. 论文阅读:Understanding the Effective Receptive Field in Deep Convolutional Neural Networks

    文章目录 论文总述 2.感受野的定义 3.理论感受野大小的计算 4.3种增加感受野的操作 5.感受野中心像素的值对输出feature map 的response影响比边缘的像素更大 6.如何知道fea ...

  4. Graph Neural Networks: A Review of Methods and Applications(图神经网络:方法与应用综述)

    Graph Neural Networks: A Review of Methods and Applications 图神经网络:方法与应用综述 Jie Zhou , Ganqu Cui , Zhe ...

  5. Iterative Deep Graph Learning for Graph Neural Networks: Better and Robust Node Embeddings

    摘要:在本文中,我们提出了一个端到端的图学习框架,即迭代深度图学习(IDGL),用于联合和迭代地学习图结构和图嵌入.IDGL的关键理论是基于更好的节点嵌入来学习更好的图结构,反之亦然(即基于更好的图结 ...

  6. 【论文分享】小样本图片分类方法:AwGCN:Few-Shot Learning With Attention-Weighted Graph Convolutional Networks

    题目:Few-Shot Learning With Attention-Weighted Graph Convolutional Networks For Hyperspectral Image Cl ...

  7. 【论文分享】★★★「SOTA」小样本图神经网络分类模型 HGNN:Hybrid Graph Neural Networks for Few-Shot Learning

    题目:Hybrid Graph Neural Networks for Few-Shot Learning 链接:https://ieeexplore.ieee.org/stamp/stamp.jsp ...

  8. 【Deep Learning】笔记:Understanding the difficulty of training deep feedforward neural networks

    这几天读了这篇论文,在这里将大致内容写在这里. Abstract 介绍这篇论文的主要内容就是尝试更好的理解为什么使用"标准随机初始化"来计算使用标准梯度下降的网络效果通常来讲都不是 ...

  9. Paper:《Graph Neural Networks: A Review of Methods and Applications》翻译与解读

    Paper:<Graph Neural Networks: A Review of Methods and Applications>翻译与解读 目录 <Graph Neural N ...

最新文章

  1. 超高性能管线式HTTP请求(实践·原理·实现)
  2. HttpClien GetPost
  3. 聚数引智,承德大数据产业对接交流会将于2019中国国际数字经济博览会期间召开...
  4. 理论基础 —— 索引 —— 倒排索引
  5. 鬼谷子72术,完整收藏
  6. Unity3D(四)Camera和SkyBox
  7. 电脑如何录制正在播放的视频 这个方法太简单了
  8. 《别闹了,费曼先生》1
  9. TINA电路仿真软件安装教程
  10. DC-DC LLC转换器 matlab simulink仿真显示了一个DC-DC LLC功率转换器与频率控制
  11. 远程控制软件编写--系列教程
  12. 计算机computer英语划分音节,英语基础知识1.computer有___个音节,按划分音节的规则,应为____.A.1;computer B.2;com...
  13. 体验服官网和平精英维护服务器,和平精英体验服怎么注册?和平精英体验服注册流程...
  14. LeetCode——四数之和
  15. 【c语言】判断整数x是否是同构数。若是同构数,函数返回1;否则返回0.
  16. scratch少儿编程实例教程(模拟动画片项目式教学)——幻影龙动画编程
  17. Scrapy 2.6 Items 数据项定义、加载、传输使用指南
  18. 机器人控制器编程整理汇总-辞旧迎新-
  19. 戴维·考克斯爵士去世
  20. RedisTemplate常用操作工具类封装,实现一个函数添加,删除,更新及对应批量操作

热门文章

  1. linux黑洞设备的路径,linux基本指令
  2. 力扣 1652. 拆炸弹
  3. 员工被离职后如何预防渣公司的反向操作
  4. 自由能(Free Energy)(一)
  5. 算法导论习题,思考题题解博主录
  6. 你还在靠一份工资生活吗?
  7. 面渣逆袭:Java并发六十问,图文详解,快来看看你会多少道
  8. 如何刷新微信服务器小程序版本,微信小程序版本自动更新
  9. 从零开发一款相机 第五篇:Camera api1实现预览、拍照、录像功能
  10. 换硬盘之后如何迁移 hexo 博客