文章目录
- 简介
- conv2d
- 网络层的结构
简介
它是最早发布的卷积神经网络之一
conv2d
这个卷积成的参数先进行介绍一下:
self.conv1 = nn.Conv2d(in_channels=3, out_channels=10, kernel_size=3, stride=1, padding=1)
先看一下in_channels 输入的通道数,out_channels输出通道数,然后彩色图片一般是3的通道数,kernel_size:是进行卷积的矩阵长和宽,stride 是走的步长, padding 是原图片当中填充的的长和宽,
他们的关系:其实这个in_channels,out_channels,就是你这一层需要的通道数,和自己输出的通道数,和 kernel_size, stride, padding 没有直接关系,而kernel_size, stride, padding 是修改的图片的高宽,是用来获取图片特征很有用的参数
网络层的结构
我们对原始模型做了一点小改动,去掉了最后一层的高斯激活。除此之外,这个网络与最初的LeNet-5一致。
net = nn.Sequential(
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))