GCN-Global Convolutional Network
问题:
下图引用自:https://blog.csdn.net/u011974639/article/details/78897066
因此这个任务本身就是矛盾的。从定位的角度来看,模型结构应该是完全卷积的,不应该使用全连接或全局的池化,因为这些层将丢弃位置信息;从分类的角度看,模型需要对输入的变换保持不变——对象可以移动、旋转或重新缩放,但分类结果不发生改变,因此需要更为大的核,才能保证具有较强的鲁棒性。
现在的大多数模型主要考虑的是定位问题,而没有考虑到分类问题,这对于分类任务不是应该最先考虑的。
图A是一个分类的模型,就像是圆锥形,由底层向上提取高纬度的全局特征用于分类(不同层数有融合),但是分辨率太低,空间信息丢失过多,不利于定位;图B是定位模型,尽可能地保证能够图像分辨率足够高,然而,由于分类器是局部连接而不是全局连接到特征图,因此分类器很难处理输入上的不同变换(旋转等)。图C作者提出的模型,这种模型在保证了定位的分辨率的同时,通过不同的局部特征图的密集连接,得到了综合的考虑。
方法:
Global Convolutional Network (GCN)
B中的GCN模块是一个全局的卷积模块(调整k可达到全局),因为参数太多使用了可分离卷积来替代。
A是总体模型,其中基本定位结构还是降采和升采的那套结构,只不过加入GCN模块能够使网络更加在意在分类能力上的表现。
C是边界精炼模块(BR,也可以叫边界对齐模块),它利用残差模块来实现,相当于学习一下预测输出与标准应有的误差,然后进行修正。
论文中将C表示为公式 :
结果1:
下面这个是对比试验的几个模型
A是作者提出的,B是baseline,C是直接的k * k的卷积核,D是用3 * 3 小的卷积核堆积成的和A一样参数量的结构。它们的比较对象是GCN模块
1、A上的不同的k的测试结果
结果随着核的增大而变得更好,证明作者的分析是正确的,专注于分类的方向是对的。
2、A和C模块的对比结果
GCN模型随着参数的增加效果变好,而C模型随着参数的增加,反而效果变坏了,可能有由于参数巨大而导致不能拟合。
3、A和D对比(D不使用非线性激活函数,达到相同感受野)
由于GCN使用了可分离卷积,当k > 7的时候,3 * 3的卷积核构成与我们的可分离卷积构成的相同的感受野的时候,用的参数更加的多。
4、降低D的stack层数
随着层数的下降,D的表现越来越低,而且参数远大于GCN,因此GCN模型更加有效。
5、解释模型(distance<7)
上图为边缘统计和分割结果的内部统计(distance<7成为边界区域),结果表明我们的模型专注于内部的分类,而边缘区域主要还是靠定位,而我们提出的BR也有助于提升边缘定位的准确性,联合我们的GCN能够达到很好的效果。
结果2:ResNet-GCN
bottleneck module
考虑到好的效果所以将GCN模块直接替代预训练模型里面的bottleneck module,而且使参数和计算成本尽量保持一致。细节如下:
最终的结果为
可以看出我们的基于GCN的ResNet模型应用于分类的效果没有ResNet效果好,但是在分割数据集上继续微调以后,效果超过了ResNet50。
结论
提出了GCN更多的关注于内部的分类,提出的BR对于边界进行了分割学习,论证了大尺寸核原理的正确性,通过使用可分离卷积,在大尺度核、参数量、VRF(Valid Receptive Field)之间达到了一种平衡。
另外,用它替换用于分割的时候的残差网络中的bottleneck module,可以有效地提升分割的准确性。但不适用于分类任务。
PASCAL VOC 2012 (82.2%) and Cityscapes (76.9%).
GCN-Global Convolutional Network相关推荐
- 语义分割--Large Kernel Matters--Improve Semantic Segmentation by Global Convolutional Network
Large Kernel Matters–Improve Semantic Segmentation by Global Convolutional Network https://arxiv.org ...
- GNN Algorithms(2): GCN, Graph Convolutional Network
目录 GCN Algorithm Background 传统卷积公式:在graph上不行 定义Graph Fourier 传统Fourier transformation 传统Inverse Four ...
- 图卷积网络 GCN Graph Convolutional Network(谱域GCN)的理解和详细推导
文章目录 1. 为什么会出现图卷积神经网络? 2. 图卷积网络的两种理解方式 2.1 vertex domain(spatial domain):顶点域(空间域) 2.2 spectral domai ...
- GCN (Graph Convolutional Network) 图卷积网络
这几个同时看一下,感觉能理解不少: B站视频:https://www.bilibili.com/video/BV1ta4y1t7EK GCN论文原文和代码:https://github.com/tki ...
- 【GCN】《Adaptive Propagation Graph Convolutional Network》(TNNLS 2020)
<Adaptive Propagation Graph Convolutional Network>(TNNLS 2020) 为每个节点赋予一个停止单元,该单元输出一个值控制Propaga ...
- spatial temporal graph convolutional network for skeleton-based action recognition
PPSIG:Paddlesports ST-GCN动作识别 - 飞桨AI Studio数据集为fsd-10花样滑冰,项目为ST-GCN从PaddleVideo抽取代码,可直接运行,acc为0.48 - ...
- 论文笔记(SocialGCN: An Efficient Graph Convolutional Network based Model for Social Recommendation)
一个有效的基于图卷积神经网络的社交推荐模型 原文链接:SocialGCN: An Efficient Graph Convolutional Network based Model for Socia ...
- 行人轨迹论文:STUGCN:A Social Spatio-Temporal Unifying Graph Convolutional Network for Trajectory Predictio
STUGCN:A Social Spatio-Temporal Unifying Graph Convolutional Network for Trajectory Prediction用于轨迹预测 ...
- RA-GCN:Richly Activated Graph Convolutional Network for Robust Skeleton-based Action Recognition
Richly Activated Graph Convolutional Network for Robust Skeleton-based Action Recognition TCSVT2020 ...
最新文章
- Python计算机视觉——图像到图像的映射
- 独家 | 聊天机器人开发中的机器学习(附链接)
- linux 父子进程的关系
- simulink仿真实例_又见Simulink库模型之(9):自定义函数
- bp算法运行太慢_神经网络,BP算法的理解与推导
- php中的索引数组和关联数组
- oracle滚动打补丁,ORACLE打补丁的方法和案例
- Android studio javah
- java 选股源码,珍藏多年的「高成功率」选股器分享(附源码)
- 【一文读懂生物学重复与技术重复】
- 曲苑杂坛--服务启动时执行
- Docker的学习与使用
- 北极星指标——定义与制定标准
- android三星s8底部菜单,【Android】三星Galaxy S8及S8+的屏幕适配
- 计算机网络第七版(谢希仁)第三章——数据链路层课后习题答案
- Flink 容错恢复 2.0 2022 最新进展
- 一个毕业三年的程序猿对于提升自我的一些建议
- 计算机屏幕有条线,电脑屏幕出现一条白线怎么办?电脑显示器中间出现一条线解决方法...
- 下拉点击跳到指定链接(类同友情链接)
- opensuse下安装网易云音乐netease-cloud-music