卷积神经网络之-ZFNet

更多内容请关注『机器视觉 CV』公众号
原文地址

说在前面

(貌似江湖上有两篇 ZFNet 的论文,也即:Visualizing and Understanding Convolutional Networks )最新的请见论文地址:https://arxiv.org/pdf/1311.2901.pdf

这两篇还是有细微差别的,比如以下两张图,版本一的 (e) 没有在论文展示出来,但是却在题注上出现了,我猜作者应该是发现了这个问题,进而提交了版本二的论文,大家还是以官方地址的论文为主吧!

版本一:

图中没有 (e) 题注却出现了 (e)

版本二:官方地址中的论文

背景知识

ImageNet 数据集是超过 1500 万张带标签的高分辨率图像的数据集,包含大约 22,000 个类别。ILSVRC 使用 ImageNet 的子集,其中包含 1000 个类别中的大约 1000 个图像。总共大约有 130 万张训练图像,5,000 张验证图像和 100,000 张测试图像。

2013ILSVRC 竞赛错误率

ZFNet是由 Matthew D.Zeiler 和 Rob Fergus 在 AlexNet 基础上提出的大型卷积网络,在 2013年 ILSVRC 图像分类竞赛中以 11.19% 的错误率获得冠军。ZFNet 实际上并不是 ILSVLC 2013 的赢家。相反,当时刚刚成立的初创公司 Clarifai 是 ILSVLC 2013 图像分类的赢家。又刚刚好 Zeiler 是 Clarifai 的创始人兼首席执行官,而 Clarifai 对 ZFNet 的改动较小,故认为 ZFNet 是当年的冠军

ZFNet

简介

ZFNet 对如何解释卷积神经网络的表现如此出色以及如何对卷积神经网络进行改进提出疑问。在论文中,介绍了一种可视化的技术,深入了解卷积神经网络中间层的功能和分类器的操作,使用可视化技术,可以帮助我们找到较好的模型。作者还进行消融研究(ablation study)即如果我们删除模型的某些组件,它会对模型有什么影响。

ZFNet实际上是微调(fine-tuning)了的AlexNet,并通过反卷积(Deconvolution)的方式可视化各层的输出特征图,进一步解释了卷积操作在大型网络中效果显著的原因。

反卷积


上图:反卷积层(左)与卷积层(右)相连。反卷积网络将从下面的层重建一个近似版本的卷积网络特征。下图:反卷积网络中使用 switch 反池化操作的示意图,switch记录卷积网络池化时每个池化区域(彩色区域)中局部最大值的位置。黑/白条在特征图中表示负/正激活。

卷积操作的标准流程是:卷积层 + 激活函数 + 池化层,图像经过上述步骤以后,得到特征图,为了可视化深层特征,我们需要对卷积进行逆过程操作,以便可以进行可视化。

最大池化是不可逆的操作,但是我们通过记录最大值所在的位置来近视最大池化的逆操作。同时,在卷积的流程中使用了激活函数,所以进行反卷积时,也需要加上激活函数

卷积网络可视化
  • Layer1 & Layer2

第 1 层的滤波器混合了极高和极低的频率信息,几乎没有覆盖中频。如果没有中频,就会产生连锁效应,即深度特征只能从极高和极低的频率信息中学习。

第 2 层可视化呈现出由第 1 层卷积中使用的大步幅4引起的混叠伪影

为了解决这些问题,作者们进行了以下改进(i)将第一层滤波器尺寸从11x11缩小到7x7,并且(ii)使卷积的步幅由 4 改为 2。

改进可视化图对比
(b) 改进前(即 AlexNet)第 1 层可视化
© 改进后(即 ZFNet)第 1 层可视化
(d) 改进前(即 AlexNet)第 2 层可视化。
(e) 改进后(即 ZFNet)第 2 层可视化。

这种新架构在第 1 层和第 2 层特征中保留了更多信息,并且提高了分类性能

  • Layer3

第 3 层具有更复杂的不变性,捕获相似的纹理(例如网格图案(第 1 行,第 1 列);文本(第 2 行,第 4 列))『以下使用 R 代表行,C 代表列

  • Layer4 & Layer5

第 4 层显示出显着的变化,并且更具有特定类别:狗脸 (R1,C1) 鸟的腿 (R4,C2)。

第5层显示具有显着姿势变化的整个对象,例如, 键盘(R1,C11)和狗(R4)。

基于可视化结果的 AlexNet 的微调

对 AlexNet 改进的地方就是上文提到的(i)将第一层滤波器尺寸从11x11缩小到7x7,并且(ii)使第一层卷积的步幅由 4 改为 2。

实验结果


  • 下表为 ImageNet 2012/2013 分类错误率,* 表示在ImageNet 2011和2012训练集上都经过训练的模型。

使用 AlexNet,Top-5 验证错误率为 18.1%。
通过使用 ZFNet,Top-5 验证错误率为 16.5%。我们可以得出结论,基于可视化的修改是必不可少的。
通过使用(a)中的 5 个 ZFNet 和(b)中的 1 个修改后的 ZFNet,Top-5 验证错误率为 14.7%。

  • Caltech-101 数据集测试结果

  • Caltech 256 数据集测试结果

  • PASCAL 2012 数据集测试结果

从上表中可以看出,不进行预训练(即从头开始训练 ZFNet)的准确性较低。通过在预训练的 ZFNet 之上进行训练,准确性很高。这意味着训练过的滤波器可以推广到不同的图像,而不仅仅是 ImageNet 的图像。

对于PASCAL 2012 来说,PASCAL图像可以包含多个对象,与 ImageNet 中的对象相比与自然有很大的不同。因此,精确度稍低一些,但仍然可以与最先进的方法相媲美。

消融研究

对于去除或调整层的消融研究。修改后的 ZFNet 可以获得 Top-5 16.0% 的验证错误率 。

结论

虽然之前的研究只能观察到浅层特征,但本文提供了一种有趣的方法来观察像素域中的深层特征。

通过逐层可视化卷积网络,ZFNet 可以调整各层的超参数,例如过滤器大小或 AlexNet 的步幅,并成功降低错误率。

参考:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
人脸表情识别是一种人机交互的技术,可以通过分析人脸特征来识别和理解人的表情。为构建一个有效的人脸表情识别模型,可以使用深度卷积神经网络u-net和局部监督卷积神经网络ls-cnn进行设计。 首先,我们可以使用u-net作为特征提取和图像分类器的基础框架。u-net是一种能够有效处理图像语义分割任务的网络结构,其具有编码器和解码器两个部分。通过编码器,可以将输入的人脸图像逐渐降采样为低维度的特征图,提取人脸表情的主要特征。然后,通过解码器,将低维度特征图逐步上采样,并与编码器中对应层的特征图进行拼接,从而恢复原始图像的空间分辨率。最后,利用卷积操作对特征图进行分类,得到人脸表情的分类结果。 其次,在u-net的基础上,我们可以引入局部监督卷积神经网络ls-cnn来提升模型的识别性能。ls-cnn是一种结合全局信息和局部信息的网络结构,能够更好地捕捉人脸表情的细节特征。在ls-cnn中,可以在每个编码器和解码器的网络层之间引入子网络,用于局部特征的学习和融合。这样可以使模型更好地关注人脸表情的细微差别,提高识别的准确性和鲁棒性。 综上所述,构建基于深度卷积神经网络u-net和局部监督卷积神经网络ls-cnn的人脸表情识别模型能够充分利用深度学习的优势,提取人脸图像中的特征,并结合全局和局部信息来进行分类。这种模型可以有效地识别和理解人的表情,为人机交互和情感计算提供有力支持。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机器视觉CV

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值