残差网络(ResNet)
对于残差网络的一点个人理解:残差网络就是通过嵌套函数不断在原函数的基础上增加残差快
来扩大函数所能表示的范围以此来更能接近真正的表示函数复杂的函数类包含较小的函数类

残差块


ResNet模型


为什么深层的网络,底层比较难训练?
可以这样想:越靠近损失函数误差越小因为我们经过训练预测值和真实值之间的差距已经越来越小了所以梯度会越来越小当做反向传播的时候越往回传梯度就越小训练就越困难。
import torch
from torch import nn
from torch.nn import functional as F
from d2l import torch as d2l
class Residual(nn.Module): #@save
def __init__(self, input_channels, num_channels,
use_1x1conv=False, strides=1):
super().__init__()
self.conv1 = nn.Conv2d(input_channels, num_channels,
kernel_size=3, padding=1

本文介绍了残差网络(ResNet)的核心概念,包括残差块的设计和其解决深层网络训练难题的原因。通过在原函数基础上叠加残差块,ResNet能够更好地逼近复杂函数,从而改善深层网络中梯度消失的问题。
最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



