运用深度学习框架PyTorch建立卷积神经网络进行图像分类训练。首先进行数据预处理,改变图片参数,例如图片尺寸更改,图片旋转,截取等。数据预处理将提升数据集灵活性,提升训练的精确性。之后将训练集分成训练集与验证集,确保在训练当中不会出现过拟合的情况。通过学习vggNet 与 GoogLeNet,自定义编写了一份卷积神经网络,其中包含5层卷积层,通过卷积与池化(最大池化函数),最终的特征图尺寸为1*1,并且特征图的数量提升至1024,将特征最大比例放大,之后使用全连接层进行分类。在卷积的过程中使用批次归一化加快训练速度,提升模型精度。训练过程中将批次设为256,使用交叉熵损失函数已经随机梯度下降进行优化,初始学习率为0.01。为了防止学习率过大影响训练质量,使用scheduler动态控制学习率。在GPU的加速下,模型通过在10分钟的训练精度即可达到80%。(colab T4 GPU)
Google Colab T4 GPU
10分钟内达到80%识别正确率