深度学习: 数据增强(Data Augmentation)
发布时间
阅读量:
阅读量
基于机器学习的数据增强方法(Machine Learning-based Data Augmentation),也被称为数据分析增强或数据分析扩增技术(Machine Learning-based Data Augmentation and Expansion),是一种用于处理小样本问题的有效方法。对于深度学习领域而言,在面对小样本问题时容易出现过拟合现象,在这种情况下即使训练集上的准确率很高但在测试集上的表现却十分不佳。遇到这种情况怎么办?你有没有什么解决办法?显然最常用的方法之一就是主动进行数据增强操作——通过多种技术手段扩展训练集规模以提高模型泛化能力。这种方法不仅能够有效缓解小样本带来的挑战还能够帮助提升模型性能使其更加鲁棒和可靠。
在各种不同的应用场景中,在进行深度学习训练时,默认的数据量往往难以满足需求,在这种情况下就需要依赖于数据增强技术来提高模型性能。具体来说,在实际应用中常用的方法包括裁剪操作(如裁剪)、旋转(包括顺时针和逆时针旋转)、镜像翻转(即反射)以及平移操作等;此外还有缩放操作(即尺度调整)、亮度调节(即对比度变化)、添加噪声以及色彩调整等多种方法;这些方法既可以单独使用也可以结合运用以达到最佳的数据多样性效果,并最终使模型具备更强的泛化能力
比如假设你的数据集仅包含1\times 1\times 1\,966个图像样本的情况下
那么通过裁剪操作
则可以在每幅图中生成32\times 32=1\,966个不同位置的子图像
随后执行水平翻转操作
这样处理后
你最终将获得一个包含1\times 1\times (1\,966 \times 5\,888)图像的数据集


Color Jittering:对颜色的数据增强:图像亮度、饱和度、对比度变化(此处对色彩抖动的理解不知是否得当);
PCA Jittering:首先按照RGB三个颜色通道计算均值和标准差,再在整个训练集上计算协方差矩阵,进行特征分解,得到特征向量和特征值,用来做PCA Jittering;
Random Scale:尺度变换;
Random Crop:采用随机图像差值方式,对图像进行裁剪、缩放;包括Scale Jittering方法(VGG及ResNet模型使用)或者尺度和长宽比增强变换;
Horizontal/Vertical Flip:水平/垂直翻转;
Shift:平移变换;
Rotation/Reflection:旋转/仿射变换;
Noise:高斯噪声、模糊处理;
Label shuffle:类别不平衡数据的增广,参见海康威视ILSVRC2016的report;
代码解读
全部评论 (0)
还没有任何评论哟~
