卷积神经网络可视化和理解

最近在研究神经网络特征可视化的问题,想弄清楚deep learning之所以能够work这么好的原因。所以挑选了几篇相关的文章进行阅读,并把自已在阅读过程中的一些概要记录下来。

文章1:《Visualizing and Understanding convolutional networks》

目的 ##:

(1)理解网络为什么能够工作这么好;
(2)如何再次提升网络的性能;
(3)发现每层网络的performance contribution;

可视化神经网络存在的主要问题:

(1)绝大部分停留在第一个隐层的可视化;
(2)使用SGD进行maximizing activation 需要比较好的initialization,并且该方法对神经元学习到的特征的不变性没有进行很好的说明;
(3)作者解决问题的思路:non-parametric view of invariance, showing which patterns from training set activate the feature map;是一种top-down的方法,针对于单个feature map的分析。

作者主要工作:

(1)构建了一个可视化技术(也就是多层的deconvolutional networks: deconvnet),能够发现什么样的输入能够激活feature map,该方法对任意层的feature map都适用。
(2)能够观察在训练过程中,学到的特征演变情况。
(3)敏感性分析:通过遮挡图像的不同部分,看图像中哪部分对classification重要。

用deconvnet进行可视化:

原理:将指定的feature map映射到输入的像素空间,这样就能看到什么样的input pattern 能够导致这样的activation。
【注:】在文章《Adaptive deconvolutional networks for mid and high level feature learning》中,deconvnet是用来进行无监督学习的,相当于重构。而在这里,deconvnet不是用来重构的,只是作为一种探针来查看已经训练好的convnet网络各层学到了什么特征。
Deconvnet: 将feature activations 反映射到输入空间input pixel space。
deconvnet的一些要点:
(1)unpooling:即近似的inverse of pooling。池化区域最大值的位置。
这里写图片描述
(2)Filtering:为了实现反卷积,deconvnet中的filter用的是transposed version of same filter【也就是对convnet中的filter进行水平和垂直翻转】。
【注:】
a. 在deconvnet中,没有用到任何contrast normalization操作。
b. deconvent中的这种反向映射所得到的结果并不是一个sample,因为convnet-deconvnet本身不是一个generative process。
可视化的整个过程:
一开始,输入图像被送入convnet,并计算各层feature maps的activation。然后,对于convnet中指定层中的feature map,把该层中其余的feature maps的activations全部置零,之后,将该层所有的feature maps作为输入,传递到随后的deconvnet网络中。经过随后的unpool,rectify,filter的处理,一直计算到输入图像的像素空间即可。
这里写图片描述
上述图片是作者用验证集中的一些样本对已经训练好的convnet网络可视化的结果。

作者提出的deconvnet可视化方法存在的缺点:

只能可视化单个feature map,而不能可视化该层中联合的feature maps【joint activity】

可视化过程中作者发现的一些结论:
(1)模型的较低层在较少的epoch迭代后就开始收敛了;
(2)模型的较高层需要较大的epoch迭代后才收敛;

作者训练convnet时的一些细节和技巧:

resizing to 256;
croping the center 256 x 256;
去均值;
使用10类sub-crops (corners + center + 水平翻转)
【SGD, 动量,模拟退火更新学习率,dropout,所有权重被初始化到0.01, 所有的biases都设置为0】
作者特别指出了一个技巧:
当输入图像的值的范围在[-128, 128]时,对网络的第一层filters进行了可视化,发现其中一些filter始终处于优势突出地位,为了解决这个问题,作者对第一层的filter进行了normalize处理,对那些RMS 超出固定范围的filter,将其归一化到固定的RMS。

文章中用到的convnet网络结构:

这里写图片描述

deconvnet结构模块

这里写图片描述

  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值