什么网站做简历,营销型网站和普通网站,17做网站广州起做网店,如何做网站本地服务器《Deep Residual Learning for Image Recongition》#xff1a;用于图像分类的深度残差学习。
ResNet#xff08;残差网络#xff09;是在2015年由微软研究院的Kaiming He等人提出的#xff0c;旨在解决深度神经网络训练过程中的梯度消失、梯度爆炸问题#xff0c;并允许…《Deep Residual Learning for Image Recongition》用于图像分类的深度残差学习。
ResNet残差网络是在2015年由微软研究院的Kaiming He等人提出的旨在解决深度神经网络训练过程中的梯度消失、梯度爆炸问题并允许网络构建得更深以提高准确性。
现存问题
1、非常深的神经网络难以训练会存在梯度爆炸和梯度消失等情况之前的解决方式是1选择合理的参数初始化方式避免初始值过大或过小2在中间层加入normalization对参数进行标准化如BN等。
2、网络较深后性能会变差训练和测试精度都会变差但这并不是由于过拟合训练误差下降测试误差上升。 3、层数变多时精度变差理论上来说如果浅层网络学习到一个比较好的结果那么增加深度后效果不会变差因为增加的层会学习一个恒等映射Identity Mapping。但在实际中优化器(SGD)无法实现这样的效果。
解决方案残差学习 显式地增加一个恒等映射分支Residual Connection。设当前浅层网络的输出是x学习目标是H(x)则令新加入的层学习一个残差F(x) H(x) - x此时整个网络的输出就可以表示为F(x) x而网络的优化目标就 F(x) H(x) - x即层学习输入与输出之间的差异。这意味着如果一个输入需要通过网络传递到深层网络可以通过恒等映射轻易实现这一点通过层的权重接近于零来学习这一恒等映射。 为什么这么做
1、不会增加任何需要学习的参数与网络复杂度
2、此时增加网络深度就可以提升精度。
增加残差连接前的梯度增加残差连接后的梯度
ResNet50的结构 ResNet50是一种深度残差网络它包含了50层深的卷积神经网络。ResNet的核心创新在于它使用了快捷连接或跳过连接允许网络的激活跳过一个或多个层。在ResNet50中这些连接帮助激活绕过两层卷积层直接连接到第三层这是所谓的残差块的基础。 ResNet50的网络结构大致可以分为五个主要部分加上输入和输出层。在初始层它使用一个7x7的卷积核和步幅为2的卷积操作后面接最大池化层以降低特征图的空间尺寸。接下来的四个部分由3个4个6个和3个残差块组成每个部分在结束时通过步幅为2的卷积减少特征图的大小。每个残差块内有三层卷积分别使用1x13x3和1x1的卷积核其中1x1卷积层主要用于降低和恢复维度从而减少模型参数和计算量。 在网络的末端使用全局平均池化层代替了传统的全连接层来减少参数和模型的复杂度。最后它通过一个全连接层和softmax激活函数来输出最终的分类结果。 ResNet50的设计极大地减少了深层网络训练的难度因为快捷连接帮助梯度直接流过整个网络使得即便是很深的网络也可以用标准的随机梯度下降方法有效地训练。
残差块结构 每个残差块内的三个卷积层分别有不同的滤波器数量和大小1x13x31x1。1x1的卷积层用于降维和升维从而减少计算量。 其他防止过拟合的方法
1、early stop(提前停止)在模型开始过度拟合训练数据时停止训练找到欠拟合和过拟合之间的“合适点”很重要。 2、Dropout训练时随机丢弃隐藏层的神经元使被丢弃的神经元输出为0不再进行信号传递。 使用Dropout可以减少神经元之间复杂的共适应性。当隐藏层神经元被随机删除之后使得全连接网络具有了一定的稀疏性从而有效地减轻了不同特征的协同效应。也就是说有些特征可能会依赖于固定关系的隐含节点的共同作用而通过Dropout的话就有效地组织了某些特征在其他特征存在下才有效果的情况增加了神经网络的鲁棒性。 3、正则化在损失函数中增加正则项以作为惩罚通过在学习过程中对大的权重进行惩罚来抑制过拟合。 神经网络的学习目的是减小损失函数的值。如果为损失函数加上权值的平方范数L2范数就可以抑制权重变得过大。用符号表示的话如果将权重记为WL2范数的权值衰减就是然后加到损失函数上。是控制正则化强度的超参数。设置得越大对大的权重施加的惩罚就越严重就会使W变小。一个直观地理解就是令W接近于0从而消除这些隐藏神经元的影响使网络变得简洁。两种常用的正则化技术是 L1 正则化和 L2 正则化。 另一种理解是当迫使w变小时输出z也会是一个很小的值此时模型便会趋于拟合一个线性函数。 4、Batch Normalization 在网络的训练中BN使得一个minibatch中的所有样本都被关联在了一起因此网络不会从某一个训练样本生成确定的结果即同样一个样本的输出不再仅仅取决于样本的本身也取决于跟这个样本同属一个batch的其他样本而每次网络都是随机取 batch这样就会使得整个网络不会朝这一个方向使劲学习一定程度上避免了过拟合。
5、交叉验证 6、增加训练数据提升模型的泛化性。
7、特征选择在构建模型时有许多用于预测结果的特征而这些特征有些是不必要的因此可以识别出训练数据中重要的特征移除其他不重要的特征。此过程有助于简化模型并减少数据中的噪声。