残差(residual)

   在回归分析中,测定值与按回归方程预测的值之差,以δ表示。残差δ遵从正态分布N(0,σ2)。δ与σ之比,称为标准化残差,以δ*表示。δ*遵从标准正态分布N(0,1)。实验点的标准化残差落在(-2,2)区间以外的概率≤0.05。若某一实验点的标准化残差落在(-2,2)区间以外,可在95%置信度将其判为异常实验点,不参与回归线拟合。
### 关于残差网络 (Residual Network) #### 深度学习架构 残差网络(ResNet)是一种深度神经网络架构,其核心特点是引入了跳跃连接(skip connections),也称为残差块。这种设计允许信息绕过某些层直接传递到后续层,从而有效缓解深层网络中的梯度消失问题并提高模型性能[^1]。 #### 特点 - **解决退化问题**:随着网络层数增加,在传统卷积网络中会出现精度饱和甚至下降的现象,即所谓的“退化”现象。而ResNet通过引入残差学习机制可以很好地克服这一难题,即使在网络非常深的情况下也能保持良好的泛化能力[^3]。 - **恒等映射与其它复杂映射的学习**:ResNet不仅能够有效地学习复杂的特征变换,而且还能轻松实现简单的线性传输路径——亦即当某几层对于特定任务并非必要时,它们可以通过调整权重参数使其输出接近零,进而形成一条近似的直通线路。 - **易于优化**:由于存在多条前向传播通道以及反向误差累积途径被分割成多个较短片段的特点,使得整个系统的训练过程变得更加稳定高效[^2]。 ```python import torch.nn as nn class BasicBlock(nn.Module): expansion = 1 def __init__(self, in_planes, planes, stride=1): super(BasicBlock, self).__init__() self.conv1 = nn.Conv2d(in_planes, planes, kernel_size=3, stride=stride, padding=1, bias=False) self.bn1 = nn.BatchNorm2d(planes) self.conv2 = nn.Conv2d(planes, planes, kernel_size=3, stride=1, padding=1, bias=False) self.bn2 = nn.BatchNorm2d(planes) self.shortcut = nn.Sequential() if stride != 1 or in_planes != self.expansion*planes: self.shortcut = nn.Sequential( nn.Conv2d(in_planes, self.expansion*planes, kernel_size=1, stride=stride, bias=False), nn.BatchNorm2d(self.expansion*planes) ) def forward(self, x): out = nn.ReLU()(self.bn1(self.conv1(x))) out = self.bn2(self.conv2(out)) out += self.shortcut(x) out = nn.ReLU()(out) return out ``` 此代码展示了如何构建一个基本的ResNet模块`BasicBlock`,其中包含了两个连续的标准卷积操作加上Batch Normalization和ReLU激活函数,并且实现了跳接功能以支持残差学习。 #### 应用 自提出以来,ResNet已被广泛应用于各类图像识别任务当中,包括但不限于物体检测、语义分割等领域。此外,它还促进了更深层次研究的发展,比如对抗样本防御策略的设计等方面都有所涉及。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值