动手学深度学习(二)

全连接层网络参数是样本数和神经元个数
卷积层参数为样本数,通道数,高和宽
一、卷积神经网络
1、二维互相关(cross-correlation)运算的输入是一个二维输入数组和一个二维核(kernel)数组,输出也是一个二维数组,其中核数组通常称为卷积核或过滤器(filter)。
互相关运算,输入数组和核数组得到输出数组,卷积的核数组可以学习,使用互相关运算和使用卷积运算没有本质区别。
2、二维卷积层
二维卷积层将输入和卷积核做互相关运算,并加上一个标量偏置来得到输出。
nn.Parameter是tensor的子类
输出=(输入的高(宽)-核的高(宽))/步幅+1
我们在卷积神经网络中使用奇数高宽的核,比如3×3,5×5的卷积核,对于高度(或宽度)大小为2k+1的核,令步幅为1,在高(或宽)两侧选择大小为k的填充,便可保持输入与输出尺寸相同。
卷积层的两个超参数:填充和步幅
对于输出通道的卷积核,我们提供这样一种理解,一个ci×kh×kw的核数组可以提取某种局部特征,但是输入可能具有相当丰富的特征,我们需要有多个这样的ci×kh×kw的核数组,不同的核数组提取的是不同的特征。
3、特征图:二维卷积层输出的二维数组
感受野:影像输出的所有区域,层数越大感受野越大
4、使用卷积层相比全连接层可以以较少的参数数量来处理更大的图像。
5、卷积层的参数
in_channels输入通道
out_channels输出通道
kernel_size卷积核大小
stride步幅
padding填充
bias偏置
6、池化
池化层主要用于缓解卷积层对位置的过度敏感性。
输出=(输入的高(宽)-核的高(宽))/步幅+1
二、LeNet
LeNet分为卷积层块和全连接层块两个部分。
卷积层块里的基本单位是卷积层后接平均池化层:卷积层用来识别图像里的空间模式,如线条和物体局部,之后的平均池化层则用来降低卷积层对位置的敏感性。
全连接层块含3个全连接层。
三、
1、AlexNet
动手学深度学习(二)_第1张图片
2、VGG:通过重复使⽤简单的基础块来构建深度模型。
Block:数个相同的填充为1、窗口形状为3×33×3的卷积层,接上一个步幅为2、窗口形状为2×22×2的最大池化层。
3、LeNet、AlexNet和VGG:先以由卷积层构成的模块充分抽取 空间特征,再以由全连接层构成的模块来输出分类结果。
4、NiN:串联多个由卷积层和“全连接”层构成的小⽹络来构建⼀个深层⽹络。
⽤了输出通道数等于标签类别数的NiN块,然后使⽤全局平均池化层对每个通道中所有元素求平均并直接⽤于分类。
1×1卷积核作用
1).放缩通道数:通过控制卷积核的数量达到通道数的放缩。
2).增加非线性。1×1卷积核的卷积过程相当于全连接层的计算过程,并且还加入了非线性激活函数,从而可以增加网络的非线性。
3).计算参数少
5、GoogLeNet
1)、由Inception基础块组成。
2)、Inception块相当于⼀个有4条线路的⼦⽹络。它通过不同窗口形状的卷积层和最⼤池化层来并⾏抽取信息,并使⽤1×1卷积层减少通道数从而降低模型复杂度。
3)、可以⾃定义的超参数是每个层的输出通道数,我们以此来控制模型复杂度。

你可能感兴趣的:(学习)