DeepGCNs:采用 CNNs 的思路来训练更深 GCNs 模型
论文标题 | DeepGCNs: Can GCNs Go as Deep as CNNs?
论文来源 | ICCV 2019
论文链接 | https://arxiv.org/pdf/1904.03751.pdf
源码链接 | https://github.com/lightaime/deep_gcns_torch
TL;DR
由于 deep GCN model 会产生 over-smoothing 的现象(也可以理解为梯度消失),所以目前基于 GCN 的模型都比较浅,大概 3-4 layers。如果 GCN 和 CNN 类似,那么增加 layers 的数量模型的效果应该会更好。基于这种假设和类推,这篇文章仿照 CNN 中的方法,提出了三种可以增加 GCN 深度的方法。在图像点云分割的实验中证明本文使用更深的 GCN 模型可以提升效果。
Algorithm/Model
对于 CNN 模型,如果需要增加网络的深度,目前有以下三种方法:
- residual connections.
- dense connections.
- dilated convolutions.
作者仿照 CNN 模型中增加深度的方法,在 GCN 中也同样使用这三种方法。
首先,对于点云分割的任务,文章中提出的模型如下图所示:
以下介绍模型中如何应用以上提到的三种方法:
- Residual Learning for GCNs
和 CNN 中一致,将输入和输出相加:
- Dense Connections in GCNs
跨 layers 之间特征连接:
- Dilated Aggregation in GCNs
根据 K-NN 的 vertices 进行空洞卷积:
对于 image 和 graph 的空洞卷积如下图所示:
使用以上三种技术,文中提出的 GCN 可以达到 56 layers GCN,并且在点云分割实验中达到了很好的效果。
Experiment Detail
Thoughts
文中通过将 GCN 和 CNN 相对比,为了增加 GCN 的深度使用了和 CNN 中相似的方法,创新点不大但是实用性很大,在以后实现模型中可以尝试。
联系作者
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 梦家博客!
评论
TwikooValine