Visualizing and Understanding Convolutional Networks于2014年发表于ECCV。该文章是第一篇提出可视化卷积神经网络的文章。使用Deconvolution技术(Zeiler et al., 2011)重建源图中对某类起重要作用的区域。
Deconvolution
反卷积顾名思义与卷积操作和传播方向正好相反,对卷积操作做如下修改:
- 卷积层:使用转置卷积代替,参数相同。
- 池化层:前向传播时记住最大值的位置,以“开关”命名变量并存储。
- Relu**函数:如下图所示,使用上层的重建信号(梯度)经过Relu函数。
总的来说,Deconvolution方法前向传播时需要记住位置信息(pool所得),将该信息记作“开关”存储,然后反向传播时再使用该值。需要注意的是在**函数处所求的导数并不是实际的导数。
在Guided backpropagation中与Deconvolution作了对比,认为Guided backpropagation与Deconvolution的不同主要体现在反向传播时在**函数的求导方式不同,如下图,更多细节请看我的另一篇介绍Guided backpropagation的文章。