2023.5.7 《动手学深度学习》第78章

Posted MoiSheldon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2023.5.7 《动手学深度学习》第78章相关的知识,希望对你有一定的参考价值。

今天继续学习《动手学习深度学习》第7章:现代卷积神经网络、第8章:循环神经网络,今天学到的内容主要有这两章的概念。

一、理论部分:

1、LeNet和AlexNet的网络结构


LeNet的激活函数是Sigmoid,AlexNet的激活函数是ReLU。

2、AlexNet和VGG的网络结构

3、Inception组成和GoogLeNet的网络结构


Inception模块组成,相当于用各种滤波器尺寸探索图像,不同大小的滤波器可以有效地识别不同范围的图像细节。

GoogLeNet的网络结构,全局平均汇聚层(global average pooling)避免了在最后使用全连接层。

4、Batch Normalization 批归一化

BN的具体操作是对一批数据进行归一化,使得这批数据均值为0、方差为1。BN通常位于卷积层或者全连接层之后、激活函数之前。
BN是为了解决内部协变量偏移(internal covariate shift)提出的,该问题指神经网络中每层的输入的分布随训练的过程而改变,使得网络难以学习、收敛、性能恶化。此外,BN在训练过程中向网络注入了噪声,使得网络更加鲁棒,起到了类似正则化的作用。

5、ResNet 残差网络

思想:每个附加层都应该更容易地包含原始函数作为其元素之一。说人话:加了附加层之后,最次也就是不产生效用,模型能拟合的函数与不添加这层是一样的,但凡这个附加层起了点作用,模型的拟合能力就会变好。这样,神经网络就可以继续加深了。
正常块与残差块的结构对比如下图。

ResNet-18结构如下:

6、DenseNet 稠密网络

在跨层连接上,不同于ResNet中将输入与输出相加,稠密连接网络(DenseNet)在通道维上连结输入与输出。然后通过添加过渡层来控制网络的维数,从而再次减少通道的数量。
ResNet和DenseNet在跨层连接的区别,前者是相加,后者是在通道维度上连接。

7、RNN(Recurrent) 循环神经网络

相比于卷积神经网络可以有效地处理空间信息,循环神经网络可以更好地处理序列信息。RNN通过引入状态变量存储过去的信息和当前的输入,从而可以确定当前的输出。

二、模块和函数

1、pytorch 模块
  • nn.AdaptiveAvgPool2d
    自适应池化层,函数通过输入原始尺寸和目标尺寸,自适应地计算核的大小和每次移动的步长。示例:
点击查看代码
x = torch.randn(1, 64, 32, 32)
adaptive_avgpool = nn.AdaptiveAvgPool2d((7, 7))
y = adaptive_avgpool(x)

跟李沐导师:动手学深度学习!

 Datawhale学习 

预告:三月学习计划,内容:深度学习入门

二月学习需求收集

李沐动手学深度学习热度排名第二。根据读者的学习建议,Datawhale团队联系了李沐老师,将组织动手学深度学习课程的学习。

关于动手学深度学习

《动手学深度学习》这本书由李沐等人主导编写,介绍了深度学习从模型构造到模型训练的方方面面,以及在计算机视觉和自然语言处理中的应用。

它最大的特色在于,不仅阐述了算法原理,还提供了实际可运行的代码。

更令人暖心的是,这本书不要求读者有任何深度学习或者机器学习的背景知识,书中会从头开始解释每一个概念。读者只需了解基础的数学和编程,如基础的线性代数、微分和概率,以及基础的Python编程,就可以愉快地开始啃这本书了。

目前已经上线了最新PyTorch版本。

提前进群学习


关注公众号,回复 “三月” 进学习群

以上是关于2023.5.7 《动手学深度学习》第78章的主要内容,如果未能解决你的问题,请参考以下文章

深度强化学习动手,第 7 章。无法让 tensorflow 工作

跟李沐导师:动手学深度学习!

《动手学深度学习》小记

动手学深度学习第一课:从上手到多类分类-Autograd

动手学深度学习第一课:从上手到多类分类-NDArray

MXNet创始人李沐《动手学深度学习》中文版上线!