作者:欧新宇(Xinyu OU)
本文档所展示的测试结果,均运行于:Intel Core i7-7700K CPU 4.2GHz, nVidia GeForce GTX 1080 Ti
本教案所涉及的数据集仅用于教学和交流使用,请勿用作商用。
最后更新:2021年3月6日
本教案以蝴蝶数据集为例进行介绍。
基于深度学习的图像分类包括很多实现的代码,有些是通用
的,例如日志文件,绘图文件;有些是属于工程性
的,例如数据准备文件;也有一部分是项目私有
代码,例如配置文件。
1. 数据准备:主要任务是将下载(收集)好的数据进行初步准备,包括数据清洗、数据标注和数据列表的生成。其中,
所有的数据集都按照工程习惯生成四个数据集,具体包括:
训练集
和验证集
混合获得,用于在模型训练完毕后的二次训练训练集
和验证集
;并进行模型训练,在完成超参数选择后,再将训练集
和验证集
合并在一起后,进行统一训练。没有标注
的,并且测试集也不应该被用来参与模型参数的选择,只能在模型训练好,进行一次性的结果输出或性能评估。2. 数据预处理:数据预处理主要负责实现数据的增广、通道变化、归一化、数据批次划分等,对于训练数据可能会包含多种数据增广操作,对于测试数据则一般只包含十重切割。
3. 数据读取:主要任务将读入的数据进行封装,并送入训练或预测代码
数据准备和数据预处理(图像增广)的相关知识和代码可以参考: [数据准备]