数据增强
1.有监督的数据增强
1.1 单样本数据增强
- 几何变化类:
即对图像进行翻转,旋转,裁剪,变形,缩放等各类操作
(1)左右翻转:
torchvision.transforms.RandomHorizontalFlip()
(2)上下翻转:
torchvision.transforms.RandomVerticalFlip()
(3)随机剪裁
torchvision.transforms.RandomResizedCrop((height, width), scale=, ratio=) - 颜色变化类:
常见的包括噪声、模糊、颜色变换、擦除、填充等等。
(1) 随机改变亮度 亮度,对比度, 饱和度, 色调
torchvision.transforms.ColorJitter(brightness=, contrast=, saturation=, hue=)
1.2 多样本数据增强
(1)SMOTE:
主要解决各类别不平衡的问题,主要步骤为:
第一步,定义好特征空间,将每个样本对应到特征空间中的某一点,根据样本不平衡比例确定好一个采样倍率N;
第二步,对每一个小样本类样本(x,y),按欧氏距离找出K个最近邻样本,从中随机选取一个样本点,假设选择的近邻点为(xn,yn)。在特征空间中样本点与最近邻样本点的连线段上随机选取一点作为新样本点,满足以下公式:
(x’, y’) = (x, y) + rand(0, 1) * (xn, yn)
第三步,重复以上的步骤,直到大、小样本数量平衡
(2) SamplePairing:
SamplePairing方法的原理非常简单,从训练集中随机抽取两张图片分别经过基础数据增强操作(如随机翻转等)处理后经像素以取平均值的形式叠加合成一个新的样本,标签为原样本标签中的一种。这两张图片甚至不限制为同一类别,这种方法对于医学图像比较有效
(3) mixup:
思想就是线性插值
2.无监督的数据增强
无监督的数据增强方法包括两类:
(1) 通过模型学习数据的分布,随机生成与训练数据集分布一致的图片,代表方法GAN。
(2) 通过模型,学习出适合当前任务的数据增强方法,代表方法AutoAugment。
参考:https://zhuanlan.zhihu.com/p/61759947