英文网站建设用哪种字体,定制网站开发设计,一站式+wordpress,宁波seo排名优化培训ResNet在2015年被提出#xff0c;在ImageNet比赛classification任务上获得第一名#xff0c;因为它“简单与实用”并存#xff0c;之后很多方法都建立在ResNet50或者ResNet101的基础上完成的#xff0c;检测#xff0c;分割#xff0c;识别等领域都纷纷使用ResNet#x…ResNet在2015年被提出在ImageNet比赛classification任务上获得第一名因为它“简单与实用”并存之后很多方法都建立在ResNet50或者ResNet101的基础上完成的检测分割识别等领域都纷纷使用ResNetAlpha zero也使用了ResNet所以可见ResNet确实很好用。 下面我们从实用的角度去看看ResNet。
1.ResNet意义 随着网络的加深出现了训练集准确率下降的现象我们可以确定这不是由于Overfit过拟合造成的(过拟合的情况训练集应该准确率很高)所以作者针对这个问题提出了一种全新的网络叫深度残差网络它允许网络尽可能的加深其中引入了全新的结构如图1 这里问大家一个问题 残差指的是什么 其中ResNet提出了两种mapping一种是identity mapping指的就是图1中”弯弯的曲线”另一种residual mapping指的就是除了”弯弯的曲线“那部分所以最后的输出是 yF(x)xyF(x)x identity mapping顾名思义就是指本身也就是公式中的xx而residual mapping指的是“差”也就是y−xy−x所以残差指的就是F(x)F(x)部分。 为什么ResNet可以解决“随着网络加深准确率不下降”的问题 除了实验证明外 表1Resnet在ImageNet上的结果 理论上对于“随着网络加深准确率下降”的问题Resnet提供了两种选择方式也就是identity mapping和residual mapping如果网络已经到达最优继续加深网络residual mapping将被push为0只剩下identity mapping这样理论上网络一直处于最优状态了网络的性能也就不会随着深度增加而降低了。
2.ResNet结构 它使用了一种连接方式叫做“shortcut connection”顾名思义shortcut就是“抄近道”的意思看下图我们就能大致理解 图1 Shortcut Connection 这是文章里面的图我们可以看到一个“弯弯的弧线“这个就是所谓的”shortcut connection“也是文中提到identity mapping这张图也诠释了ResNet的真谛当然大家可以放心真正在使用的ResNet模块并不是这么单一文章中就提出了两种方式 图2 两种ResNet设计 【ResNet34左图和ResNet50/101/152右图】 这两种结构分别针对ResNet34左图和ResNet50/101/152右图一般称整个结构为一个”building block“。其中右图又称为”bottleneck design”目的一目了然就是为了降低参数的数目第一个1x1的卷积把256维channel降到64维然后在最后通过1x1卷积恢复整体上用的参数数目1x1x256x64 3x3x64x64 1x1x64x256 69632而不使用bottleneck的话就是两个3x3x256的卷积参数数目: 3x3x256x256x2 1179648差了16.94倍。 对于常规ResNet可以用于34层或者更少的网络中对于Bottleneck Design的ResNet通常用于更深的如101这样的网络中目的是减少计算和参数量实用目的。
问大家一个问题 如图1所示如果F(x)和x的channel个数不同怎么办因为F(x)和x是按照channel维度相加的channel不同怎么相加呢 针对channel个数是否相同要分成两种情况考虑如下图 图3 两种Shortcut Connection方式 如图3所示我们可以清楚的”实线“和”虚线“两种连接方式 实线的的Connection部分(”第一个粉色矩形和第三个粉色矩形“)都是执行3x3x64的卷积他们的channel个数一致所以采用计算方式 yF(x)xyF(x)x 虚线的的Connection部分(”第一个绿色矩形和第三个绿色矩形“)分别是3x3x64和3x3x128的卷积操作他们的channel个数不同(64和128)所以采用计算方式 yF(x)WxyF(x)Wx 其中W是卷积操作用来调整x的channel维度的 下面我们看看两个实例 图4 两种Shortcut Connection方式实例左图channel一致右图channel不一样
3.ResNet50和ResNet101 这里把ResNet50和ResNet101特别提出主要因为它们的出镜率很高所以需要做特别的说明。给出了它们具体的结构 表2Resnet不同的结构 首先我们看一下表2上面一共提出了5中深度的ResNet分别是183450101和152首先看表2最左侧我们发现所有的网络都分成5部分分别是conv1conv2_xconv3_xconv4_xconv5_x之后的其他论文也会专门用这个称呼指代ResNet50或者101的每部分。 拿101-layer那列我们先看看101-layer是不是真的是101层网络首先有个输入7x7x64的卷积然后经过3 4 23 3 33个building block每个block为3层所以有33 x 3 99层最后有个fc层(用于分类)所以1 99 1 101层确实有101层网络 注101层网络仅仅指卷积或者全连接层而激活层或者Pooling层并没有计算在内 这里我们关注50-layer和101-layer这两列可以发现它们唯一的不同在于conv4_xResNet50有6个block而ResNet101有23个block查了17个block也就是17 x 3 51层。
4.基于ResNet101的Faster RCNN 文章中把ResNet101应用在Faster RCNN上取得了更好的结果结果如下 表3Resnet101 Faster RCNN在Pascal VOC07/12 以及COCO上的结果 这里有个问题 Faster RCNN中RPN和Fast RCNN的共享特征图用的是conv5_x的输出么 针对这个问题我们看看实际的基于ResNet101的Faster RCNN的结构图 图5 基于ResNet101的Faster RCNN 图5展示了整个Faster RCNN的架构其中蓝色的部分为ResNet101可以发现conv4_x的最后的输出为RPN和RoI Pooling共享的部分而conv5_x(共9层网络)都作用于RoI Pooling之后的一堆特征图(14 x 14 x 1024)特征图的大小维度也刚好符合原本的ResNet101中conv5_x的输入 最后大家一定要记得最后要接一个average pooling得到2048维特征分别用于分类和框回归。 --------------------- 作者懒人元 来源CSDN 原文https://blog.csdn.net/lanran2/article/details/79057994 版权声明本文为博主原创文章转载请附上博文链接 ResNet介绍 1 简要概括 ResNetResidual Neural Network由微软研究院的Kaiming He等四名华人提出通过使用ResNet Unit成功训练出了152层的神经网络并在ILSVRC2015比赛中取得冠军在top5上的错误率为3.57%同时参数量比VGGNet低效果非常突出。ResNet的结构可以极快的加速神经网络的训练模型的准确率也有比较大的提升。同时ResNet的推广性非常好甚至可以直接用到InceptionNet网络中。 ResNet的主要思想是在网络中增加了直连通道即Highway Network的思想。此前的网络结构是性能输入做一个非线性变换而Highway Network则允许保留之前网络层的一定比例的输出。ResNet的思想和Highway Network的思想也非常类似允许原始输入信息直接传到后面的层中如下图所示。 这样的话这一层的神经网络可以不用学习整个的输出而是学习上一个网络输出的残差因此ResNet又叫做残差网络。
2 创新点 提出残差学习的思想。传统的卷积网络或者全连接网络在信息传递的时候或多或少会存在信息丢失损耗等问题同时还有导致梯度消失或者梯度爆炸导致很深的网络无法训练。ResNet在一定程度上解决了这个问题通过直接将输入信息绕道传到输出保护信息的完整性整个网络只需要学习输入、输出差别的那一部分简化学习目标和难度。VGGNet和ResNet的对比如下图所示。ResNet最大的区别在于有很多的旁路将输入直接连接到后面的层这种结构也被称为shortcut或者skip connections。 3 网络结构 在ResNet网络结构中会用到两种残差模块一种是以两个3*3的卷积网络串接在一起作为一个残差模块另外一种是1*1、3*3、1*1的3个卷积网络串接在一起作为一个残差模块。他们如下图所示。 ResNet有不同的网络层数比较常用的是50-layer101-layer152-layer。他们都是由上述的残差模块堆叠在一起实现的。 --------------------- 作者dayL_W 来源CSDN 原文https://blog.csdn.net/u013181595/article/details/80990930 版权声明本文为博主原创文章转载请附上博文链接