上采样增加了数据集中数据样本的数量。这样做的目的是纠正不平衡数据,从而提高模型性能。
上采样(又称过采样)是一种数据处理和优化技术,通过添加数据来解决数据集中的类不平衡问题。通过使用少数类的原始样本来添加数据,直到所有类别的数据量相等。Python scikit-learn 和 Matlab 都包含实现上采样技术的内置函数。
数据科学中的上采样常常被误认为是数字信号处理(DSP)中的上采样。两者在精神上相似,但又截然不同。与数据科学中的上采样类似,DSP 的上采样也是通过内插更高的采样率,人为地从输入信号(特别是离散时间信号)的频域中创建更多的采样。这些新样本是通过在原始信号中插入零,并使用低通滤波器进行插值产生的。这与数据平衡中的数据上采样方式不同。
用于数据平衡的上采样也有别于图像处理中的上采样。在后者中,高分辨率图像首先要降低分辨率(去除像素)以加快计算速度,然后卷积将图像恢复到原始尺寸(添加回像素)。
上采样是解决数据集失衡问题的有效方法。不平衡数据集的定义是,相对于真实人口而言,某一类别在数据集中的代表性严重不足,从而造成意外偏差。例如,假设一个模型经过训练,可以将图像分类为显示猫或狗的图像。所使用的数据集由 90% 的猫和 10% 的狗组成。在这种情况下,猫的比例过高,如果我们让分类器每次都预测猫,那么它对猫的分类准确率将达到 90%,而对狗的分类准确率则为 0%。在这种情况下,不平衡的数据集将导致分类器偏向于提高多数类别的准确性,而牺牲少数类的准确性。多类数据集也会出现同样的问题。1
上采样过程可以解决数据集不平衡的问题。它将根据原始数据集少数类特征合成的点填充到数据集中。这种方法通过有效增加代表性不足的少数类的样本数量来平衡数据集,直到数据集中所有类别的点数比例相等。
虽然只需绘制每个类别中数据点的计数图就能看到不平衡现象,但这并不能说明它是否会对模型产生重大影响。幸运的是,我们可以利用性能指标来衡量上采样技术纠正类不平衡的效果。这些指标大多用于二元分类,即只有两个类别:正类和负类。通常,正类是少数类,而负类是多数类。两种常用的指标是接收者工作特征曲线 (ROC) 和精确度-召回曲线。1
随机超采样是在少数类中随机复制数据点,直到少数类的规模与多数类的规模相等。
虽然两者性质相似,但随机过采样与自助法不同。自助法是一种集成学习技术,可以从所有类中重新采样。相比之下,随机过采样只从少数类中重新取样。因此,随机过采样可以被理解为一种更专业的自助法。
随机过采样虽然简单,但也有其局限性。由于随机过采样只会添加重复的数据点,因此可能会导致过拟合。3 但与其他方法相比,它仍有许多优点:易于实现、无需对数据进行扩展性假设,以及由于算法简单而耗时少。2
合成少数过采样技术 (SMOTE) 是一种上采样技术,于 2002 年首次提出,它从少数类中的现有点合成新的数据点。4 它包括如下过程:2
SMOTE 通过向数据集添加之前未见过的新数据,而不是简单地复制原有数据,解决了随机过采样中的过拟合问题。因此,一些研究人员认为 SMOTE 是一种比随机过采样更好的上采样技术。
另一方面,SMOTE 人工生成数据点的做法给数据集增加了额外的噪声,有可能使分类器更加不稳定。1 SMOTE 中的合成点和噪声也可能无意中导致少数类和多数类之间不反映现实的重叠,从而导致所谓的过度概括。5
一种流行的扩展名为 Borderline SMOTE,用于解决人为数据集噪声问题,并创建“较难”的数据点。“较难”的数据点是接近决策边界的数据点,因此较难分类。这些较难的点更有助于模型学习。2
Borderline SMOTE 可识别出与许多多数类点相近的少数类点,并将其归入“DANGER”集。DANGER 点是“难以”学习的数据点,这也是因为与被少数类点包围的点相比,DANGER 点更难分类。这一选择过程排除了最近邻仅为多数类点的点,这些点被算作噪声。在此基础上,SMOTE 算法将继续正常使用该 DANGER 集。3
自适应合成采样法 (ADASYN) 与 Borderline SMOTE 相似,都是生成更难学习的数据供模型学习。但其目的也是为了保留少数类数据的分布。6 为此,它首先根据邻点中多数类示例的数量,创建所有少数点的加权分布。这样,在生成新数据时,它就会更频繁地使用更接近多数类的少数类点。
过程如下:2
数据增强通过创建数据的变体来创建新数据。数据增强适用于各种机器学习领域。
数据增强的最基本形式是对数据集的原始输入进行转换。例如,在计算机视觉中,图像增强(裁剪、模糊、镜像等)可用于创建更多图像供模型分类。同样,数据增强也可用于自然语言处理任务,如用同义词替换单词或创建语义等效的句子。
研究人员发现,数据增强能有效提高计算机视觉和 NLP 任务的模型准确性,因为它能以低成本增加类似数据。但是,在使用这些技术之前,必须注意一些注意事项。对于传统的几何增强技术,在进行转换之前应考虑转换的“安全性”。例如,旋转“9”的图像会使其看起来像“6”,从而改变其语义。7
SMOTE 扩展和深度学习是近年来上采样技术的重点。这些方法旨在提高模型性能,并解决上采样的一些缺点,如少数类分布中引入的偏差。
SMOTE 的一些发展包括少数预测概率 SMOTE (MPP-SMOTE),它根据看到每个少数类样本的估计概率进行上采样。8 为了将 SMOTE 扩展到多类分类,有人提出了多标签边界线过采样技术 (MLBOTE)。9 两者的性能均优于所有现有的 SMOTE 变体,并保留了原始数据中的模式。
神经网络也被用于开发过采样技术。生成对抗网络引起了一些人的兴趣,并取得了可喜的成果,尽管训练时间使得这种技术比其他传统的上采样方法慢。10
1 Haobo He 和 Edwardo Garcia,“从不平衡数据中学习”,IEEE,2009 年 9 月,https://ieeexplore.ieee.org/document/5128907(ibm.com 外部链接)。(1,2,10)
2 Kumar Abishek 和 Mounir Abdelaziz,“不平衡数据的机器学习”,Packt,2023 年 11 月,https://www.packtpub.com/product/machine-learning-for-imbalanced-data/9781801070836(ibm.com 外部链接)。(3,4,6,8,9,12,14-17)
3 Kumar Abishek 和 Mounir Abdelaziz,“不平衡数据的机器学习”,Packt,2023 年 11 月,https://www.packtbar.com/product/machine-learning-for-im Balanced-data/9781801070836(ibm.com 外部链接)。Alberto Fernandez 等人,“从不平衡数据集学习”,2018 年。
4 Nitesh Chawla 等人,《SMOTE:合成少数群体过度采样技术》,JAIR,2002 年 6 月 1 日, https://www.jair.org/index.php/jair/article/view/10302 (ibm.com 外部链接)。
5 Kumar Abishek 和 Mounir Abdelaziz,“不平衡数据的机器学习”,Packt,2023 年 11 月。Haobo He 和 Edwardo Garcia,“从不平衡数据中学习”,IEEE,2009 年 9 月,https://ieeexplore.ieee.org/document/5128907(ibm.com 外部链接)。
6 Alberto Fernandez 等人,“从不平衡数据集学习”,Springer,2018 年。
7 Connor Shorten 和 Taghi Khoshgoftaar,“深度学习的图像数据增强调查”,Springer,2019 年 7 月 6 日**,**https://journalofbigdata.springeropen.com/articles/10.1186/s40537-019-0197-0(ibm.com 外部链接)。
8 Zhen Wei、Li Zhang 和 Lei Zhao,“基于少数预测概率的不平衡学习过采样技术”,ScienceDirect,2022 年 12 月 6 日,https://www.sciencedirect.com/science/article/abs/pii/S0020025522014578?casa_token=TVVIEM3xTDEAAAAA:LbzQSgIvuYDWbDTBKWb4ON-CUiTUg0EUeoQf9q12IjLgXFk0NQagfh0bU3DMUSyHL_mjd_V890o(ibm.com 外部链接)。
9 Zeyu Teng 等人,“多标签边界线超采样技术”,ScienceDirect,2023 年 9 月 14 日,https://www.sciencedirect.com/science/article/abs/pii/S0031320323006519?casa_token=NO8dLh60_vAAAAAA:AWPCvCP8PQG43DvkQFChZF2-3uzB1GJBBtgPURevWe_-aR0-WTbLqOSAsiwxulNAuh_4mIDZx-Y(ibm.com 外部链接)。
10 Justin Engelmann 和 Stefan Lessmann,“实现不平衡学习的基于条件 Wasserstein GAN 的表格数据过采样”,2021 年 7 月 15 日,ScienceDirect,https://www.sciencedirect.com/science/article/abs/pii/S0957417421000233?casa_token=O0d1BtspA8YAAAAA:n2Uv3v2yHvjl9APVU9V_13rQ9K_KwT0P__nzd6hIngNcZJE-fmQufDgR6XT1uMmDBHx8bLXPVho(ibm.com 外部链接)。Shuai Yang 等人,“使用基于生成式对抗网络的过采样方法进行风力涡轮机故障诊断”,IOP Science,2023 年 1 月 12 日,https://iopscience.iop.org/article/10.1088/1361-6501/acad20/meta(ibm.com 外部链接)。