动手学深度学习 | 经典卷积神经网络LeNet | 21

摘要:
目录LeNet代码QALeNet显示了LeNet的结构图。乐视网的第二个音量累积层频道的数量增加到了16个。这是否意味着信息被放大了?可以看出,以下卷积神经网络模型发生了变化。长度和宽度在缩小,通道的数量在增加。通道可以被认为是一种模式,这意味着压缩图像被添加到新的识别模式中进行卷积:高度和宽度一直在减小,通道一直在增加。在当前的卷积神经网络中,高度和宽度将变为1,通道将变为数千。

目录

LeNet

动手学深度学习 | 经典卷积神经网络LeNet | 21第1张

动手学深度学习 | 经典卷积神经网络LeNet | 21第2张

动手学深度学习 | 经典卷积神经网络LeNet | 21第3张

动手学深度学习 | 经典卷积神经网络LeNet | 21第4张

动手学深度学习 | 经典卷积神经网络LeNet | 21第5张

上面是LeNet的结构示意图。

模型定义

net = nn.Sequential(
	# 这里输出是28*28,所以要padding=2,填充为32*32
    nn.Conv2d(1, 6, kernel_size=5, padding=2), nn.Sigmoid(),
    nn.AvgPool2d(kernel_size=2, stride=2),
    nn.Conv2d(6, 16, kernel_size=5), nn.Sigmoid(),
    nn.AvgPool2d(kernel_size=2, stride=2),
    nn.Flatten(),
    nn.Linear(16 * 5 * 5, 120), nn.Sigmoid(),
    nn.Linear(120, 84), nn.Sigmoid(),
    nn.Linear(84, 10)) # 最后输出10个概率

动手学深度学习 | 经典卷积神经网络LeNet | 21第6张

代码

使用LeNet来在Fashion-Mnist数据集上进行训练。

动手学深度学习 | 经典卷积神经网络LeNet | 21第7张

QA

  1. 池化和卷积是不是更适合图像这类数据,而对于时序性数据(做分类)是不是不适用这类数据?

后面会将一个使用conv-1d来进行文本分类的案例。

至于要不要使用池化,其实没有确定答案,可以试,因为使用了池化也没有带来什么坏处。

  1. LeNet的第二个卷积层通道数增加到了16,这意味信息被放大了吗?

图片信息肯定是要压缩的,一般来说,就是卷积图片的高宽减半,然后通道增加一倍。(实际信息没有被放大,因为深度学习模型本质就是在压缩信息)

可以看到以下卷积神经网的模型变化,长宽是在不断的缩小的,通道数在不断增多,一个通道可以认为是一个模式,也就可以认为被压缩的图片,被加入新的识别模式当中

卷积:高宽是一直在减少的,通道是一直在增加的,现在的卷积神经网络,高宽会变成1,通道会变成上千。

  1. 池化层一般用max还是avg,用max的话会不会损失很多信息?

用max的意思是说只关心最大的那个信号量,也就是关系那个pattern是否出现了,如果出现了它的值就会很大,那么就把这个最大值拎出来就行了。(多通道输出,对应多个核)

max不见得比avg损失信息多,max其实比avg训练起来更好。

  1. 课程网站有个练习是将sigmoid替换为relu,是个sigmoid全替换为relu后模型基本不收敛,有什么原因吗?

不收敛的原因是因为学习率过大。

在这里插入图片描述

然后课程中给定sigmoid给到0.9的学习率其实给大了..

  1. 图像识别出来的特征,颜色可以打印出来吗?或者怎么去寻找网络到底学习了什么?

这个是可以打印出来的,有一个网站在做CNN 的可视化展示。

CNN Explainer,可以学习,直观感受CNN是如何工作的。

  1. 目前的卷积神经网络或其他深度学习是不是都需要较多的训练数据,如果训练数据体量很小是否不适合深度学习?是否有无监督/或小训练集的深度学习?

其实现在深度学习不需要很多数据集,我们后面会讲一个微调。

现在的深度学习,因为我们有很多在大量的数据集上训练好的模型,我们可以做到在真实的训练不需要训练样本,或者很少的训练样本就做的很好了。

我们这里讲的是从零开始学习,但是真实的应用不会真的从零开始的。

免责声明:文章转载自《动手学深度学习 | 经典卷积神经网络LeNet | 21》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇socket测试3postman的使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

如何理解全连接层

有部分内容是转载的知乎的,如有侵权,请告知,删除便是,但由于是总结的,所以不一一列出原作者是who。 再次感谢,也希望给其他小白受益。 首先说明:可以不用全连接层的。 理解1: 卷积取的是局部特征,全连接就是把以前的局部特征重新通过权值矩阵组装成完整的图。 因为用到了所有的局部特征,所以叫全连接。 理解2: 从卷积网络谈起,卷积网络在形式上有一点点像咱们正...

【tensorflow2.0】模型层layers

深度学习模型一般由各种模型层组合而成。 tf.keras.layers内置了非常丰富的各种功能的模型层。例如, layers.Dense,layers.Flatten,layers.Input,layers.DenseFeature,layers.Dropout layers.Conv2D,layers.MaxPooling2D,layers.Conv1D...

多视觉任务的全能: HRNet

多视觉任务的全能: HRNet HRNet是微软亚洲研究院的王井东老师领导的团队完成的,打通图像分类、图像分割、目标检测、人脸对齐、姿态识别、风格迁移、Image Inpainting、超分、optical flow、Depth estimation、边缘检测等网络结构。王老师在ValseWebinar《物体和关键点检测》中亲自讲解了HRNet,讲解地非常...

深度学习——卷积神经网络入门

传统神经网络:   是全连接形式,即样本的每个特征属性都通过所有的隐藏层节点映射,最后输出数据。由于是全连接,所以计算极为复杂,且模型不易学习。 卷积神经网络:卷积神经网络(Convolutional Neural Networks, CNN), CNN可以有效的降低反馈神经网络(传统神经网络)的复杂性,常见的CNN结构有LeNet-5、AlexNet、Z...

强化学习(Reinforcement Learning)中的Q-Learning、DQN,面试看这篇就够了!

1. 什么是强化学习 其他许多机器学习算法中学习器都是学得怎样做,而强化学习(Reinforcement Learning, RL)是在尝试的过程中学习到在特定的情境下选择哪种行动可以得到最大的回报。在很多场景中,当前的行动不仅会影响当前的rewards,还会影响之后的状态和一系列的rewards。RL最重要的3个特定在于: 基本是以一种闭环的形式; 不...

CNN网络的基本介绍(二)

四、激活函数 激活函数又称非线性映射,顾名思义,激活函数的引入是为了增加整个网络的表达能力(即非线性)。若干线性操作层的堆叠仍然只能起到线性映射的作用,无法形成复杂的函数。常用的函数有sigmoid、双曲正切、线性修正单元函数等等。 使用一个神经网络时,需要决定使用哪种激活函数用隐藏层上,哪种用在输出节点上。    比如,在神经网路的前向传播中,这两步会使...