深度学习算法效果提升-数据

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/diligent_321/article/details/83717043

       在初学机器学习的时候,常常看到一些博友提到,做机器学习80%以上的时间都用在了处理数据上,当初不以为然。现在工作也一年多了,在实际的项目中深深地体会到了这种说法的合理性。对于深度学习算法而言,提升效果最明显的方法就是数据了,改网络、损失函数、调参这些通常只能提升1~2个点,所以只适用于刷榜和最终的优化。在实际的项目过程中,前期都是通过做数据来显著提升模型效果的。
       在做项目中,测试模型效果用的数据通常都是业务上的真实数据,而训练数据有三种来源:(1) 无可用的训练集,需要人力进行数据的采集和标定,这里最关键的就是制定标定说明书了;(2) 有可用训练集,但是其中存在噪声,需要清洗后才能使用;(3) 有可用的公开数据集,可以直接拿来训练模型。下面解释跟数据相关的两个方向。

1. 数据准备

       为了使模型在业务测试集上有比较好的表现,一定要保证自己的训练集和测试集图片分布相似,最简单的方法就是,在桌面并排展示训练集和测试集两个文件夹中的图片,对比观察它们的差异,比如手机上的相册分类算法,如果测试集中的人像类别多为亚洲人,那么训练集也应该爬取相应的图片了,如果测试集中的动物类别只有猫狗,那么在爬去训练集中的动物类别素材时,爬取所有动物的图片就毫无意义了,反而会降低模型在测试集上的效果。

2.数据增强

       数据增强在模型效果优化方面,算是“锦上添花”了。更多地,它应用于当前的训练数据量很少,或者训练数据量足够但是图片多样性不够的情况。总结来说,数据增强的方法有以下几种,
       (1) 随机翻转,包括左右翻转和上下翻转;
       (2) 随机旋转,通常在45度以内;
       (3) 随机裁剪。
值得注意的是,增广后的图像要符合真实的场景。

猜你喜欢

转载自blog.csdn.net/diligent_321/article/details/83717043