ResNet算法

article/2025/8/22 21:37:59

Daily learning2

Q1:过拟合(overfitting),欠拟合(underfitting)?

A1:欠拟合:根本原因是特征维度过少,模型过于简单,导致拟合的函数无法满足训练集,误差较大

     解决方法:增加特征维度,增加训练数据; 

     过拟合:根本原因是特征维度过多,模型假设过于复杂,参数过多,训练数据过少,噪声过多,导致拟合的函数完美的预测训练集,但对新数据的测试集预测结果差。 过度的拟合了训练数据,而没有考虑到泛化能力。

     解决方法:(1)减少特征维度;(2)正则化,降低参数值。

 Q2:梯度爆炸(Gradient Exploding)/消失(Vanishing)?

A2:两种情况下梯度消失经常出现,一是在深层网络中,二是采用了不合适的损失函数,比如sigmoid。梯度爆炸一般出现在深层网络和权值初始化值太大的情况下,下面分别从这两个角度分析梯度消失和爆炸的原因。

1.深层网络角度

 

 图中的曲线表示权值更新的速度,四个隐层的网络来说,第四隐藏层比第一隐藏层的更新速度慢了两个数量级:

 从深层网络角度来讲,不同的层学习的速度差异很大,表现为网络中靠近输出的层学习的情况很好,靠近输入的层学习的很慢,有时甚至训练了很久,前几层的权值和刚开始随机初始化的值差不多。因此,梯度消失、爆炸,其根本原因在于反向传播训练法则,属于先天不足。

2.激活函数角度

 其实也注意到了,上文中提到计算权值更新信息的时候需要计算前层偏导信息,因此如果激活函数选择不合适,比如使用sigmoid,梯度消失就会很明显了,原因看下图,左图是sigmoid的损失函数图,右边是其导数的图像,如果使用sigmoid作为损失函数,其梯度是不可能超过0.25的,这样经过链式求导之后,很容易发生梯度消失,sigmoid函数数学表达式为sigmoid(x)=\frac{1}{1+e^{-x}}

同理:tanh作为激活函数,它的导数图如下,可以看出,tanh比sigmoid要好一些,但是它的导数仍然是小于1的。tanh数学表达为:tanh(x)=\frac{e^{x}-e^{-x}}{e^{x}+e^{-x}}

 

 

Q3:什么是残差?

A3:真实数据和预测数据的偏差就是残差,如下图所示。

A4: ResNet解决了什么问题?

Q4:1.深度学习目前进展取决于技巧:初始权值选择,局部感受野,权值共享等等,但使用更深层的网络时(例如> 100),依然要面对反向传播时梯度消失这类传统困难,

      2.退化问题:层数越多,训练错误率与测试错误率反而升高

 Q5:什么是残差网络

A5:一条路不变(恒等映射);一条路负责拟合相对于原始网络的残差,去纠正原始网络的偏差,而不是让整体网络去拟合全部的底层映射,这样网络只需要纠正偏差

ResNet为什么解决网络退化问题

 

深度残差网络的思路

引入“捷径”,可以防止梯度消失问题,其实在ResNet出来以前已经有人对这方面进行研究了,Srivastava等人的“公路网络”,“培训非常深的网络”是类似的方法,他们认为更深层的网络应该也是易于优化的,层数越多准确率越高,训练方法与“传统”深度网络相比不会有很大变化,基于此,何凯明团队提出了一个新的深度残差网络,下面我们就先看看该网络的核心部分即:

上图的左半部分是常规的神经网络形式,每层有权值和激活函数,这里的激活函数采用的是RELU函数,目的是为了避免梯度消失的问题,右半部分是残差网络的基本单元,和左边最大的不同在于多了一个身份即多了一个直接到达输出前的连线,这代表什么意思呢?刚开始输入的X,按照常规的神经网络进行权值叠加然后通过激活函数,在次权值叠加后此时在把输入的信号和此时的输出叠加然后在通过激活函数,就是这样的一个网络,而那条线称为捷径,也称为高速公路?这里的X就是我们的拟合的函数,而H(x)的就是具体的数据点,那么我通过训练使的拟合的值加上F(x)的就得到具体数据点的值,因此这 F(x)的就是残差了,如下图

对于残差块的解释

 

 它有二层,如下表达式,其中\sigma代表非线性函数ReLU,

F=W_{2}\sigma (W_{1}x)

然后通过一个shortcut,和第二个ReLU获得输出y

y=F(x,{W_{i}})+x

当需要对输入和输出维数进行变化时(如改变通道数目),可以在shortcut时对x做一个线性变换Ws,如下式,然而实验证明x已经足够了,不需要再搞个维度变换,除非需求是某个特定维度的输出,如文章开头的resnet网络结构图中的虚线,是将通道数翻倍。

y=F(x,{W_{i}})+W_{s}x

实验证明,这个残差块往往需要两层以上,单单一层的残差块(y=W1x+x)并不能起到提升作用。残差网络的确解决了退化的问题,在训练集和校验集上,都证明了的更深的网络错误率越小,如下图

实际中,考虑计算的成本,对残差块做了计算优化,即将两个3x3的卷积层替换为1x1 + 3x3 + 1x1, 如下图。新结构中的中间3x3的卷积层首先在一个降维1x1卷积层下减少了计算,然后在另一个1x1的卷积层下做了还原,既保持了精度又减少了计算量。

 bty:残差resnet网络原理详解_mao_feng的博客-CSDN博客_resnet

         深度学习 --- 深度残差网络详解ResNet_进击的菜鸟-CSDN博客_深度残差网络

 

 


http://chatgpt.dhexx.cn/article/3wFUUx0L.shtml

相关文章

Resnet代码详解

这篇文章是用来讲解Resnet(残差网络)代码的,结合代码理解残差网络结构。 目录 Bottleneck类 Conv33 Conv11 BasicBlock ResNet _make_layer代码解析 完整的ResNet代码: 可以直接调用torch内置的resnet官方代码。 from torchvision.models impo…

ResNet结构的pytorch实现

文章目录 1.ResNet的创新1)亮点2)原因 2.ResNet的结构1)浅层的残差结构2)深层的残差结构3)总结 3.Batch Normalization4.参考代码 1.ResNet的创新 现在重新稍微系统的介绍一下ResNet网络结构。 ResNet结构首先通过一个…

Resnet论文解读

摘要: 提出了一种残差结构,这些残差网络的集合在ImageNet测试集上实现了3.57%的误差。该结果在ILSVRC 2015分类任务中获得第一名。 介绍: 主要讲述的就是针对 深度越深,精确度达到了一种饱和的状态,然后就会产生退化…

了解ResNet

产生背景 网络的层数越多,就能够提取更多的特征,但是如果只是简单的增加深度,就会导致梯度爆炸。也有文章提出,解决该问题的方法是正则化初始化和中间的正则化层,但是这样会导致另一个问题,退化,网络的层数…

ResNet网络

1.1.ResNet的提出 残差网络(ResNet) 是由来自Microsoft Research的4位学者提出的卷积神经网络,在2015年的ImageNet大规模视觉识别竞赛(ImageNet Large Scale Visual Recognition Challenge, ILSVRC)中获得了图像分类和物体识别的优胜。 网络…

ResNet详解——通俗易懂版

ResNet学习 什么是ResNet为什么要引入ResNet?ResNet详细解说 本篇博客主要是自己对论文的一些解读以及参考一些博客后的理解,如若有不对之处,请各位道友指出。多谢! 2015年刚提出ResNet的Paper 2016对ResNet进行改进之后的Paper …

CNN经典网络模型(五):ResNet简介及代码实现(PyTorch超详细注释版)

目录 一、开发背景 二、网络结构 三、模型特点 四、代码实现 1. model.py 2. train.py 3. predict.py 4. spilit_data.py 五、参考内容 一、开发背景 残差神经网络(ResNet)是由微软研究院的何恺明、张祥雨、任少卿、孙剑等人提出的, 斩获2015年ImageNet竞赛…

ResNet详解+PyTorch实现

1.Resnet简介 深度残差网络(Deep residual network, ResNet)的提出是CNN图像史上的一件里程碑事件,由于其在公开数据上展现的优势,作者何凯明也因此摘得CVPR2016最佳论文奖。 Resnet是残差网络(Residual Network)的缩写&#xff…

点估计

1.说明: 设总体 X 的分布函数形式已知, 但它的一个或多个参数为未知, 借助于总体 X 的一个样本来估计总体未知参数的值的问题称为点估计问题. 在统计问题中往往先使用最大似然估计法, 在最大似然估计法使用不方便时, 再用矩估计法. 2.常用构造估计量的方法 1&#…

【应用统计学】参数统计-点估计与估计量的评价标准

一、点估计 参数的点估计就是根据样本构造一个统计量,作为总体未知参数的估计。这个统计量称为未知参数的估计量。 在统计中,经常使用的点估计量有: 二、估计量的评价标准 1、无偏性 无偏性即指估计量抽样分布的数学期望等于总体参数的真值。 2、有效…

功能点估算方法,如何让估算偏差更小?

1、何为软件功能点 ​ ​软件功能点是站在业务角度对软件规模的一种度量,功能点的多少代表软件规模的大小,这里说的功能点是标准的功能点,按照标准的估算方法,每个人对特定需求估算出的功能点数是一致的。 功能点估算方法&…

三点估算法

施工时间划分为乐观时间、最可能时间、悲观时间 乐观时间:也就是工作顺利情况下的时间为a 最可能时间:最可能时间,就是完成某道工序的最可能完成时间m 悲观时间:最悲观的时间就是工作进行不利所用时间b。 活动历时均值(或估计值)(乐观估计4最可能估计悲观估计)/6 …

点估计、区间估计(利用回归方程进行预测)

回归模型经过各种检验并标明符合预定的要求后,可利用它来预测因变量。预测(predict)是指通过自变量x的取值来预测因变量y的取值。 1、点估计 利用估计的方程,对于x的一个特定值 ,求出y的一个估计值就是点估计。点估计分为两种&…

数理统计中的点估计

• 统计推断的基本问题有二:估计问题,和假设检验问题. • 本章讨论总体参数的点估计和区间估计.理解这两种估计的思想,掌握求参数估计量的方法和评判估计量好坏的标准. 点估计 问题的提出 设灯泡寿命 T~N(μ,σ2) ,但参数 μ 和 σ2 未知. 现在要求通过对总体抽样得到的…

统计学-点估计和区间估计

点估计和区间估计 点估计 矩估计法 正态分布是一种统计量,目的是描述总体的某一性质。而矩则是描述这些样本值的分布情况,无论几阶矩,无外乎是描述整体的疏密情况。K阶矩分为原点矩和中心矩: 前者是绝对的:1阶就是平均…

点估计和区间估计——统计学概念

概念简介: 点估计和区间估计是通过样本统计量估计总体参数的两种方法。点估计是在抽样推断中不考虑抽样误差,直接以抽样指标代替全体指标的一种推断方法。因为个别样本的抽样指标不等于全体指标,所以,用抽样指标直接代替全体指标&…

【定量分析、量化金融与统计学】统计推断基础(3)---点估计、区间估计

一、前言 我发现很多人学了很久的统计学,仍然搞不清楚什么是点估计、区间估计,总是概念混淆,那今天我们来盘一盘统计推断基础的点估计、区间估计。这个系列统计推断基础5部分分别是: 总体、样本、标准差、标准误【定量分析、量化…

【数据统计】— 峰度、偏度、点估计、区间估计、矩估计、最小二乘估计

【数据统计】— 峰度、偏度、点估计、区间估计、矩估计、最小二乘估计 四分位差异众比率变异系数利用数据指标指导建模思路 形状变化数据分布形态峰度: 度量数据在中心聚集程度偏度 利用数据指标指导建模思路 参数估计点估计区间估计矩估计举例:黑白球(矩…

7.1 参数的点估计

小结: 点估计是一种统计推断方法,它用于通过样本数据估计总体参数的值。在统计学中,总体是指一个包含所有个体的集合,而样本是从总体中选出的一部分个体。总体参数是总体的某种特征,如平均值、标准差、比例等。 点估…

【数理统计】参数估计及相关(点估计、矩估计法、最大似然估计、原点矩中心距)

1 基础知识 1.1 常见分布的期望和方差 1.2 对数运算法则 log ⁡ a ( M N ) log ⁡ a M log ⁡ a N log ⁡ a ( M / N ) log ⁡ a M − log ⁡ a N log ⁡ a ( 1 / N ) − log ⁡ a N log ⁡ a M n n log ⁡ a M \log _{a}(M N)\log _{a} M\log _{a} N \\ \log _{a}(M / N…