反卷积神经网络 —— 卷积网络的可视化过程

原文地址:地址1,本文在此基础上进行了整理和划重点

本文文献:Zeiler, Matthew D.; Fergus, Rob,"Visualizing and Understanding Convolutional Networks".  In: Proc. European Conference on Computer Vision (ECCV), pp. 1-14, 2014. Zurich, Switzerland.

反卷积网络的提出:《Adaptive deconvolutional networks for mid and high level feature learning》

1. 该文处理的问题

a. 问题:

最近两年深层的卷积神经网络,进展非常惊人,在计算机视觉方面,识别精度不断的突破,CVPR上的关于CNN的文献一大堆。比如调整了某个参数,CNN结果精度飙升,但如果别人问你,为什么这样调参精度会飙升呢,你所设计的CNN到底学习到了什么特征

b. 处理:

这篇文献的目的,就是要通过特征可视化,查看你的精度确实提高了,看到你设计的CNN学习到的特征。

2. 该文采取的思路和方法,及为什么能解决所处理的问题?

a. 采取的思路和方法

前提:

反卷积网络在文献是用于无监督学习的。然而本文的反卷积过程并不具备学习的能力,仅仅是用于可视化一个已经训练好的卷积网络模型,没有学习训练的过程。

过程总述:

  输入(各层得到的特征图)——> 过程(反池化,反激活,反卷积)——> 输出(反卷积结果,可视化各层得到的特征图)

过程具体:

 1. 反池化

   池化本质是不可逆的过程,在这里采用近似方法模拟可逆的过程。首先记录池化过程中,最大激活值得坐标位置。然后在反池化的时候,只把池化过程中最大激活值所在的位置坐标的值激活,其它的像素值置为0。因为在池化的过程中,除了最大值所在的位置,其它的值也是不为0的,所以上述操作只是一种近似。示意图:

 

以上面的图片为例,上面的图片中左边表示pooling过程,右边表示unpooling过程。

   假设我们pooling块的大小是3*3,采用max pooling后,可以得到一个输出神经元其激活值为9,pooling是一个下采样的过程,本来是3*3大小,经过pooling后,就变成了1*1大小的图片了。

   upooling刚好与pooling过程相反,它是一个上采样的过程,是pooling的一个反向运算,当我们由一个神经元要扩展到3*3个神经元的时候,我们需要借助于pooling过程中,记录下的最大值所在的位置坐标(0,1),然后在unpooling过程的时候,就把(0,1)这个像素点的位置填上去,其它的神经元激活值全部为0。

      再来一个例子: 

    在max pooling的时候,我们不仅要得到最大值,同时还要记录下最大值的坐标 (-1-1),然后在unpooling的时候,就直接把(-1-1) 这个点的值填到对应位置,其它的激活值全部为0。

2. 反激活

     我们在Alexnet中,relu函数是用于保证每层输出的激活值都是正数,因此对于反向过程,我们同样需要保证每层的特征图为正值,也就是说这个反激活过程和激活过程没有什么差别,都是直接采用relu函数。

3. 反卷积   

  反卷积过程的滤波器,采用卷积过程的滤波器的转置(参数一样,只不过把参数矩阵水平和垂直方向翻转了)

  网络的整个过程:

  输入图片 —> 卷积 —> Relu —> 最大池化 —>

                                                                           |

   图片<— 反卷积 <— Relu <— 反池化 <— 特征图

b. 为什么能解决所处理的问题

已有方法的特征:

  1. 一类方法集中于研究训练反卷及网络的图像语义分割(将像素还原成图像)
  2. 一类方法集中于研究训练反卷积网络从而生成图像或者图形

本文方法的创新之处:

然而本文是用于可视化一个已经训练好的卷积网络模型 (展示每一层的特征图),没有学习训练的过程。

 

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值