ZFNet 论文阅读

一、背景
大规模卷积神经网络在图像集的分类工作中都表现出了优越的性能,然而对于它为何能表现的如此好和如何改进它却没有明确的理解。
二、提出
一种可视化工具来探究内部特征层的运行机制和分类器的执行方式。
该工具向我们展示了在模型中,输入刺激如何激活每一层的单个特征地图(feature map)并让我们能够观察到,在训练中特征是如何进化的,以及诊断模型中潜在的问题。
该可视化工具运用一种多层反卷积网络将特征激活反向投影到输入像素空间。
三、观点
1、卷积模型普遍流行的原因:
1)、大量的可行训练集和标记样本
2)、高效的GPU实现了大规模模型的训练
3)、更好的规范化策略,如dropout

ZFNet所讨论的网络
2、网络更高层的不变性是非常复杂,且难以简单的用二次近似法来捕捉
解决方法:反向行之,提供一种非参数化的不变性显示来说明训练集的哪一种模式激活了特征地图。这种可视化的不同之处在于,它不仅仅是对输入图像进行剪裁,并且从高层到底层投影来揭露结构中每一块所激活的特定特征图。
3、用反卷积实现可视化
方法:map these activities back to the input pixel space
描述:一个反卷积可以被看做是一个用相同部件(过滤器、池化层)反向进行的卷积模型,所以不是将像素映射到特征,而是相反地将特征像素化。具体过程:开始,一个输入图像被提供给卷积网络,特征在每一层中计算。为了检验一个给定卷积网络的激活能力,将所有该层中的其它激活函数设为0,并将特征地图作为输入传递给相连的反卷积层。然后我们连续地反池化、修正(rectify)、和过滤,在产生被选激活函数下,重构该层的活动。该过程将一直重复至到达输入像素空间。
(1)反池化(unpooling)
最大池化操作是不可逆的,但我们通过使用一系列的交换变量来记录每个池化区域最大值的位置来到达一个近似反转。在反卷积中,反池化操作通过这些交换变量将 前层网络所产生的重构放置到适当的位置,以便保留激励物的结构。
(2)修正 (rectification)
卷积层使用relu非线性函数来修正特征地图以确保特征地图总是正的。为实现认证特征地图在每一层中的重构,将重构的信号通过一个relu非线性函数来进行传递。
(3)过滤(filtering)
卷积网络使用学得的过滤器来对前一层产生的特征地图进行卷积操作,为了反转这一过程,反卷积网络将相同的过滤器的转置应用到已修正的地图上,而不是下层网络层的输出上。实际上,这意味着将每个过滤器进行水平或垂直的翻转。
反卷积的过程示意图
4、训练时的特征评估
模型的低层特征的训练会在几个迭代后收敛,而高层特征的推进会经过大量的迭代。
5、模型的结构选择
通过可视化训练模型能评估模型的操作效率,进而修改相关设置参数,选择更合适的模型。
6、覆盖敏感性分析
在图像分类中,一个自然而然的问题是:模型是否能正确识别图像中物体的位置,还是仅依赖与周围环境的联系来定位物体。通过系统地用灰色方框遮挡输入图像的不同部分来监视分类器的输出,得出结论:模型是通过场景来定位物体的,因为当物体被遮挡时正确分类的概率会显著地下降。当遮蔽物覆盖在图像区域时,能看到特征地图的激活有一个猛烈的下降。这是因为图像的结构激活了特征地图。
模型对图像的局部结构非常的敏感,而不仅仅是用开阔场景环境。
在这里插入图片描述
7、更高的网络层通常会产生更具辨别性的特征

猜你喜欢

转载自blog.csdn.net/weixin_41977512/article/details/82743925
今日推荐