【论文阅读】Deep Residual Learning for Image Recognition论文实验部分学习笔记

CSDN话题挑战赛第2期
参赛话题:学习笔记

学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程。这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路。学习之乐,独乐乐,不如众乐乐,把知识讲给更多的人听,何乐而不为呢?

论文

Deep Residual Learning for Image Recognition

论文地址

https://openaccess.thecvf.com/content_cvpr_2016/papers/He_Deep_Residual_Learning_CVPR_2016_paper.pdf

摘要

本文提出了一个残差学习框架,以简化网络的训练,这些网络比以前使用的网络更深。我们明确地将层重新表示为参考层输入的学习残差函数,而不是学习未参考函数。我们提供了全面的经验证据,表明这些残差网络更容易优化,并且可以从深度显著增加中获得精度。

网络结构

普通基线(plain network):(中图)主要受VGG网络[40]的理念启发(左图)。卷积层大多具有3×3滤波器,并遵循两个简单的设计规则:
1.对于相同的输出特征图大小,层具有相同数量的滤波器;
2.如果特征图大小减半,则滤波器的数量加倍,以保持每层的时间复杂度。我们通过步长为2的卷积层直接执行下采样。
网络以全局平均池层和1000路全连接层结束。加权层的总数在图3(中间)中为34
本文的模型比VGG网络有更少的过滤器和更低的复杂度。基础网络有36亿的FLOPS,仅为VGG-19的18%

残差网络

基于基线网络(plain network),插入shortcut层:当输入和输出具有相同尺寸时,可以直接使用同一快捷方式(实线)
当维度增加(输入输出不同)时,可以选择在维度少的矩阵中填充0或者增加一个额外的矩阵(维度为n*m)。当跳跃连接跨越这两种大小的特征映射时,它们的步长stride为2(虚线)


实验

ImageNet分类

在ImageNet2012分类数据集[35]上评估了我们的方法,该数据集包含1000个类。模型在128万张训练图像上进行训练,并在50k的验证图像上进行评估,评估了Top-1和top-5的错误率。

与未加skip connection的基础网络比较

较深的34层基础网络比较浅的18层基础网络具有更高的验证误差
尽管18层基础网络的解空间是34层基础网络解空间的子空间,但34层基础网络在整个训练过程中具有较高的训练误差。

推测:深基础网络可能具有指数级的低收敛速度,影响了训练误差,问题不能通过简单地使用更多的迭代来解决(未来研究的一个方向)

居中内容

残差网络

1、对18层和34层残网络(ResNets)进行了比较,在基础网络中对所有shortcut使用标识映射,对增加维度使用零填充(选项A)。因此,与普通的对应方式相比,它们没有额外的参数。
34层ResNet比18层ResNet好(2.8%)。更重要的是,34层ResNet显示出相当低的训练误差,并可推广到验证数据。

这表明,在这种设置下,退化问题得到了很好的解决,我们设法通过增加深度获得了精度的提高。

2、其次,与普通ResNet相比,34层ResNet减少了3.5%的top-1误差,这是由于ResNet成功地减少了训练误差。

表明残差学习在极深系统上的有效性。

3、18层普通/残差网络相对来说误差是相近的(表2),但18层ResNet收敛更快(图4左右对比)。当网络“不是太深”(这里是18层),当前SGD求解器仍然能够找到普通网的良好解决方案。

在这种情况下,ResNet通过在早期提供更快的收敛来简化优化。

Identity shortcut 和 projection shortcut

(A)使用零填充的快捷方式来增加维度,并且所有的shortcut都是无参数的;
(B)projection shortcut用于增维,其他捷径为Identity shortcut;
©所有的shortcut都是projection shortcut;
这三种方式进行比较:
1、它们比普通方式(plain network)要好很多
2、性能c>b>a 但abc之间的差异很小,

说明projection shortcut对于解决退化问题并不是必要的。

更深层次的瓶颈架构

无参数的Identity shortcut方式对于瓶颈架构特别重要。
如果将图(右)中的恒等快捷方式替换为投影,可以看出,由于该shortcut连接到两个高维端点,时间复杂度和模型大小都翻倍了。
因此,identity shortcut为瓶颈设计带来了更有效的模型。

50层Resnet


我们用这个3层瓶颈块替换34层网络中的每个2层块,得到50层ResNet(上表)。我们使用选项B来增加维度。这个模型有38亿个flop。

101层和152层Resnet

我们使用更多的3层块来构建101层和152层ResNet(上表)。
值得注意的是,虽然深度显著增加,但152层ResNet(113亿FLOPs)的复杂度仍然低于VGG-16/19网(153/196亿FLOPs)
从大幅增加的深度中获得显著的精度提高。所有评估指标都见证了深度的好处。

与最先进的方法相比

基线34层ResNets达到了非常有竞争力的准确性。我们的152层ResNet单模型top-5验证误差为4.49%。该单模型结果优于以往所有集成结果。
将6个不同深度的模型组合成一个集成(最后只有两个152层集成在一起)top-5误差为3.57%(比赛第一)


CIFAR-10数据集分析

该数据集由10个类中的50k训练图像和10k测试图像组成。我们在训练集上进行实验训练,并在测试集上进行评估。

本文使用0.0001的权值衰减和0.9的动量,并在[12]和BN[16]中采用权值初始化,但没有dropout。这些模型在两个gpu上用128的小批大小进行训练。
我们从0.1的学习率开始,在32k和48k迭代时除以10,在64k迭代时终止训练,这是由45k/5k的train/val分割决定的。
我们遵循[24]中的简单数据增强进行训练:每边填充4个像素,从填充图像或其水平翻转中随机抽样3个2×32裁剪。为了测试,我们只评估原始32×32图像的单个视图。

在这里插入图片描述
我们比较n ={3, 5, 7, 9},得到20,32,44和56层(6n+2)网络。上图(左)显示了普通基础网络的行为。较深的普通基础网受深度增加的影响,在向深部发展时训练误差较大。这表明,优化网络深度是一个基本问题。
加上resnet之后的网络,成功地克服了优化的困难,并在深度增加时证明了准确性的提高。

进一步探索了n=18的110层的ResNet,初始学习速率0.1略大,无法开始收敛。所以我们用0.01来热身训练,直到训练误差低于80%(约400次迭代),然后回到0.1继续训练。剩下的学习进度和之前一样,110层网络的收敛性很好。与FitNet[34]和Highway[41]等其他深度和thin网络相比,它的参数较少,但也是最先进的结果之一。
在这里插入图片描述

层响应分析

在这里插入图片描述
响应是BN(批量归一化)之后和其他非线性(ReLU/加法)之前每个3×3层的输出。对于RESNET,该分析揭示了剩余函数的响应强度。
上图示出了Resent通常比它们的plain network具有更小的响应。即残差函数通常比非残差函数更接近零
较深的ResNet具有较小的响应幅度,如图中ResNet-20、56和110之间的比较所示。当存在更多层时,单个ResNet层倾向于较少地修改信号。

探索超过1000层

在这里插入图片描述
我们设置n=200,这导致了1202层网络,该网络如上所述进行训练。我们的方法没有显示出优化困难,并且该103层网络能够实现<0.1%的训练误差,测试误差仍然很好。
但在这种激进的深度模型上,仍然存在一些问题。这个1202层网络的测试结果比110层网络差,尽管两者都有相似的训练误差。
我们认为这是因为过度拟合。对于这个小数据集,1202层网络可能不必要地大(19.4M)。应用强正则化,如maxout[9]或dropout[13],以获得该数据集的最佳结果([9,25,24,34])。

将在未来进行研究 结合更强的正则化可能会改善结果,

基于PASCAL VOC2007/2012和MS COCO的目标检测

VOC数据集
coco数据集
本文方法在其他识别任务上具有良好的泛化性能。
上表和下表显示了PASCAL VOC 2007和2012[5]以及COCO[26]的目标检测基线结果。我们采用更快的R-CNN[32]作为检测方法。
对用ResNet-101替代VGG-16[40]改进。使用两种模型的检测实现是相同的,因此增益只能归因于更好的网络。
在具有挑战性的COCO数据集上,我们获得了COCO标准度量(mAP@[5,95])的6.0%的增长,相对改进28%(6/21.2)。这种增益完全是由于学习的表示。

成就

基于深度残差网络,在ILSVRC和COCO 2015竞赛中获得了多个赛道的第一名:ImageNet检测、ImageNet定位、COCO检测和COCO分割。

deep residual learning for image recognition是一种用于图像识别的深度残差学习方法。该方法通过引入残差块(residual block)来构建深度神经网络,以解决深度网络训练过程中的梯度消失和梯度爆炸等问题。 在传统的深度学习网络中,网络层数增加时,随之带来的问题是梯度消失和梯度爆炸。这意味着在网络中进行反向传播时,梯度会变得非常小或非常大,导致网络训练变得困难。deep residual learning则使用了残差连接(residual connection)来解决这一问题。 在残差块中,输入特征图被直接连接到输出特征图上,从而允许网络直接学习输入与输出之间的残差。这样一来,即使网络层数增加,也可以保持梯度相对稳定,加速网络训练的过程。另外,通过残差连接,网络也可以更好地捕获图像中的细节和不同尺度的特征。 使用deep residual learning方法进行图像识别时,我们可以通过在网络中堆叠多个残差块来增加网络的深度。这样,网络可以更好地提取图像中的特征,并在训练过程中学习到更复杂的表示。通过大规模图像数据训练,deep residual learning可以在很多图像识别任务中达到甚至超过人类表现的准确性。 总之,deep residual learning for image recognition是一种利用残差连接解决梯度消失和梯度爆炸问题的深度学习方法,通过增加网络深度并利用残差学习,在图像识别任务中获得了突破性的表现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值