数据集说明:
- train_data.zip:此数据集用于训练模型,图片为第四套人民币中的某一张。共包含39620张图片。该文件采用分卷压缩方式,下载至一个文件夹下解压缩即可
- train_face_value_label.csv:train_data.zip对应的面额标签。数据共有两列,name和label,name为train_data中对应的文件名,label为对应的面值,共有9种面值,分别编号为 0.1,0.2,0.5,1,2,5,10,50,100,单位为元。
- public_test_data.zip:共有20000张图片。将训练好的模型得出的面额识别结果,上传到TinyMind对应测评系统,得到评分与排名。该文件采用分卷压缩方式,下载至一个文件夹下解压缩即可。
查看每种货币的样本数量是否倾斜
- 可以看出数据分布十分均匀, 图片数据也十分干净
- 应该不需要所有的数据投入训练, 可以成倍加快训练速度
- 为了增加数据的鲁棒性,增加了数据的左右切割,以及数据小角度旋转
InceptionResNetV2 迁移学习
谷歌开放了 Inception-ResNet-v2,这是一个在 ILSVRC 图像分类基准上取得顶尖准确率的卷积神经网络。Inception-ResNet-v2 是早期发布的 Inception V3 模型的变体,该模型借鉴了微软 ResNet 论文中的思路。具体内容可在我们的论文:Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning 中看到。
残差连接(Residual connections )允许模型中进行 shortcut,也使得研究员能成功的训练更深的神经网络从而产生更好的性能。这也使得 Inception 块的极度简单化成为可能。
举个例子,Inception V3 和 Inception-ResNet-v2 模型在识别犬种上都很擅长,但新模型做的更好。例如,旧模型错误报告右图中的狗是阿拉斯加雪橇犬,而新的 Inception-ResNet-v2 模型准确识别了两张图片中的狗的种类。
应用Inception-ResNet-v2 预训练模型做迁移学习做人民币面值识别
AI项目体验地址 https://loveai.tech
代码语言:javascript复制Found 31692 images belonging to 9 classes.
Found 7928 images belonging to 9 classes.
Found 20000 images.
开始训练模型
代码语言:javascript复制#生成了2个提交文件,可以提交在线测试(在模型收敛的情况下,2个文件大概率是一模一样)
train_raw()
代码语言:javascript复制396/396 [==============================] - 953s 2s/step -