"华为云杯"2019人工智能创新应用大赛优胜奖方案分享-郭老师的弟子团队

HWCloudAI 发表于 2020/06/10 18:22:39 2020/06/10
【摘要】 关于本次大赛的经验分享,主要可以分为以下几个方面一、数据分析数据共57个类别,3848张图片,类别间存在数据不均衡问题。存在一些长宽比过度偏离1的数据,针对这些图片进行相应目标区域的裁剪。个别类别间存在细粒度问题,例如红色的皮影和剪纸,小炒泡馍和葫芦头泡馍,针对这些困难类别着重做了数据扩充。数据扩充:数据来源:通过爬虫从谷歌,百度上爬取数据。扩充的准则:对官方数据集训练一个模型,利用该模型选...

关于本次大赛的经验分享,主要可以分为以下几个方面


一、数据分析

数据共57个类别,3848张图片,类别间存在数据不均衡问题。

image.png

存在一些长宽比过度偏离1的数据,针对这些图片进行相应目标区域的裁剪。

image.png


个别类别间存在细粒度问题,例如红色的皮影和剪纸,小炒泡馍和葫芦头泡馍,针对这些困难类别着重做了数据扩充。

image.png


数据扩充:

数据来源:通过爬虫从谷歌,百度上爬取数据。

扩充的准则对官方数据集训练一个模型,利用该模型选出爬取数据中置信度较高的数据,

                    对每个类别进行有差异的扩充,不断迭代更新数据集。

image.png


二、数据增强

1、HorizontalFlip  水平翻转   

2、ColorJitter   亮度,饱和度,对比度变化

3、RandomResizeCrop 随机裁剪缩放

4、RandomErasing 随机遮挡

5、Cutmix 剪切粘贴patch块

6、Sharpen 随机图像锐化

image.png


三、模型选择

模型选用的是resnext101 32×4d

尝试了添加空间注意力,全连接替换成KNN,Arcface等方法,但均未提高精度。

image.pngimage.png

四、超参数设置

预训练参数:Imagenet-1k

损失函数:CrossEntropyLoss + Label Smoothing

优化器:SGD

学习率:初始0.01,每5个epoch lr*0.7

迭代次数:30~40 epoch

图像大小:训练RandomResizeCrop(384)

                      测试Resize(540)+CenterCrop(512)


因为数据增强采用了RandomResizeCrop ,相当于对图像进行拉伸,所以训练采用小尺寸,测试采用大尺寸。


五、应用

我们采用的是微信小程序,把模型部署在云端,调用云端gpu,实现快速预测,解决了移动端算力不足的问题,并且如果修改模型,

只需要在云端修改,即可实现移动端和云端的同步,方便管理。

image.png


六、总结

1、数据很大程度地决定了最后的精度,所以对爬虫数据的选择很重要, 应该多针对错误样本对数据集进行扩充和调整。

2、在实验中大幅度提升精度的方法有RandomResizeCrop,Random Erasing,合适的训练尺寸,提高测试分辨率。

3、训练时应该设置随机种子,保证结果可复现,并且在尽量控制变量的基础上逐步添加trick,记录好实验结果。




【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。