一、前言
最近在学习深度学习这门课程,学一下博客记录用pytorch框架实现一些常用的CNN算法。
Build a Covolutional Neural Network to classifing CIFAR10 by Pytorch API。
CIFAR10是另一个著名的深度学习图像分类识别数据集,比MINIST更复杂,而且是RGB彩色图片。
本文所有代码放在Github上面:Github传送门
https://github.com/KsongloveCv/CNNs_with_pytorch
二、搭建Pytorch虚拟环境
1、创建Pytorch虚拟环境
2、进入Pytorch虚拟环境
source activate prtorch
安装pytorch。
网址:Pytorch网址
https://pytorch.org/
conda install pytorch torchvision cudatoolkit=10.1 -c pytorch
三、卷积神经网络训练CFAIR10
1、Lenet训练CFAIR10
训练的lenet准确度在63%左右,远低于MINIST的99%,简单的LeNet对较复杂的图片准确度不高。
2、AlexNet训练CFAIR10
准确率达到75%,对比LeNet-5的63%,有大幅提升。
3、Vgg19训练CFAIR10
准确率达到85%,对比AlexNet的75%,提升了10%。
4、ResNet34 训练CFAIR10
运行200个迭代,每个迭代耗时22秒,准确率不高,只有80%。准确率变化曲线如下:
5、ResNet34 数据增强 训练CFAIR10
数据增强后准确率达到85%,对比Resnet34,有大幅提升。
6、ResNet34 微调网络结构 训练CFAIR10
微调网络后准确率达到84%,对比Resnet34,也有提升。