关联比赛: Apache Flink极客挑战赛——垃圾图片分类

一. 赛题背景分析及理解

本次竞赛要求结合大数据计算引擎Flink和深度学习的计算平台Intel Analytics Zoo应用在图片识别场景,进行垃圾图片的分类。目标:对提供的100类大约6000张垃圾图片进行模型训练,然后使用Flink和计算平台Intel Analytics Zoo进行分类预测。

image.png

二. 核心算法

  1. 模型选择:由于模型训练是在官方服务器CPU上进行训练,训练时间限制为3个小时,因此选择了tensorflow中现有的预训练模型进行fintune,经过实验发现,Xception具有较好的效果。

image.png

  1. 模型训练:在baseline的基础上微调,将模型训练代码提交至服务器进行训练。

image.png

  1. 数据增强由于官方的给的数据集有100类,共6000张图片,容易造成过拟合,因此,对数据进行了常规的旋转、平移、翻转数据增强。4) 结果及预测使用Flink和计算平台Intel Analytics Zoo进行预测,值得一提的是,需要将图片以BGR的排列方式输入到模型中才能正确预测,并且预测要求500毫秒内完成预测,并且在进行预测前输入图片的预处理对预测的结果有很大的影响。

三. 关键代码数据增强:

image.png

预测图片处理:

image.png

转变BGR格式:

image.png

四. 比赛经验总结和感想

这次比赛我们用到了之前没有接触过的大数据计算引擎Flink和深度学习的计算平台Intel Analytics Zoo进行模型加载和预测,在工程的建立以及模型加载等遇到了各种问题,在不断解决的过程中不断的学习。在模型的选择和训练上,由于资源的限制以及数据量的不足,像集成模型等都不能用到,只能在预训练模型上进行fintune,从数据增强等提高模型的泛化能力,也尝试了自己收集数据在本地做预训练,大概花了一周时间收集到了1万张50类的数据,但是最终没有时间去收集更多的数据,也是一种遗憾。最后,能够找到志同道合的人一起打比赛是很nice的经历!

查看更多内容,欢迎访问天池技术圈官方地址:Flink垃圾图片分类优胜奖比赛攻略\_贪吃的小香猪-148队\_天池技术圈-阿里云天池


阿里云天池
51 声望14 粉丝