论文地址
[1912.05170v1] Image Classification with Deep Learning in the Presence of Noisy Labels: A Survey (arxiv.org)https://arxiv.org/abs/1912.05170v1
目录
Abstract
Introduction
Preliminaries
Problem Statement
Label Noise Models
Sources of Label Noise
Methodologies
Noise Model Based Methods
Noisy Channel 噪声信道
Label Noise Cleaning 噪声清洗
Sample Choosing 样本选择
Sample Importance Weighting 样本重要性赋权
Labeler Quality Assessment 标签机质量评估
Noise Model Free Methods
Robust Losses 鲁棒性损失函数
Meta Learning 元学习
Multiple-Instance Learning 多实例学习
Semi-Supervised Learning 半监督学习
Regularizers 正则化
Ensemble Methods 集成方法
Others 其他
Dataset and Noise Generation
Datasets and Test Set 数据集和测试集
Adding Synthetic Label Noise 添加合成标签噪声
Conlusion
用于进行图像分类的神经网络需要大量的标记数据来进行适当的训练。但是,由于分类的困难和标记过程的高代价,使得标签噪声是数据集中普遍存在的问题。
众所周知,深度网络对标签噪声具有一定的鲁棒性,但它们倾向于过拟合数据,这使它们容易对噪声进行记忆,甚至是完全随机的噪声也是如此。因此,为了有效地训练深度神经网络,必须考虑标签噪声的存在,并开发相应的对抗算法来消除其负面影响。
本文的目的是在提出这些算法的同时,根据它们的相似性对它们进行分类。
尽管强大的模型会具有令人印象深刻的泛化能力,但研究表明,它们能够记忆完全随机的噪声。如何避免记忆噪声,是一个重要的挑战。
这里我们将噪声分为两种,即特征噪声和标签噪声。特征噪声对应观测到的数据特征的破坏,而标签噪声则是标签从其真实类别标签的变化。
一种特征噪声,将图像原有的特征加以破坏 一种标签噪声,将图像的类别加以变化两种噪声类型均可能会导致性能的下降,但是标签噪声往往被认为是更有害的。标签对每个数据都是唯一的,而数据的特性是多重的,每个特性的重要性是不同的,标签总是对神经网络训练有很大的影响。
事实上,监督学习需要过多的带标签数据是一个主要的缺点,因为它需要一个昂贵的数据集收集和标记过程。当前,数据收集和标记的过程往往借助于搜索引擎和网络,也可以通过众包来完成。这样的做法导致数据的收集和标记过程都会产生噪声。
本文是关于围绕标签噪声深度学习的分类方法的全面调查。
记无噪声数据集 ,有噪声数据集
参考集,是一个无噪声的子集。 最终数据集用表示,则可分为两种。
标签向量在二元分类任务中,是二进制变量,在多分类任务中,则是一个单热向量。
对于多标记的数据,在唯一的情况下,一个实例可以有多个。如果一个实例包含多个对象,y则可以代表多个类。
随机噪声是完全随机的,既不依赖实例的特征,也不依赖它的类别。如果存在一个给定的转移概率矩阵,那么标签将依据矩阵改变它的真实类别。
一个噪声率为0.4的对称噪声转移概率矩阵(混淆矩阵)依赖噪声 噪声与实例无关,但依赖于实例的类别。这意味着来自特定类的数据更有可能被错误标记。
依赖噪声同时依赖于和。在依赖的情况下,来自特定类的对象更有可能被错误标记。依赖则意味着错标的几率可能会根据数据特征而改变。
提高分类性能的方法目前可分为两类:基于噪声模型的方法和非基于噪声模型的方法。
基于噪声模型的方法旨在为噪声建立一个噪声的模型,并用这个模型提供的信息来训练分类器, 以达到良好的鲁棒性。
非基于噪声模型的方法旨在设计一个更为通用的算法来克服噪声带来的负面影响。
通过对噪声转移矩阵建模,提取数据样本的真实分类概率,并将其送入分类器进行噪声鲁棒训练。
噪声信道是模型预测和噪声标签之间的映射。
噪声可以被建模为基础分类器上的噪声信道在这类方法中,一个常见的问题是可扩展性,因为增加类的数量需要在噪声转移矩阵中估计更多的参数。这可以通过只允许在最可能的节点或预定义节点之间连接来避免。
噪声信道的建模方法可以大致分为三种:
处理噪声标签的一种简单方法是去除带有可疑标签的样本,或将其噪声标签修正为与真实类别相对应的类别。这可以在训练数据的预处理阶段完成,但这类方法通常解决了从带有噪声标签的样本中区分有信息的硬样本的困难。
硬样本:Hard Sample,是相对于Easy Sample而言的。两种样本均是干净的,但是分类器(神经网络)往往更容易学习到Easy Sample的特征和信息,对于Hard Sample则比较难以学习。
根据对参考集的需要,可将这类方法分为使用参考集和不使用参考集。
使用参考集:如果存在一个干净的数据子集,该子集既有噪声标签又有经过验证的真标签,则可以使用在该数据集上训练的网络重新标记噪声标签。
不使用参考集:
克服标签噪声的一种广泛使用的方法是控制进入到分类器的输入流。引导网络选择正确的实例进行训练,可以帮助分类器在有噪声标签的情况下更好的学习。由于这些方法在现有系统之外操作,因此它们更容易作为附加组件附加到现有系统中。
Self Consistency 自我一致性:通过检查标签与网络预测的一致性,可以选择下一个待训练的样本
Curriculum Learning 课程学习:从简单的样本开始,经过较难的样本来指导训练
Multiple Classifiers 多分类器:使用两个分类器互相帮助,选择下一批数据进行训练。这不同于教师-学生的方法,因为没有一个网络监督对方,但他们更愿意互相帮助,这可以提供鲁棒性。
Active Learning 激励学习:对整个数据集进行正确的注释可能代价高昂,因此可以使用主动学习方法只标记关键实例
根据估计的噪声水平为实例赋权,可以使训练更加有效。这样做的效果是强调更清晰的实例,以便更好地更新模型权重。
一种基于元学习为样本赋权的算法流程图样本赋权的方法有
多标记数据集的存在可能有几个原因。每个标签者可能有不同的专业知识,他们的标签通常相互矛盾。众包数据或数据集中常见的情况之一就是,在如医学成像等领域,需要高水平的专业知识。因此,建模和使用标签器特性可以显著提高性能。在这种设置中,有两个未知数,即标签器噪声转移矩阵和真实标签。目前研究的方法有:
如果分类器在有噪声和无噪声的数据中学习,两者达到相同的分类精度,则称损失函数具有噪声鲁棒性。
本节旨在设计损失函数,使噪声不会降低分类器性能 。然而,即使对于鲁棒损失函数,噪声也会严重影响性能。某些非凸损失函数,如0-1损失,比常用的凸损失具有更大的噪声容忍度。
一些研究证明了在均匀非均匀噪声和非均匀噪声风险最小化下容忍噪声的充分条件。
如果一个损失函数是对称的,这意味着它的分量之和等于一个常数,噪声水平低于一个阈值,在均匀噪声下,它是噪声鲁棒的。
经验表明,在给定的情况下,没有一个标准的凸损失函数具有噪声鲁棒性,而0-1的损失具有噪声鲁棒性。
然而,0-1损失是非凸的,不可微的,因此一些研究也提出了0-1损失的替代损失,这仍然是噪声敏感的。
在其他情况下,我们还有以下方法使得损失函数达到鲁棒性
虽然网络能够自主学习复杂的功能,但仍然存在许多手工设计的参数,如网络结构、超参数、优化算法等。元学习的目的是消除这些必要,不仅学习任务所需的复杂功能,而且学习“学习”本身。目前的研究有:
数据被分为“包”或“簇”。在一包数据中,有一个为正例则该包为正。一个包的数据输入网络,但只产生一个输出。目前研究的方法有:
由于噪声只存在于标签中,而不存在于特征中,因此可以去除带有噪声实例的标签,并以半监督的方式对网络进行训练。
众所周知,正则化可以防止DNN过度拟合噪声标签。
有研究提出了一种复杂性度量来理解网络是否开始过度拟合。其结果表明,学习包括两个步骤:
防止过拟合的关键是在第二步之前停止学习。
局部内在维数(LID)可用于测量训练模型的复杂性,并在其开始过拟合前停止。
用于测试在存在标签噪声的情况下的算法性能的基准数据集可分为两个子类别:
Name | Image count | Class count |
Datesets with Clean Annotation | ||
MNIST | 70K | 10 |
Fashion-MNIST | 70K | 10 |
Cifar10 | 60K | 10 |
Cifar100 | 60K | 100 |
SVHN | 630K | 10 |
ImageNet | 1.2M | 1000 |
MS-COCO | 320K | 80 |
OpenImages | 9M | 6012 |
Datesets with Noisy Annotation | ||
Clothing1M | 1M | 14 |
Food101N | 310K | 101 |
WebVision | 2.4M | 1000 |
YFCC100M | 100M | 5400 |
Y-Dependent Noise
Y−依赖噪声可以用混淆矩阵表示,其中项表示实例的标签从第类翻转到第类的概率。
XY-Dependent Noise
人工创建这种XY-依赖噪声比之前的要复杂,因为需要考虑每个样本的特征向量。最简单的方法是使用人工注释器来选择样本,但这既昂贵又缺乏扩展性。一种特别的方法是使用预训练网络,直接对给定的数据或来自相似但不同域的数据集进行训练,提取决策边界。
在这篇论文中,为了从真实的数据集中获得理想的性能,标签噪声是一个重要的障碍使处理标签噪音成为通过自我持续学习系统的重要一步。 方法可以细分为两大类:基于噪声模型的方法和无噪声模型的方法。