经典神经网络论文阅读|ZFNet(神经网络可视化)
ZFNet
Zeiler and Fergus “Visualizing and Understanding Convolutional Networks” ECCV2014
动机(Why)
现有CNNs效果很棒,但是第一不知道他为什么好,第二不知道该从哪个方面改进;因此这篇文章对CNNs做了可视化,并提出了一些理解
方法(How)
-
8 层,改进AlexNet,更小的步长和卷积核,认识到的特征更细节并且有更少的"dead" features
-
Deconvnet (各层通过Deconvnet计算出前面层的特征图,与原图对照)
-
反池化:记住最大池化时的最大值对应位置,还原至相应位置,其他位置为0
-
反**:x=max(0,x)
-
转置卷积
拓展应用
- 反卷积用于反应特征图的变化趋势
英文表达
- An ablation study on the model revealed that having a minimum depth to the network, rather than any individual section, is vital to the model’s performance (消融实验表明 …
- Our convnet model generalized less well to the PASCAL data, perhaps suffering from dataset bias (可能因为受到数据偏差的影响,所以泛化的不够好
- The experiments above show the importance of the convolutional part of out ImageNet Model in obtaining state-of-the-art performance
- Three test examples where we systematically cover up different portions of the scene with a gray square
- All filters and feature maps are square in shape.
- Each layer consists of (i) xx; (ii) xx; (iii) [optionally] xxx (iv) [optionally] a local contrast operation that normalizes the responses
across feature maps.
实验设计
-
找到验证集中**最大的9张图片,并反池化反卷积重构到原始层。发现越深的层认识到的特征越细节
-
训练过程特征演化可视化:浅层认识的粗特征很快就收敛,而深层认识到的细特征多轮之后才逐渐收敛
-
平移,缩放,旋转敏感性分析:得到的第一层特征与原始输入之间的欧式距离:第一层微小变化带来显著影响,第七层微小变化带来线性影响
-
局部遮挡敏感性分析:找到第五层**值最大的那个Feature Map,原图中移动遮挡块,记下不同位置时Feature Map,并叠加起来,制作热力图
-
相关性遮挡分析:对于不同的狗,都遮右眼,看delta(原始**值-遮住的**值)的MeanSD;遮住狗眼睛时,第五层delta小:说明此时网络认识到不同狗脸中狗眼睛是相关的;随机遮:第五层delta大,第七层delta小,说明深层网络认识到的特征越细节更倾向于关注语义特征
-
模型迁移泛化分析
-
各层特征有效性分析:取出不同层的Feature,用SVM分类,发现越深,越准
优缺点分析
优点:
- 通过可视化提供了一种Debug和Improve的思路
- 可视化的遮罩实验发现模型会关注局部信息,并不是只用了广阔的场景信息;对于同一类别图片,模型的关注区域往往相同
缺点:
- 挺好一文章,从可视化的角度提供了一些神经网络的可解释性。但是人类对于非线性系统的研究就是不够透啊,不能形成严谨的证明。