Classification in the Presence of Label Noise: A Survey | IEEE Journals & Magazine | IEEE Xplore
文章摘要
标签噪声是分类中的一个重要问题, 有许多潜在的负面后果。 例如,预测的准确性可能会降低,而推断模型的复杂性和必要的训练样本数量可能会增加。文献中的许多著作都致力于研究标签噪声和开发处理标签噪声的技术。然而,该领域缺乏对不同类型的标签噪声、其后果以及考虑标签噪声的算法的全面综述。本文首先,考虑了标签噪声的定义和来源,并给出了标签噪声类型的分类。其次,讨论了标签噪声的潜在后果。第三,对标签噪声鲁棒性、标签噪声清洗和标签噪声容忍算法进行综述。对于每一类方法,都给出了一个简短的讨论, 以帮助从业者在其特定的应用领域中选择最合适的技术。最后,还讨论了实验的设计,这可能会引起想要测试自己算法的研究人员的兴趣。在本文中,标签噪声由错误标记的实例组成 :没有额外的信息被假设是可用的,如标签上的置信度。
1、介绍
分类已在机器学习中得到广泛研究。在这种情况下,标准方法包括从标记的数据集中学习分类器,以预测新样本的类别。但是,现实世界的数据集可能包含噪音,在[1]中定义为噪音,这种噪音会掩盖实例的功能与其类之间的关系。在[2]中,噪声也被描述为由非系统误差组成。除其他后果外,许多工作表明,噪声可能会对归纳分类器的分类性能产生不利影响[3]。。因此,噪声的普遍存在似乎是实际机器学习的重要问题,例如,在医疗应用中,大多数医学诊断测试都不是100%准确的,因此不能视为黄金标准[4] – [5] [6]。事实上,人类并不总是那么容易区分的生活和死亡 [4] 。因此,有必要实施消除噪声或减少其后果的技术。获得可靠标记的数据通常昂贵且耗时[4],这更是必要的,这解释了噪声的普遍性[7]。
在文献中,区分了两种类型的噪声:特征(或属性)噪声和类别噪声[2],[3],[8]。一方面,特征噪声会影响特征的观察值,例如,通过在测量过程中向每个特征添加小的高斯噪声来实现。另一方面,类别噪声会更改分配给实例的观察到的标签,例如,通过在二进制分类中将阳性标签错误地设置为阴性标签来进行。在[3]和[9]中,表明类别噪声比特征噪声可能有害得多,这凸显了处理此类噪声的重要性。标签噪声影响的普遍性由以下事实解释:1)有很多特征,而只有一个标签;2)每个特征对学习的重要性是不同的,而标签总是对学习有很大的影响。在[2]中也得到了类似的结果:除特征噪声污染了大量的特征噪声外,特征噪声对决策树的危害似乎比类噪声要小。
在本文中,类噪声是指观察到的不正确的标签。假设没有其他信息可用,这与其他情况相反,例如专家可以提供对他们自己的标签或用标签集回答的信心或不确定性的测量。重要的是要明确,只有实例的观察标签受到影响,而不是它的真实类。因此,这里的类噪声被称为标签噪声。
2、标签噪声的定义,来源和分类
A、标签噪声定义
假设每个训练样本都与一个观察到的标签相关联。这个标签通常对应于样本的真实类,但它在被呈现给学习算法之前可能会受到一个噪声过程,区分一个实例的真实类与它所观察到的标签是很重要的。污染标签的过程称为标签噪声,必须与特征(或属性)噪声分离
在本调查中,标签噪声被认为是一个随机过程,即,标签错误可能是故意的和恶意诱导的不被考虑。事实上,如果它们的标签在它们附近出现的概率很低,标记错误的实例可能是异常值。
B、标签噪声来源
首先,提供给专家的信息可能不足以执行可靠的标记。
其次,标注本身可能会发生错误。这种分类错误并不总是由人类专家造成的,因为自动分类设备现在在不同的应用中被使用。
第三,当贴标任务是主观的时,例如在医疗应用或图像数据分析中,某些专家在贴标中可能存在重要的可变性。
最终,标签噪声也可能是来自于数据编码或通信问题。
C、标签噪声分类
X是特征的向量,Y是真类,˜Y是观察到的标签,E是一个二进制变量,判断是否发生了标记错误(Y =˜Y)。箭头报告了统计依赖性:例如,假定˜Y总是依赖于Y。
1)在随机模型下的完全噪声:在图1(a)中,Y和˜Y之间的关系称为完全随机噪声(NCAR):错误E的出现独立于其他随机变量,包括真类本身。
2)随机模型中的噪声:在图1(b)中,假设误差的概率取决于真实的类Y,这里称为随机噪声(NAR),来自某些类的实例更容易被错误标记。
3)非随机模型噪声:大多数关于标签噪声的工作认为标签噪声影响所有实例没有区别。然而,假设上述两种类型的标签噪声并不总是现实的。例如,当样本与另一个类的实例相似时,它们可能更有可能被错误标记。
3、标签噪声对学习的影响
本节介绍了标签噪声的负面后果,但人工标签噪声也有潜在的优势。例如,可以在统计研究中添加标签噪声来保护人们的隐私。在[85]-[89]中,bagging添加标签噪声来提高分类结果:通过重采样产生不同的训练集,这些工作是复制原始的训练集,并在新的训练集中切换标签,以增加数据的可变性。
A、分类性能的下降
正常判别和逻辑回归会被标签噪声影响:它们的参数有偏差,错误率增加。
k个最近邻(kNN)分类器的分类性能也受到标签噪声的影响:最优邻居数k的最优值取决于训练实例的数量和标签噪声的存在。对于小的无噪声训练集,1NN分类器通常是最优的。然而,一旦加入标签噪声,即使对于小的训练集,k也会随着实例数的增加而单调增加
具体模型的实验评估:标签噪声对所有类型的分类器的影响都是不相同的。比较标签噪声对四种不同的监督学习者的影响:朴素贝叶斯,C4.5决策树,kNNs和支持向量机(svm)。其中朴素贝叶斯效果最好,SVM最差。
B、对学习需求和模型复杂性的影响
标签噪声会影响学习需求(例如,必要样本的数量)或学习模型的复杂性。在标签噪声的情况下,决策树的大小可能会增加。去除错误标记的样本可以降低支持向量机(支持向量数量)、C4.5决策树(树的大小)。后剪枝似乎也减少了标签噪声的后果。
C.、观测频率的失真
在错误标记的情况下,评估两个群体中两类人群比例差异的显著性检验可能会大大降低。在医疗应用中,往往需要进行疾病诊断的医学检测,以估计一种疾病在一个人群中的流行率,或比较(估计的)在不同人群中的流行率。然而,标签噪声会影响观察到的医学检测结果的频率,这可能会导致不正确的结论。
D.、对相关任务的影响
标签噪声降低了特征排名的稳定性,逻辑回归中,也说明了特征选择对标签噪声的敏感性。
E、结论
本节表明,标签噪声的后果是重要的和多样化的:分类性能的下降,学习需求的变化,学习模型的复杂性的增加,观察频率的失真,识别相关特征的困难,等等。这些结果的性质和重要性主要取决于标签噪声的类型和水平、学习算法以及训练集的特征。因此,在分析污染数据之前,机器学习从业者处理标签噪声并考虑这些因素似乎很重要。
4、处理标签噪声的方法
第一:依赖于对标记噪声具有自然鲁棒性的算法。换句话说,假设分类器的学习对标签噪声的存在不太敏感。
第二,尝试使用过滤器的方法来提高训练数据的质量。
第三,有一些算法直接在学习过程中建模标签噪声,或者被修改以嵌入的方式考虑标签噪声。
5、标签噪声鲁棒模型
A、关于损失的鲁棒性的理论思考
对给定损失函数下的风险最小化进行定义(分类器是通过最小化未来样本的预期损失来学习的,这被称为风险),如果在标签噪声存在的情况下,推断模型的误分类概率是相同的,则称为标签噪声鲁棒。大多数机器学习中的近期学习算法不是完全鲁棒于标签噪声。
B、集成方法:Bagging和Boosting
在存在标签噪声的情况下,Bagging相较于Boosting能够取得更好的结果,因为它能够处理噪声实例的变化性而不过度依赖它们。
AdaBoost对被错误标记的实例赋予较大的权重,这导致它过度关注建模噪声实例。由于噪声实例的权重过大,AdaBoost在模型训练时花费了过多的努力用于适应这些噪声。Bagging通过在训练中多次对数据进行有放回的随机抽样,噪声样本会增加基分类器的变化性。每次重新抽样会导致一个不同的模型,因此,Bagging中基分类器的多样性增加,而AdaBoost中基分类器的准确性会受到严重影响。
C、决策树
决策树受标签影响较大,但后剪枝可以减少标签噪声的影响。
D、其他方法
直接优化0-1 Loss的方法、随机森林、基于人工免疫识别系统的新方法(RWTSAIRS)、基于论证理论的两个程序以及特征提取的作用、在多类问题中使用一对一分解可以提高鲁棒性等。
E、结论
机器学习中的常见损失对于标记噪声并不是完全鲁棒的。然而,过拟合避免技术,如正则化,可以用于部分处理标签噪声。标签噪声鲁棒方法似乎只适用于简单的标签噪声情况,通过过拟合避免,可以安全地管理。
6、标签噪声污染的数据集的数据清洗方法
A、阈值的方法
基于异常度量的清理方法: 类似于异常值检测和异常检测的思想。例如,使用概率分类器估计条件分布P(Y | X)的熵。
基于复杂度度量检测标签噪声的方法: 由于标签噪声可能增加推断模型的复杂性,因此可以使用复杂性度量来检测那些加入训练集后显著增加模型复杂性的错误标记样本。
B、基于模型预测的滤波
在数据清理过程中,一些算法依赖于分类器的预测,包括分类、投票和分区过滤
分类过滤: 利用分类器的预测可以用于检测标签噪声,称为分类过滤。例如,使用支持向量机(SVM)学习训练数据,并移除被SVM误分类的所有实例。
投票过滤:分类过滤面临着删除太多实例的风险。为了解决这个问题,可以使用分类器的集成预测来过滤标签噪声。
分区过滤:该方法针对大型和分布式数据集,通过将数据分区并对每个分区推断规则,然后利用这些规则进行分类,以识别潜在的误标签实
D、KNN方法
训练集中存在误标签的训练实例会降低基于完整训练集构建的kNN分类器和不设计处理标签噪声的实例选择方法的性能。
基于启发式的kNN实例选择方法:例如,紧邻最近邻(CNN)规则[195]构建一个训练实例的子集,可以正确分类所有其他训练实例。
更复杂的启发式方法: 文献中存在更复杂的启发式方法,例如Wilson [202]提出的移除标签与其k = 3最近邻中的大多数标签不同的实例。
其他处理标签噪声的实例选择方法: 包括IB3,该方法使用显著性测试来确定哪些实例是良好的分类器,哪些实例被认为是嘈杂的。
PRISM算法: 在[208]中,使用不同的启发式方法区分三种类型的训练实例:正常实例、边界样本和应该被错误分类的实例(ISM)
E. 基于图的方法
类似于基于knn的编辑方法,只是它们使用邻域图[209]来表示训练集,其中实例通过边连接到其他相邻实例。这两个实例之间的边可以根据它们之间的距离进行加权。这种方法直接用于图来检测有噪声的实例。
F. 基于集成和Boosting的方法
AdaBoost的过拟合问题: AdaBoost在处理嘈杂数据集时容易过拟合,因为误标记实例的权重在AdaBoost的迭代的后期会变得比正常实例的权重要大得多。一些研究表明这种过拟合的倾向可以用来清理标签噪声。
boosting-Based数据清理方法:在[184]中,提出了一种简单的数据清理方法,该方法在AdaBoost的m次迭代后移除具有最高权重的一定比例的样本。[215]中提出的Outlier Removal Boosting (ORBoost)与AdaBoost相同,只是在提升过程中将权重超过某个阈值的实例权重设置为零,因此在学习过程中进行数据清理。
在[216]中,如果集成对误标记实例具有高置信度,则在学习过程中也会移除这些实例。
基于边缘分析的方法:实例的边缘定义为误分类该实例的弱分类器的权重之和。通过分析边缘的均值和方差,可以检测到误标记实例。
F、其他数据清理方法:
- 在ECG分割中,Hughes等人[56]删除靠近分类边界的实例的标签,然后使用半监督学习使用标记和(新标记的)无标记实例。
- [219]中提出了一种基于类别可分性标准的遗传算法方法。
- [220]和[221]中分别提出了自动数据增强(ADE)方法和自动噪声减少(ANR)方法,用于使用神经网络方法重新标记误标记实例。
- [222]中针对决策树提出了类似的方法。
标签噪声清理的优点之一是,删除的实例对模型推理步骤[158]绝对没有影响。在一些工作中,人们观察到,简单地删除错误标记的实例比重新标记它们更有效。
7、标签耐噪声学习算法
人们可以与分类器同时学习标签噪声模型,这种方法使分类器能够根据实例的真实未知类别进行分类,从而解耦了数据生成过程的两个组成部分,得到新的分类器。数据清理也可以直接嵌入到学习算法中,比如对于支持向量机。
A、概率方法
概率方法中的标签噪声容忍方法,主要包括贝叶斯方法、频率方法、基于聚类的方法和信任函数方法
1)贝叶斯方法
贝叶斯方法被用于解决标签噪声的可辨识性问题。在一些情况下,贝叶斯先验被引入以打破可辨识性问题。例如,在医学应用中,对二元诊断测试进行质量评估时,需要估计人口患病率、测试的敏感性和特异性。贝叶斯方法在此类问题中设置先验分布,以消除最大似然解的不确定性。
Beta先验和Dirichlet先验是用于二项分布和多项分布的共轭先验。它们在标签噪声问题中的贝叶斯方法中被广泛使用。
在一些方法中,通过迭代过程来纠正标签。对于每个样本,定义了一个指示变量,表示标签是否被更改。然后,通过估计每个样本的指示变量的概率,选择概率最高的样本进行重新标记。此过程重复进行,直到测试不再显著。
这些方法的优势在于能够在学习过程中包含各种先验信息,但先验的选择需要谨慎,因为结果依赖于使用的先验分布的质量。
2)频率方法
包括混合模型和一些基于概率建模的方法
混合模型: 混合模型是一种简单的频率方法,用于处理标签噪声。在某些情况下,每个样本被假定是从多数类别或异常类别的分布中生成的,其中分别有先验概率 1−λ 和 λ。这种方法的一个实例是在异常检测中使用的混合模型。该方法基于对先验概率的先验知识,并使用对数似然的增加来逐步测试并将样本添加到异常类别中。
概率建模:将标签的真实值和可能存在噪声的观察值建模为两个随机变量,这样的模型有助于更好地理解和处理标签噪声。例如,Lawrence和Schölkopf提出的方法使用Fisher判别器和期望最大化(EM)方法进行标签噪声建模。该方法被扩展用于多类别数据集和时序数据。
加权kNN: 一种基于加权k最近邻的方法使用每个训练示例的误标概率,将二进制标签替换为其期望值。然后,通过最大化预期值与加权kNN预测值之间的一致性来进行标签矫正。该方法通过L1正则化来防止将所有示例从两个类别中的一个声明为误标。
3)基于聚类的方法
该方法利用数据实例的分布中的潜在结构来解决分类问题。
一些方法使用聚类来估计每个标签的置信度,通过实例所在聚类的类别分布来提高标签的可靠性。这增加了对标签的鲁棒性,有助于应对标签噪声。
方法步骤:
-
无监督聚类: 使用无监督算法对实例进行聚类,不使用标签。这导致了具有先验概率 πk 的K个模型 pk(x) 的混合体。
-
概率密度建模: 将实例假定为遵循密度 p(x),其中 ryk 的系数通过最大似然方法进行学习。这提供了对实例分布的更准确的建模,有助于识别标签噪声。
-
分类: 利用无监督聚类的结果和有监督部分(通过 ryk 概率),计算条件概率P(Y=y∣X=x)。这使得模型能够在分类时考虑数据实例之间的结构。
El Gayar等人提出了一种类似的方法,将标签转换为软标签以反映标签的不确定性。首先,对训练实例进行模糊聚类,然后使用模糊成员资格估计每个群集对每个类别的成员资格。最后,使用实例属于的群集的类成员资格计算每个实例的模糊标签。实验证明,该方法相对于其他标签模糊化方法具有改进效果。
4)信任函数
在信任函数理论中,每个可能的类别子集都由一个信任度量来表征,该度量表示支持该类别子集的证据的数量。信任函数理论允许在不确定性的情况下对类别进行建模,包括主观和客观的不确定性。
-
信任度量: 每个类别子集都由一个信任度量(BMF)来表示,该度量量化了对该子集的信任。信任度量通常由专家提供,用于表达对类别的置信度。
-
主观和客观不确定性: 信任函数理论能够区分主观不确定性和客观不确定性。主观不确定性反映了专家对其判断的不确定性,而客观不确定性则反映了标签噪声等外在因素导致的不确定性。
-
改进标准机器学习方法: 信任函数理论可以用于修改标准的机器学习方法,如kNN分类器、神经网络、决策树、混合模型或Boosting。这种修改旨在引入对类别的信任信息,以提高模型对标签噪声的鲁棒性。
-
BMF的推断: 文献中提到了一些启发式方法,用于从数据中推断信任度量。这些方法涉及使用kNN方法和神经网络,通过考虑实例之间的距离和频率等信息,估计BMF。
-
Dempster规则: 在文献中,提到了使用Dempster规则将来自不同训练样本的BMF进行组合的方法。这使得可以在不同训练样本的信任信息之间进行合理的组合,以便在对新样本进行分类时更好地处理不确定性。
B、基于模型的方法
除了概率方法外,还开发了特定的策略来获得流行学习算法的标签噪声容忍变体,如支持向量机、神经网络和决策树。
1)SVM
SVM在存在标签噪声的情况下不具备鲁棒性,SVM对远离分类边界的错误标签实例非常敏感。 可以直接在SVM的学习算法中实现数据清理。例如,可以通过识别对应于具有很大对偶权重的实例来识别潜在的错误标签实例。一些方法允许在目标函数中不考虑一定数量的样本,或通过加权贡献每个训练样本来调整SVM。
引入鲁棒损失可以提高SVM对标签噪声的鲁棒性。还提到了其他有界、非凸的损失函数,如非凸损失函数和期望损失函数,这些函数可以用于类似的目的。
2)神经网络
为了降低标签噪声的影响,提出了一些感知机算法的变体。例如,λ-trick通过修改适应性标准,使已经被错误分类的实例的影响减小。另一个启发式方法是α-bound,它限制了已经被错误分类α次的样本的权重更新。
此外,描述了基于边际的感知机算法(PAM),其更新权重以确保实例的边际小于阈值τ。
3)决策树
由于在现实世界中,决策树需要在准确性和简洁性之间找到平衡,标签噪声会使过拟合问题变得更加严重。一些方法尝试在学习决策树时考虑这种平衡,例如CN2算法,该算法学习逻辑规则的析取范式,同时避免学习过于复杂的规则。
4)Boosting方法
针对AdaBoost对标签噪声容易过拟合问题,采取三个方法:
Boosting中的权重更新:为每个实例引入一个上界,将其限制为初始值;修改权重更新规则。
提前停止: 限制AdaBoost的迭代次数,以防止对标签噪声的过拟合。
结合Bagging和Boosting算法 (平滑): BB算法通过在子采样训练集上训练的多个分类器的预测进行聚合,提供了平滑效果。
5)基于粒子竞争的半监督学习
将数据集转换成图结构,其中实例是具有相似性边缘的节点。每个标记的节点与一个带有标签的粒子相关联。粒子通过遍历整个图,并与相同标签的粒子合作,标记未标记的实例,同时保持在它们所属节点的邻域内。关注被错误标记的粒子的行为:它们会被相邻实例的不同标签的粒子推开,从而防止错误标记的实例影响附近未标记实例的标签。
结论:
标签噪声的定义在他的特定应用领域中似乎更为相关。例如,如果专家可以提供有关参数值或条件分布形状的先验知识,则应使用概率方法。另一方面,如果标签噪声仅是很小的,那么标签噪声鲁棒方法就足够了。