深度学习第二章-AlexNet搭建
本模型存放于目录:
E:\python文件\deep-learning-for-image-processing-master\tensorflow_classification\Test2_alexnet
一.模型介绍
- 首次利用GPU进行网络加速训练。
- 使用了ReLU激活函数,而不是传统的Sigmoid激活函数以及Tanh激活函数。
- 使用了LRN局部响应归一化。
- 在全连接层的前两层中使用了Dropout随机失活神经元操作,以减少过拟合。
二.数据集-花分类数据集
1.定义预处理函数
1 | data_transform = { #处理训练集与测试集的方法 |
2.从磁盘中读取数据集
1 | data_root = os.path.abspath(os.path.join(os.getcwd(), "../..")) # 计算数据集的根目录,从当前目录向上回溯两级目录 |
3.保存各类别的字典索引
1 | # {'daisy':0, 'dandelion':1, 'roses':2, 'sunflower':3, 'tulips':4} |
4.加载训练集与测试集
1 | batch_size = 32 |
三.网络模型搭建
1 | class AlexNet(nn.Module): |
四.训练模型
1 | net = AlexNet(num_classes=5, init_weights=True) |
训练结果如下:
五.测试模型效果
1 | device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") |
效果如图所示: