参考这篇文章:

http://blog.csdn.net/hjimce/article/details/50544370

 

文章里面有不少很有意思的内容。但是说实话,我没怎么看懂。

 

本篇博文主要讲解2014年ECCV上的一篇经典文献:《Visualizing and Understanding Convolutional Networks》,可以说是CNN领域可视化理解的开山之作,这篇文献告诉我们CNN的每一层到底学习到了什么特征

 

二、利用反卷积实现特征可视化

 

最后可视化网络结构如下:

可视化理解卷积神经网络 - 反卷积网络 - 没看懂

 

可视化理解卷积神经网络 - 反卷积网络 - 没看懂

 

 

 

每一整张图片是网络的某一层特征图,然后每一行有8个小图片,分别表示网络epochs次数为:1、2、5、10、20、30、40、64的特征图:

可视化理解卷积神经网络 - 反卷积网络 - 没看懂

 

结果:(1)仔细看每一层,在迭代的过程中的变化,出现了sudden jumps;

(2)从层与层之间做比较,我们可以看到,低层在训练的过程中基本没啥变化,比较容易收敛,高层的特征学习则变化很大。这解释了低层网络的从训练开始,基本上没有太大的变化,因为梯度弥散嘛。

(3)从高层网络conv5的变化过程,我们可以看到,刚开始几次的迭代,基本变化不是很大,但是到了40~50的迭代的时候,变化很大,因此我们以后在训练网络的时候,不要着急看结果,看结果需要保证网络收敛。