zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Python视觉深度学习系列教程 第二卷 第11章 ResNet

Python教程学习 系列 深度 11 视觉 ResNet
2023-09-14 09:01:35 时间

        第二卷 第十一章 ResNet

        在我们的前一章中,我们讨论了 GoogLeNet 架构和 Inception 模块,这是一个微架构,在整个宏架构中充当构建块。 我们现在将讨论另一种依赖于微架构的网络架构——ResNet。

        ResNet 使用所谓的残差模块将卷积神经网络训练到以前认为不可能的深度。 例如,在 2014 年,VGG16 和 VGG19 架构被认为非常深入。 然而,使用 ResNet,我们已经在具有挑战性的 ImageNet 数据集上成功训练了超过 100 层的网络,并在 CIFAR-10上成功训练了超过 1,000 层。

        在本章中,我们将讨论 ResNet 架构、残差模块以及残差模块的更新,这些更新使其能够获得更高的分类精度。从那里我们将在 CIFAR 上实现和训练 ResNet 的变体 - 10 数据集和 Tiny ImageNet 挑战——在每种情况下,我们的 ResNet 实现都将胜过我们在本书中执行的每个实验。

        1、ResNet 和残差模块

        ResNet可以使用标准SGD和合理的初始化函数来训练极深的网络。 为了训练深度大于 50-100(在某些情况下为 1,000)层的网络,ResNet 依赖于一种称为残差模块的微架构。

        ResNet的另一个有趣的组成部分是池化层的使用非常谨慎。ResNet并不严格依赖最大池化操作来减小体积大小。 相反,步幅 > 1 的卷积不仅用于学习权重,还用于减少输出体积的空间维度。 事实上,在架构的完整实现中只应用了两次池化:<