深度学习-42-基于PyTorch对LeNet5逐层分析计算过程
文章目录
- 1 经典的Lenet5卷积神经网络
-
- 1.1 Lenet5的网络结构示意图
-
- 1.1.1 图中灰色的大方块
- 1.1.2 卷积计算过程
- 1.1.3 池化计算过程
- 1.1.4 卷积和池化
- 1.1.5 向量的展平
- 1.1.6 全连接层的计算
- 1.2 Pytorch实现Lenet5模型
-
- 1.2.1 init函数的实现
- 1.2.2 forward函数实现
- 2 训练图像分类模型
-
- 2.1 加载数据集
- 2.2 创建优化器和损失函数
- 2.3 训练函数
- 2.4 模型评估
- 2.5 模型保存和加载
- 3 参考附录
1 经典的Lenet5卷积神经网络
该网络会以数字图像作为输入,经过卷积神经网络的计算,最终识别出图像中的数字是几,从而实现数字图像的分类。
例如,上图中展示了,向网络输入一张图片,经过神经网络的计算,网络给出结果“3”。
1.1 Lenet5的网络结构示意图
在网络的示意图中,标记了卷积神经网络中包含的结构与数据计算过程中的尺寸变化。
上图为Lenet5卷积神经网络的示意图。
我们可以看到,图中标记了2个卷积层,2个池化层和3个全连接层。
从整体来说,将一个28×28大小的单通道图像(黑白灰色图),输入至lenet5网络,经过网络的一步步的处理,最终会计算出一个1×10的输出结果。