Confident Learning: Estimating Uncertainty in Dataset Labels
Abstract
-
学习存在于数据环境中,但置信度概念通常侧重于模型预测,而不是标签质量。置信学习 (CL) 是一种以数据为中心的方法,它通过表征和识别数据集中的标签错误来关注标签质量,其依据是修剪噪声数据、使用概率阈值计数以估计噪声以及对示例进行排名以进行置信度训练的原则。虽然许多研究已经独立开发了这些原则,但在这里,我们将它们结合起来,基于类条件噪声过程的假设来直接估计噪声(给定)标签和未损坏(未知)标签之间的联合分布。这会产生一个广义的 CL,它可证明是一致的,并且在实验上表现良好。我们提出了 CL 准确发现标签错误的充分条件,并表明 CL 的性能超过了最近七种在 CIFAR 数据集上使用噪声标签进行学习的竞争方法。独特的是,CL 框架不与特定的数据模态或模型耦合(例如,我们使用 CL 在假定无错误的 MNIST 数据集中查找几个标签错误,并改进 Amazon Reviews 中文本数据的情绪分类)。我们还在 ImageNet 上使用 CL 来量化本体类重叠(例如,估计 645 张导弹图像被错误标记为其父类射弹),并通过在训练之前清理数据适度提高模型准确率(例如,对于 ResNet)。这些结果可以使用开源 cleanlab 框架复制 GitHub - cleanlab/cleanlab: The standard data-centric AI package for data quality and machine learning with messy, real-world data and labels.。
-
论文地址:[1911.00068] Confident Learning: Estimating Uncertainty in Dataset Labels (arxiv.org)
-
在实际工作中,你是否遇到过这样一个问题或痛点:无论是通过哪种方式获取的标注数据,数据标注质量可能不过关,存在一些错误?亦或者是数据标注的标准不统一、存在一些歧义?特别是badcase反馈回来,发现训练集标注的居然和badcase一样?为了快速迭代,大家是不是常常直接人工去清洗这些“脏数据”?。但数据规模上来了咋整?有没有一种方法能够自动找出哪些错误标注的样本呢?基于此,本文尝试提供一种可能的解决方案——置信学习。
- 这个概念来自一篇由MIT和Google联合提出的paper:《Confident Learning: Estimating Uncertainty in Dataset Labels 》。论文提出的置信学习(confident learning,CL)是一种新兴的、具有原则性的框架,以识别标签错误、表征标签噪声并应用于带噪学习(noisy label learning)。
-
置信学习主要包括3个部分:
-
Count:估计噪声标签和真实标签的联合分布,可以理解为 找到 可能是噪声的集合,如何判断是否可能为噪声 则是根据是否大于平均概率得到的,平均概率则是所有label 为class a 的平均概率。我们定义噪声标签为 ÿ ,即经过初始标注(也许是人工标注)、但可能存在错误的样本;定义真实标签为 y*,但事实上我们并不会获得真实标签,通常可通过交叉验证对真实标签进行估计。此外,定义样本总数为 n,类别总数为 m。为了估计联合分布,共需要4步:
-
step 1:交叉验证
- 首先需要通过对数据集集进行交叉验证计算第 i 样本在第 j个类别下的概率 P[i] [j];
- 然后计算每个人工标定类别 j下的平均概率 t[j]作为置信度阈值;
- 最后对于样本 i,其真实标签 y*为 j个类别中的最大概率 a r g m a x j P [ i ] [ j ] argmax_jP[i][j] argmaxjP[i][j],并且P[i]] [j]> t[j] ;
- 交叉验证:简单方法是训练三个(奇数且数量少)的模型进行投票这样比较硬的方法进行选择错误的数据。这个方法是交叉验证,最后得到一个结果就是图中的概率值,比如5个交叉验证,最后对5个模型的结果求平均值,得到概率,比较的soft。
-
step 2: 计算计数矩阵 C y ˉ , y ∗ C_{\bar y,y^*} Cyˉ,y∗ (类似于混淆矩阵)
-
step 3: 标定计数矩阵,目的就是为了让计数总和与人工标记的样本总数相同。
-
step 4: 估计噪声标签ÿ 和真实标签 y*的联合分布 Q y ˉ , y ∗ Q_{\bar y,y*} Qyˉ,y∗。
- 为什么要估计这个联合分布呢?其实这主要是为了下一步方便我们去clean噪声数据。此外,这个联合分布其实能充分反映真实世界中噪声(错误)标签和真实标签的分布,随着数据规模的扩大,这种估计方法与真实分布越接近。
-
-
Clean:找出并过滤掉错误样本,对于Count 阶段得到的 不可信集合中 以一定的策略进行可信度排序,然后根据顺序取出最不可信的样本。在得到噪声标签和真实标签的联合分布 Q y ˉ , y ∗ Q_{\bar y,y*} Qyˉ,y∗,论文共提出了5种方法过滤错误样本。
-
Re-training:过滤错误样本后,重新训练
- 根据Q修正loss权重
- 采取Co-Teaching框架:Co-teaching的基本假设是认为noisy label的loss要比clean label的要大,于是它并行地训练了两个神经网络A和B,在每一个Mini-batch训练的过程中,每一个神经网络把它认为loss比较小的样本,送给它其另外一个网络,这样不断进行迭代训练。
-
-
本文介绍了一种用来刻画noisy label、找出错误标注样本的方法——置信学习,是弱监督学习和带噪学习的一个分支。置信学习直接估计噪声标签和真实标签的联合分布,而不是修复噪声标签或者修改损失权重。置信学习开源包
cleanlab
可以很快速的帮你找出那些错误样本!可在分钟级别之内找出错误标注的样本。不需要超参数,只需使用交叉验证来获得样本外的预测概率。不需要做随机均匀的标签噪声的假设(这种假设在实践中通常不现实)。与模型无关,可以使用任意模型,不像众多带噪学习与模型和训练过程强耦合。
Introduction
-
在噪声标签和弱监督下学习的进展通常会引入新的模型或损失函数。这种以模型为中心的方法通常会解决真正的问题:哪些数据被错误标记了?然而,带有噪声标签的大型数据集变得越来越普遍。 示例涵盖著名的基准数据集,如 ImageNet 和 MS-COCO 到以人为中心的数据集,如电子健康记录 和教育数据 。这些数据集中的噪声标签的存在带来了两个问题。无论采用何种数据模态或模型,我们如何识别带有标签错误的示例以及如何在有噪声标签的情况下很好地学习?在这里,我们遵循以数据为中心的方法,从理论和实验上研究这一前提:使用噪声标签进行学习的关键在于准确而直接地表征数据中标签噪声的不确定性。
-
为解决数据集标签的不确定性,已经出现了大量可称为“置信学习”的工作,其中两个方面尤为突出。首先,Angluin 和 Laird (1988) 的分类噪声过程 (CNP) 提供了一个起始假设,即标签噪声是类条件性的,仅取决于潜在的真实类别,而不取决于数据。虽然也有例外,但这一假设被广泛使用,因为它对许多数据集来说都是合理的。例如,在 ImageNet 中,豹子被误标记为美洲虎的可能性比被误标记为浴缸的可能性更大。其次,可以有效地直接估计噪声(给定)标签和真实(未知)标签之间的联合分布(见图 1),这基于许多相关研究中使用的三种原则方法:
-
(a)修剪,搜索标签错误,通过损失重新加权进行软剪枝,避免迭代重新标记的收敛陷阱 -
-
(b)计数,在干净的数据上进行训练,避免因使用不完美的预测概率重新加权损失而导致学习模型权重中的错误传播,推广了开创性的工作
-
(c)对在训练期间使用的示例进行排序,以允许使用非规范化概率或决策边界距离进行学习,建立在众所周知的稳健性发现(Pagerank: Bringing order to the web)和curriculum learning的思想(Mentornet: Learning data-driven curriculum for very deep neural networks on corrupted labels)的基础上。
-
-
图 1:置信学习 (CL) 过程的一个例子。CL 使用置信联合分布 Cy;y ~ ∗ 和 Q^ ~y;y∗(Qy;y ~ ∗ 的估计值,即噪声观测标签 y~ 和未知真实标签 y ∗ 的联合分布)来查找带有标签错误的示例并生成干净的训练数据。
-
-
据我们所知,之前还没有一项研究彻底分析过噪声标签和未损坏标签之间联合分布的直接估计。在这里,我们汇集了这些原则性方法,以为此目的推广置信学习 (CL)。估计联合分布具有挑战性,因为它需要消除认知不确定性(模型预测概率)与随机不确定性(噪声标签)之间的歧义,但很有用,因为它的边际产生了文献中使用的重要统计数据,包括潜在噪声转换率 、未损坏标签的潜在先验 和逆噪声率 。虽然噪声率对于损失重加权很有用 ,但只有联合才能直接估计每对真实和噪声类的标签错误数量。在训练之前消除这些错误是使用噪声标签进行学习的有效方法 。联合还有助于发现数据集中的本体论问题以进行数据集管理,例如 ImageNet 为同一个 maillot 类别包含两个类别 。
-
本文基于修剪、计数和排序原则构建的广义 CL 是一系列与模型无关的理论和算法,用于表征、发现和学习标签错误。它使用预测概率和噪声标签来计数非规范化置信联合中的示例,估计联合分布,并修剪噪声数据,从而生成干净的数据作为输出。
-
本文对先前关于查找、理解和学习噪声标签的研究做出了两项重要贡献。首先,给出了一个证明,给出了现实的充分条件,在这些条件下 CL 可以准确地找到标签错误并准确估计噪声标签和真实标签的联合分布。其次,分享了实验数据,表明该 CL 算法在三个任务上具有实证表现 (a) 标签噪声估计、(b) 标签错误查找和 © 使用噪声标签进行学习,提高了清理后的 ImageNet 上的 ResNet 准确率,并且在 CIFAR 数据集上优于最近七种使用噪声标签进行学习的极具竞争力的方法。使用 CL 算法的实现可以重现所呈现的结果,这些算法作为 cleanlab Python 包开源。为了促进未来使用噪声标签进行数据清理和学习的研究,并提高新手的可访问性,cleanlab 是开源的并且有详尽的文档:https://github.com/cleanlab/cleanlab/
-
这些贡献首先从正式的问题规范和符号(第 2 节)开始介绍,然后定义用于 CL 的算法方法(第 3 节)并在理论上限制理想和嘈杂条件下的预期行为(第 4 节)。 然后在第 5 节中介绍 CIFAR、ImageNet、WebVision 和 MNIST 数据集上的实验基准,将 CL 性能与包括 INCV 、Mixup 、MentorNet 和 Co-Teaching 在内的各种高度竞争的方法的性能进行比较。相关工作(第 6 节)和结论性观察(第 7 节)结束了演讲。附录中提供了主要定理的扩展证明、算法细节和全面的性能比较数据。
CL Framework and Problem Set-up
-
在可能带有噪声标签的多类数据的背景下,让 [m] 表示 $ {1; 2; …; m} ,即 m 个唯一类标签的集合, ,即 m 个唯一类标签的集合, ,即m个唯一类标签的集合,X := (x; \bar y)^ n \in (\R^ d ; [m])^n$ 表示 n 个示例 x ∈ R d x \in \R^ d x∈Rd 的数据集,以及相关的观察到的噪声标签 y ˉ ∈ [ m ] \bar y\in [m] yˉ∈[m]。x 和 y~ 在 X 中耦合,表示清理会删除数据和标签。虽然许多相关工作解决了注释器标签可用的设置,但本文讨论了除了观察到的噪声标签之外没有可用注释信息的一般设置。
-
假设:我们假设对于每个示例,都存在一个潜在的真实标签 y ∗ 。在观察 y ˉ \bar y yˉ 之前,类条件分类噪声过程 将 y ∗ → y ˉ y ∗\rightarrow \bar y y∗→yˉ 映射,使得类 $ j \in [m]$ 中的每个标签都可能以概率 p ( y ˉ = i ∣ y ∗ = j ) p(\bar y=i|y ∗=j) p(yˉ=i∣y∗=j) 被独立地错误标记为类 $ i \in [m]$。该假设是合理的,并已在先前的工作中使用。
-
符号:符号总结在表 1 中。离散随机变量 ~y 采用可观察到的、有噪声的标签(可能翻转为不正确的类别),y∗ 采用潜在的、未损坏的标签。X 中具有噪声类标签 i 的示例子集表示为 X y ˉ = i X_{\bar y=i} Xyˉ=i ,即 X y ˉ = c o w X_{\bar y=cow} Xyˉ=cow 读作“具有类标签 cow 的示例”。符号 p ( y ˉ ; x ) p(\bar y; x) p(yˉ;x)(与 p ( y ˉ ∣ x ) p(\bar y|x) p(yˉ∣x) 相反)表达了我们的假设,即输入 x 是可观察到的并且没有错误。我们将噪声和潜在标签的离散联合概率表示为 p ( y ˉ ; y ∗ ) p(\bar y; y∗ ) p(yˉ;y∗),其中条件 p ( y ˉ ∣ y ∗ ) p(\bar y| y∗ ) p(yˉ∣y∗)和 p ( y ∗ ∣ y ˉ ) p( y*|\bar y ) p(y∗∣yˉ)表示标签翻转的概率。我们使用 p^ 表示预测概率。在矩阵表示法中,样本外预测概率的 n × m 矩阵为 P ^ k ; i : = p ^ ( y ˉ = i ; x k ; θ ) \hat P_{k;i} := \hat p(\bar y = i; x_k; θ) P^k;i:=p^(yˉ=i;xk;θ),潜在标签的先验为 Q y ∗ : = p ( y ∗ = i ) Q_{y ∗} := p(y ∗=i) Qy∗:=p(y∗=i);m × m 联合分布矩阵为 Q y ˉ ; y ∗ : = p ( y ˉ = i ; y ∗ = j ) Q_{\bar y;y ∗} := p(\bar y=i; y∗=j) Qyˉ;y∗:=p(yˉ=i;y∗=j);翻转率的 m × m 噪声转换矩阵(噪声通道)为 Q y ˉ ∣ y ∗ : = p ( y ˉ = i ∣ y ∗ = j ) Q_{\bar y|y ∗} := p(\bar y=i|y∗=j) Qyˉ∣y∗:=p(yˉ=i∣y∗=j);m × m 混合矩阵为 Q y ∗ ∣ y ˉ : = p ( y ∗ = i ∣ y ˉ = j ) Q_{y*|\bar y} := p(y*=i|\bar y=j) Qy∗∣yˉ:=p(y∗=i∣yˉ=j)。有时,我们将 p ^ ( y ˉ = i ; x ; θ ) \hat p(\bar y = i; x; θ) p^(yˉ=i;x;θ) 缩写为 p ^ x ; y ˉ = i \hat p_{x;\bar y=i} p^x;yˉ=i,其中 θ 表示模型参数。CL 不假设与 θ 相关的特定损失函数:CL 框架与模型无关。
-
-
表 1:置信学习中使用的符号。
-
-
目标:我们对类条件噪声过程的假设意味着标签噪声转换与数据无关,即 p ( y ˉ ∣ y ∗ ; x ) = p ( y ˉ ∣ y ∗ ) p(\bar y|y ∗ ; x) = p(\bar y|y ∗ ) p(yˉ∣y∗;x)=p(yˉ∣y∗)。为了表征类条件标签不确定性,必须估计 p ( y ˉ ∣ y ∗ ) 和 p ( y ∗ ) p(\bar y|y ∗ ) 和 p(y ∗ ) p(yˉ∣y∗)和p(y∗),即未损坏标签的潜在先验分布。与之前独立估计 p ( y ˉ ∣ y ∗ ) 和 p ( y ∗ ) p(\bar y|y ∗ ) 和 p(y ∗ ) p(yˉ∣y∗)和p(y∗) 的工作不同,我们通过直接估计标签噪声的联合分布 p(y; y ~ ∗ ) 来联合估计两者。我们的目标是将每个 p(y; y ~ ∗ ) 估计为一个矩阵 Qy;y ~ ∗,并使用 Qy;y ~ ∗ 在数据集 X 中查找所有标记错误的示例 x,其中 y ∗ 6= y~。这很难,因为它需要从内在标签噪声(随机不确定性)中消除模型误差(认知不确定性)的歧义,同时估计标签噪声的联合分布 ( Q y ˉ ; y ∗ ) (Q_{\bar y;y ∗} ) (Qyˉ;y∗),而无需事先了解潜在噪声转移矩阵 ( Q y ˉ ∣ y ∗ ) (Q_{\bar y|y ∗} ) (Qyˉ∣y∗)、真实标签的潜在先验分布(Qy ∗ )或任何潜在的真实标签(y∗)。
-
定义 1(稀疏度)。一种统计数据,用于量化标签噪声的特征形状,该特征形状由 ( Q y ˉ ∣ y ∗ ) (Q_{\bar y|y ∗} ) (Qyˉ∣y∗) 的非对角线中零的分数定义。高稀疏度量化了标签噪声的不均匀性,这在现实世界的数据集中很常见。例如,在 ImageNet 中,导弹被错误标记为射弹的概率很高,但被错误标记为羊毛或葡萄酒等大多数其他类别的概率接近于零。零稀疏度意味着 ( Q y ˉ ∣ y ∗ ) (Q_{\bar y|y ∗} ) (Qyˉ∣y∗)中的每个噪声率都非零。稀疏度为 1 意味着没有标签噪声,因为如果稀疏度 = 1,则 ( Q y ˉ ∣ y ∗ ) (Q_{\bar y|y ∗} ) (Qyˉ∣y∗) 的非对角线(封装类条件噪声率)必须全部为零。
-
定义 2(自信度)。某个模型 θ 预测示例 x 属于其给定标签 y~ 的概率,表示为 p ^ ( y ˉ = i ; x ∈ X y ˉ = i ; θ ) \hat p(\bar y=i; x\in X_{\bar y=i} ; θ) p^(yˉ=i;x∈Xyˉ=i;θ)。低自信度是标签错误的启发式可能性。
-
CL Methods
-
置信学习 (CL) 估计 (嘈杂的) 观测标签和 (真实的) 潜在标签之间的联合分布。CL 需要两个输入:(1) 样本外预测概率 P^k;i 和 (2) 嘈杂标签向量 y~k。对于所有 x k ∈ X x_k \in X xk∈X,这两个输入通过索引 k 链接起来。除了 y ˉ = y ∗ \bar y = y ∗ yˉ=y∗ 时,没有任何真实标签 y ∗ 可用,但我们不知道什么时候是这种情况。
-
用作 CL 输入的样本外预测概率 P^k;i 是使用模型 θ 预先计算的(例如交叉验证):那么,θ 如何适应 CL 框架?先前的工作通常通过直接修改模型或训练损失函数来学习嘈杂的标签,从而限制模型类别。相反,CL 通过使用模型输出 P^k;i 将模型和数据清理过程解耦,这样就可以使用任何产生映射 θ : x → p ^ ( y ˉ = i ; x k ; θ ) θ : x \rightarrow \hat p(\bar y=i; x_k; θ) θ:x→p^(yˉ=i;xk;θ) 的模型(例如具有 softmax 输出的神经网络、朴素贝叶斯、逻辑回归等)。然而,θ 会影响预测概率 p ^ ( y ˉ = i ; x k ; θ ) \hat p(\bar y=i; x_k; θ) p^(yˉ=i;xk;θ),进而影响 CL 的性能。因此,在第 4 节中,我们研究了 CL 准确发现标签错误的充分条件,即使 p^(y~=i; xk; θ) 是错误的。任何模型θ都可以用于CL提供的干净数据的最终训练。
-
CL 识别现有数据集中的噪声标签,以改进噪声标签的学习。 主要程序(见图 1)包括三个步骤:(1)估计 ^Qy;y ~ ∗ 以表征类条件标签噪声(第 3.1 节),(2)过滤掉噪声示例(第 3.2 节),以及(3)在消除错误的情况下进行训练,通过类权重 Q ^ y ∗ [ i ] Q ^ y ; y ∗ [ i ] [ i ] \frac{\hat Qy∗ [i]} {\hat Qy;y ~ ∗ [i][i]} Q^y;y ∗[i][i]Q^y∗[i] 对每个类 $i 2\in [m] $重新加权示例。在本节中,我们定义这三个步骤并讨论它们的预期结果。
Count: Characterize and Find Label Errors using the Confident Joint
-
为了估计噪声标签 y~ 和真实标签 Q y ˉ ; y ∗ Q\bar y;y ∗ Qyˉ;y∗ 的联合分布,我们计算可能属于另一个类别的示例,并校准这些计数,使它们的总和等于每个类别中给定的噪声标签计数 jXy~=i j。计数被捕获在置信联合 C y ˉ ; y ∗ ∈ Z ≥ 0 m × m C\bar y;y ∗ \in Z_{≥0} ^{m×m} Cyˉ;y∗∈Z≥0m×m 中,这是 CL 中的统计数据结构,用于直接查找标签错误。Cy;y ~ ∗ 的对角线条目计数正确标签,非对角线条目捕获不对称标签错误计数。 例如, C y ˉ = 3 ; y ∗ = 1 = 10 C_{\bar y=3;y∗=1}=10 Cyˉ=3;y∗=1=10 读作“十个示例标记为 3,但应该标记为 1。”
-
在本节中,我们首先引入置信联合 Cy;y ~ ∗ 来划分和计算标签错误。其次,我们展示如何使用 Cy;y ~ ∗ 来估计 Qy;y ~ ∗ 并表征数据集 X 中的标签噪声。最后,我们提供了一个相关的基线 Cconfusion,并与 Cy;y ~ ∗ 和 CL 进行了比较,考虑了它的假设和缺点(例如类别不平衡)。CL 使用阈值和碰撞处理克服了这些缺点,从而实现了对类别不平衡和跨类别预测概率分布异质性的鲁棒性。
-
置信联合 Cy;y ~ ∗ Cy;y ~ ∗ 通过将 X 划分为估计箱 ^Xy~=i;y∗=j ,来估计 Xy~=i;y∗=j ,即带有噪声标签 i 但实际上具有真实标签 j 的样本集。当 ^Xy~=i;y∗=j = Xy~=i;y∗=j 时,Cy;y ~ ∗ 恰好可以找到标签错误(证明见第 4 节)。^Xy~=i;y∗=j(请注意 ^X 上方的帽子,表示 ^Xy~=i;y∗=j 是 Xy~=i;y∗=j 的估计值)是标记为 y~=i 的样本集 x,其 p^(y~ = j; x; θ) 足够大,可能属于类 y ∗=j,由每个类的阈值 tj 确定。正式地,置信联合的定义是
-
-
阈值 tj 是每个类别的预期(平均)自信度。
-
t j = 1 ∣ X y ˉ = j ∣ ∑ x ∈ X y ˉ = y p ^ ( y ˉ = j ; x , θ ) t_j=\frac{1}{|X_{\bar y=j}|}\sum_{x\in X_{\bar y=y}}\hat p(\bar y=j;x,\theta) tj=∣Xyˉ=j∣1x∈Xyˉ=y∑p^(yˉ=j;x,θ)
-
-
与现有技术不同,现有技术在假设真实标签为 ~y ∗ k = arg maxi2[m] p^(y~=i; xk; θ) 的情况下估计标签误差,该公式中的阈值提高了 CL 不确定性量化对 (1) 异构类概率分布和 (2) 类别不平衡的鲁棒性。例如,如果标记为 i 的示例由于模型对类 i 过度自信而倾向于具有更高的概率,则 ti 将成比例地变大;如果某个其他类 j 倾向于低概率,则 tj 将变小。这些阈值使我们能够在类别不平衡的情况下猜测 y ∗,这与现有技术不同,现有技术可能因为使用了 arg max 而对 y ∗ 猜测过度自信的类 。我们在第 4 节中研究了模型 θ 产生的概率需要“有多好”才能使这种方法发挥作用。为了理解公式 1,请考虑一个简化的公式:
-
X ˉ y ˉ = i ; y ∗ = j ( s i m p l e ) = { x ∈ X y ˉ = i : p ^ ( y = j ; x ; θ ) ≥ t j } \bar X ^{(simple)} _{\bar y=i;y∗=j} = \{x \in X_{\bar y=i} :\hat p(~y = j; x; θ) ≥ tj\} Xˉyˉ=i;y∗=j(simple)={x∈Xyˉ=i:p^( y=j;x;θ)≥tj}
-
但是,当示例 x 被自信地计入多个 ^Xy~=i;y∗=j 箱时,简化的公式会引入标签冲突。碰撞仅发生在 Cy;y ~ ∗ 的 y ∗ 维度上,因为 y~ 是给定的。我们通过选择 y^ ∗ arg maxj2[m] p^(y~ = j; x; θ)(只要 jfk2[m] : ^p(~y=k; x2Xy~=i ; θ) ≥ tkgj > 1(碰撞)来处理等式 1 右侧的碰撞。在 softmax 实践中,温度较高(概率更均匀)的 softmax 输出有时会发生碰撞,温度较低时很少发生碰撞,温度为零时不会发生碰撞(独热预测概率)。
-
-
公式 1 中 Cy;y ~ ∗ 的定义在某些情况下具有一些很好的特性。首先,如果一个示例在各个类别中的预测概率较低(接近均匀),那么它将不会被计入 Cy;y ~ ∗ 中的任何类别,因此 Cy;y ~ ∗ 可能对纯噪声或数据集中不存在的外来类别的示例具有鲁棒性。其次,Cy;y ~ ∗ 是直观的 - tj 体现了这样的直觉:属于类 j 的概率高于类 j 中示例的预期概率的示例可能属于类 j。第三,阈值允许灵活性 - 例如,在 tj 中可以使用第 90 个百分位数代替平均值来以更高的置信度找到错误;尽管具有灵活性,但我们仍使用平均值,因为我们表明(在第 4 节中)此公式可以在各种设置中准确地找到标签错误,我们将其他公式(如基于百分位数的阈值)的研究留待将来研究。
-
复杂性:我们在附录中提供了方程 2、1 和 3 的算法实现。 给定预测概率 P^k;i 和噪声标签 y~,对于 m 个类中的 n 个训练示例,这些需要 O(m2 + nm) 存储和算术运算来计算 Cy;y ~ ∗ 。估计联合 ^Qy;y ~ ∗ 。给定置信联合 Cy;y ~ ∗ ,我们估计 Qy;y ~ ∗ 为
-
-
分子校准 P j ^Qy~=i;y∗=j = jXi j= P i2[m] jXi j; 8i2[m],使行和与观察到的边际相匹配。分母校准 P i;j ^Qy~=i;y∗=j = 1,使分布总和为 1。
-
-
标签噪声:表征利用观察到的先验 Qy~=i = jXi j = P i2[m] jXi j 和 Qy;y ~ ∗ 的边际,我们估计潜在先验为 ^Qy ∗=j := P i ^Qy~=i;y∗=j ; 8j2[m];噪声转换矩阵(噪声通道)为 ^Qy~=ijy ∗=j := Q^ ~y=i;y∗=j= ^Qy ∗=j ; 8i2[m];混合矩阵 为 ^Qy ∗=jjy~=i := Q^> ~y=j;y∗=i =Qy~=i ; 8i2[m]。只要 ^Qy;y ~ ∗ u Qy;y ~ ∗ ,这些估计量中的每一个都同样一致(我们在第 4 节中证明了实际条件下的情况确实如此)。先前的方法通过直接平均容易出错的预测概率来计算噪声转移矩阵 ,而 CL 通过根据 Cy;y ~ ∗ 的计数估计噪声率与预测概率相差一步——这些计数是根据预测概率是否大于阈值计算的,仅依赖于预测概率的相对排名,而不是其确切值。此功能有助于置信学习对不完善概率估计的稳健性。
-
基线方法 Cconfusion 为了将我们对 Cy;y ~ ∗ 性能的理解置于先前工作的背景下,我们将 Cy;y ~ ∗ 与 Cconfusion 进行了比较,Cconfusion 是基于高性能 INCV 方法的单次迭代的基线 。Cconfusion 在所有示例 xk 中形成一个 m × m 的混淆矩阵 jy~k = i; y∗ k = jj,假设从噪声标签训练的模型预测可以发现真实标签,即 Cconfusion 只是假设 y ∗ k = arg maxi2[m] p^(y~=i; xk; θ)。这种基线方法在经验上表现合理(Sec. 5)并且是无噪声预测概率的一致估计量(Thm. 1),但当每个类的概率分布不相似时会失败(Thm. 2),例如类别不平衡,或者预测概率过于自信 。
-
Cy;y ~ ∗ (置信联合) 与 Cconfusion (基线) 的比较为了克服 Cconfusion 对类别不平衡和分布异质性的敏感性,置信联合 Cy;y ~ ∗ 使用每类阈值 作为校准形式 。此外,我们证明,与 Cconfusion 不同,置信联合 (Eqn. 1) 可以准确地找到标签错误,并在具有噪声预测概率的更现实的设置中一致地估计 Qy;y ~ ∗ (参见第 4 节,Thm. 2)。
Rank and Prune: Data Cleaning
-
在估计 Cy;y ~ ∗ 和 Qy;y ~ ∗(第 3.1 节)之后,可以使用任何排序和剪枝方法来清理数据。这种模块化属性允许 CL 使用可解释和可说明的排序方法来查找标签错误,而之前的工作通常将噪声转移矩阵的估计与训练损失结合起来 或使用损失重加权将每个示例的标签置信度与训练损失结合起来。在本文中,我们研究并评估了五种用于查找标签错误的排序和剪枝方法,分为两种方法。我们在第 4 节中对方法 2:Cy;y ~ ∗ 进行了理论分析,并在第 5 节中对所有方法进行了实证评估。
-
方法 1:使用 Cy;y ~ ∗ 的非对角线来估计 X^ ~y=i;y∗=j 我们直接使用 Cy;y ~ ∗ 的非对角线中计数的示例集来估计标签误差。
-
CL 基线 1:Cconfusion。对于所有 xk2X,将标签误差估计为布尔向量 y~k =6 arg maxj2[m] p^(y~ = j; xk; θ),其中 true 表示标签误差,false 表示干净数据。这与使用 Cconfusion 的非对角线相同,类似于 INCV 的单次迭代 。
-
CL 方法 2:Cy;y ~ ∗ 。根据 Cy;y ~ ∗ 的非对角线估计标签误差为 fx 2 X^ ~y=i;y∗=j : i 6= jg 。
-
方法 2:使用 n · ^Qy;y ~ ∗ 估计 j ^Xy~=i;y∗=j j,按概率排序进行修剪 这些方法计算 n· ^Qy;y ~ ∗ 估计 j ^Xy~=i;y∗=j j,即每个分区中的标签错误数。它们要么对 j ^Xy~=i;y∗=j j 的 y ∗ 维度求和,以估计并删除每个类中的错误数(按类修剪),要么对每个非对角线分区进行修剪(按噪声率修剪)。选择删除哪些示例是通过基于预测概率对示例进行排序来做出的。
-
CL 方法 3:按类修剪 (PBC)。对于每个类 i 2 [m],选择自信心最低的 n · P j2[m]:j6=i ^Qy~=i;y∗=j [i] 示例 p^(~y = i; x 2 Xi) 。
-
CL 方法 4:按噪声率修剪 (PBNR)。对于 ^Qy~=i;y∗=j ; i 6= j 中的每个非对角线条目,选择 n · ^Qy~=i;y∗=j 个示例 x2Xy~=i,其最大边距为 p^x;y~=j − p^x;y~=i 。 此边距改编自 的归一化边距。
-
CL 方法 5:C+NR。通过逐元素“与”即集合交集将前两种方法结合起来。如果 PBC 和 PBNR 两种方法都修剪了该示例,则修剪该示例。
-
使用噪声标签进行学习为了在训练中消除错误,我们通过对每个类 i2[m] 的损失重新加权 1 ^p(~y=ijy ∗=i) = ^Qy∗ [i] ^Qy;y ~ ∗ [i][i] 来解释缺失数据,其中除以 Q^ ~y;y∗ [i][i] 会将干净的训练数据的数量标准化,而 Q^ y ∗ [i] 会重新标准化为类 i 中的潜在示例数量。CL 会发现错误,但不规定使用干净数据的特定训练程序。从理论上讲,CL 不需要超参数来查找标签错误。在实践中,交叉验证可能会引入一个超参数:k 倍。 但是,在我们的论文中,使用交叉验证的实验中 k = 4 是固定的。
-
使用哪种 CL 方法? 提出了五种方法来清理数据。默认情况下,我们使用 CL:Cy;y ~ ∗,因为它完全符合 Thm. 2 的条件,并且实验效果良好(参见表 4)。一旦发现标签错误,我们就会观察到按归一化边际对标签错误进行排序:p^(~y=i; x; θ) − maxj6=i p^(~y=j; x; θ) 效果很好。
Theory
- 在本节中,我们将研究以下充分条件:(1) 置信联合准确发现标签错误,(2) ^Qy;y ~ ∗ 是 Qy;y ~ ∗ 的一致估计量。我们首先分析无噪声 ^px;y~=j 的 CL,然后评估更现实的条件,最终在 Thm. 2 中证明 (1) 和 (2) 每个示例的预测概率中都有噪声。证明在附录中(参见 A 节)。作为符号提醒,p^x;y~=i 是 p^(~y=i; x; θ) 的简写。
- 在每个定理的陈述中,我们使用 ^Qy;y ~ ∗ u Qy;y ~ ∗ ,即近似相等,来解释使用基于离散计数的 Cy;y ~ ∗ 估计实值 Qy;y ~ ∗ 的精度误差。 例如,如果噪声率为 0:39,但数据集中只有 5 个该类示例,则通过消除误差得到的最接近的可能估计值为 2=5 = 0:4 u 0:39。因此,^Qy;y ~ ∗ 在技术上是 Qy;y ~ ∗ 的一致估计量,这仅仅是因为离散化误差,否则所有等式都是精确的。自始至终,我们假设 X 包含每个类中的至少一个示例。
Noiseless Predicted Probabilities
-
我们从理想条件和一个非显而易见的引理开始,当 p^x;y~=i 为理想时,该引理给出了阈值 ti 的闭式表达式。如果 p^x;y~=i 上没有某些条件,就无法区分标签噪声和模型噪声。
-
条件 1(理想)。如果 8xk2Xy ∗=j ; i2[m]; j2[m],则模型 θ 的预测概率 p^(y~; x; θ) 是理想的,我们有 p^(y~=i; xk 2 Xy ∗=j ; θ) = p ∗ (y~=ijy ∗=y ∗ k ) = p ∗ (y~=ijy ∗=j)。 最终的等式来自类条件噪声过程假设。理想条件意味着无误差的预测概率:它们与对应于 x 的 y ∗ 标签的噪声率相匹配。我们使用 p ∗ x;y~=i 作为简写。
-
引理 1 (理想阈值)。对于噪声数据集 X := (x; y~) n 2 (R d ; [m])n 和模型 θ,如果 p^(~y; x; θ) 是理想的,则 8i2[m]; ti = P j2[m] p(~y = ijy ∗=j)p(y ∗=jjy~ = i)。
-
这种形式的阈值在直观上是合理的:当 i = j 时,总和的贡献表示正确标记的概率,而当 i ≤ j 时,这些项给出错误标记的概率 p(y~ = ijy ∗ = j),由错误标记被纠正的概率 p(y ∗ = jjy~ = i) 加权。在理想条件下使用引理 1,我们在 Thm 1 中证明。 自信学习可以准确地找到标签错误,并且当 Qy~jy ∗ 的每个对角线条目最大化其行和列时,Q^ ~y;y∗ 是 Qy;y ~ ∗ 的一致估计量。证明取决于 Cy;y ~ ∗ 的构造可以消除碰撞这一事实。
-
定理 1(精确标签错误)。对于一个噪声数据集,X := (x; y~) n2(R d ; [m])n 和模型 θ:x!p^(y~),如果 p^(y~; x; θ) 是理想的,并且 Qy~jy ∗ 的每个对角线条目都最大化其行和列,则 X^ ~y=i;y∗=j = Xy~=i;y∗=j 且 ^Qy;y ~ ∗ u Qy;y ~ ∗ (Qy;y ~ ∗ 的一致性估计量)。
-
虽然 Thm. 1 是一个合理的健全性检查,但请注意,如果 Qy~jy ∗ 的对角线最大化其行和列,则 Cconfusion 使用的 y ∗ arg maxj p^(y=ijy ∗=i; x) 很容易满足 Thm. 1。我们强调这一点是因为 Cconfusion 是与先前工作最相关的 CL 变体 。接下来,我们考虑由现实世界设置激发的宽松条件,其中 Cy;y ~ ∗ 准确地找到标签错误(^Xy~=i;y∗=j = Xy~=i;y∗=j)并一致地估计噪声和真实标签的联合分布(^Qy;y ~ ∗ u Qy;y ~ ∗),但 Cconfusion 却没有。
Noisy Predicted Probabilities
-
考虑到解决类别不平衡和异质类别概率分布的重要性,我们考虑每个类别的噪声线性组合。在这里,我们用 j 索引 p^x;y~=j,以匹配 Cy;y ~ ∗ 构造中的比较 p^(~y=j; x; θ) ≥ tj(参见公式 1)。
-
条件 2(按类衍射)。如果预测概率 s.t 中存在类条件误差的线性组合,则 p^x;y~=j 按类衍射。p^x;y~=j = (1) j p ∗ x;y~=j + (2) j 其中 (1) j ; (2) j 2 R 和 j 可以是任意分布。这放宽了理想条件,噪声与神经网络相关,已知神经网络在类条件上过于自信 。
-
推论 1.1(每类鲁棒性)。对于一个噪声数据集,X := (x; y~) n2(R d ; [m])n 和模型 θ:x!p^(y~),如果 p^x;y~=j 是每类衍射而没有标签碰撞,并且 Qy~jy ∗ 的每个对角线条目都最大化其行,则 X^ ~y=i;y∗=j = Xy~=i;y∗=j 且 ^Qy;y ~ ∗ u Qy;y ~ ∗ 。
-
Cor. 1.1 向我们展示了在置信学习中 Cy;y ~ ∗(计算 ^Xy~=i;y∗=j )对任何线性组合的类内误差概率都具有鲁棒性。但 Cconfusion 并非如此,因为 Cor. 1.1 不再要求 Qy~jy ∗ 的对角线最大化其列,就像之前在 Thm. 1 中一样:为了直观起见,考虑一个极端的类内衍射情况,其中只有一个类的概率全部急剧增加。然后,依赖于 y~ ∗ k arg maxi2[m] p^(y~=ijy ∗=j; xk) 的 Cconfusion 将只对所有 y ∗ 计算该类,使得 Cconfusion 中除一列之外的所有条目都为零,即 Cconfusion 不能计算任何其他列中的条目,所以 ^Xy~=i;y∗=j 6= Xy~=i;y∗=j 。相比之下,对于 Cy;y ~ ∗ ,一个类别的增加的概率将被类别阈值减去,从而重新规范化矩阵的列,使得 Cy;y ~ ∗ 满足 Cor. 1.1,使用阈值来对分布转移和类别不平衡保持稳健。
-
Cor. 1.1 仅允许对概率进行 m 次更改,理想条件下只有 m2 个唯一概率,而在现实条件下,容易出错的模型可能会输出 n × m 个唯一概率。接下来,在 Thm. 2 中,我们将研究一个合理的充分条件,其中 CL 对每个示例和类的错误概率都具有鲁棒性。
-
条件 3(每个示例衍射)。如果 8j2[m]; 8x2X,则 p^x;y~=j 是每个示例衍射的,我们有错误,因为 p^x;y~=j = p ∗ x;y~=j + x;y~=j 其中
-
-
其中 j = Ex2X x;y~=j 且 U 表示均匀分布(我们在附录中讨论了更一般的情况)。
-
-
定理 2(每个示例的稳健性)。对于一个噪声数据集,X := (x; y~) n 2 (R d ; [m])n 和模型 θ:x!p^(y~),如果 p^x;y~=j 是每个示例衍射而没有标签碰撞,并且 Qy~jy ∗ 的每个对角线条目都最大化其行,则 X^ ~y=i;y∗=j u Xy~=i;y∗=j 且 ^Qy;y ~ ∗ u Qy;y ~ ∗ 。
-
在 Thm. 2 中,我们观察到,如果每个示例的预测概率都在理想概率和阈值的残差范围内,则 CL 能够准确识别标签错误并一致估计 Qy;y ~ ∗ 。直观地说,如果每当 p ∗ x;y~=j ≥ tj 时 p^x;y~=j ≥ tj ,且每当 p ∗ x;y~=j < tj 时 p^x;y~=j < tj ,那么无论 p^x;y~=j 中的错误如何,CL 都能准确地发现标签错误。例如,考虑一张被错误标记为狐狸的图像 xk,但实际上是一只狗,其中 tf ox = 0:6、p ∗ (y~=fox; x 2 Xy ∗=dog; θ) = 0:2、tdog = 0:8 和 p ∗ (y~=dog; x 2 Xy ∗=dog; θ) = 0:9。那么,只要 −0:4 ≤ x;f ox < 0:4 且 −0:1 < x;dog ≤ 0:1,CL 就会推测 y ∗ k = dog,而不是 fox,即使 y~k = fox 是已知的。我们在第 5.2 节中通过实证研究证实了这一理论结果。
-
Thm. 2 通过统计数据 Qy;y ~ ∗ 解决了潜在标签噪声的认知不确定性,同时考虑了固有错误预测概率的随机不确定性。
Experiments
- 本节在 CIFAR和 ImageNet基准上对 CL 进行了实证验证。第 5.1 节介绍了 CL 在 CIFAR 中噪声样本上的表现,其中假定真实标签已知。第 5.2 节展示了在原始、未受干扰的 MNIST、ImageNet、WebVision 和 Amazon Reviews 数据集中发现的真实标签错误,并展示了使用 CL 提供的清理数据训练 ImageNet 的性能优势。除非另有说明,否则我们使用四倍交叉验证和 ResNet 架构计算样本外预测概率 P^k;j。
Asymmetric Label Noise on CIFAR-10 dataset
-
我们根据三个标准评估 CL:(a)联合估计(图 2)、(b)准确发现标签错误(表 4)和(c)带有噪声标签的准确学习(表 2)。
-
-
图 2:我们对 CIFAR 的噪声标签和真实标签的联合分布的估计,其中标签噪声为 40%,稀疏度为 60%。观察 (a) 和 (b) 之间的相似性 (RSME = :004) 以及 © 中每个条目的低绝对误差。概率按比例放大了 100 倍。
-
上面我们介绍完成置信学习的3个步骤,本小节我们来看看这种置信学习框架在实践中效果如何?在正式介绍之前,我们首先对稀疏率进行定义:稀疏率为联合分布矩阵、非对角单元中0所占的比率,这意味着真实世界中,总有一些样本不会被轻易错标为某些类别,如「老虎」图片不会被轻易错标为「汽车」。
-
-
噪声生成 :遵循先前的研究,我们验证了 CL 在常用的非对称标签噪声上的性能,其中无错误/干净数据的标签被随机翻转,以类似于现实世界的噪声。我们根据随机生成的 Qy~jy ∗ 噪声转移矩阵,将一些训练示例的标签非均匀地随机切换到不同的类别,从干净数据中生成噪声数据。我们生成具有不同迹的 Qy~jy ∗ 矩阵,以针对不同的噪声水平运行实验。我们实验中使用的噪声矩阵在附录图 S3 中。我们在 CIFAR-10 训练数据集中生成噪声,涵盖不同的稀疏度、Qy;y ~ ∗ 中为零的非对角线比例以及错误标签(噪声)的百分比。我们在未改变的测试集上评估所有模型。
-
基线和我们的方法在表 2 中,我们将 CL 性能与最近七种高度竞争的方法以及在 CIFAR-10 上带有噪声标签的多类学习的 vanilla 基线进行了比较,其中包括 INCV,它通过多次交叉验证迭代找到干净数据,然后在干净集上进行训练,SCE-loss(对称交叉熵)添加反向交叉熵项进行损失校正,Mixup 线性组合示例和标签以增强数据,MentorNet 使用课程学习避免训练中的噪声数据,Co-Teaching 同时训练两个模型以从干净数据中学习,S-Model 使用额外的 softmax 层来模拟训练期间的噪声,以及使用损失重加权的 Reed ;以及表示带有噪声标签的原始训练的 Baseline 模型。
-
-
表 2:在 CIFAR-10 中,置信学习与近期方法在噪声标签下的测试准确率(%)。CL 方法报告的分数是十次试验的平均值,标准差如表 3 所示。CL 方法估计标签错误,将其删除,然后在清理后的数据上进行训练。其他方法的性能从低稀疏度(例如 0.0)下降到高稀疏度(例如 0.6),而 CL 方法在稀疏度范围内都很稳健,如通过比较两个列红色突出显示的单元格所示。以数据为中心的 AI 方法(CL、INCV、Mixup)优于以模型为中心的方法(SCE-Loss、MentorNet、Co-Teaching、S-Model)。
-
上图给出了CIFAR-10中不同噪声情况和稀疏性情况下,置信学习与其他SOTA方法的比较。例如在40%的噪声率下,置信学习比之前SOTA方法Mentornet的准确率平均提高34%。
-
-
训练设置:所有模型均使用 ResNet-50 进行训练,通用设置:学习率 0.1(epoch [0,150)、0.01(epoch [150,250)、0.001(epoch [250,350));动量 0.9;权重衰减 0.0001(INCV、SCE-loss 和 Co-Teaching 除外),它们使用其官方 GitHub 代码进行训练。设置从 kuangliu/pytorchcifar GitHub 【GitHub - kuangliu/pytorch-cifar at 5e3f99093dfe7392fcbbc0b39582e4b0d3a64511】开源代码复制而来,未手动调整。我们报告 Mixup 的超参数 α 2 f1;2;4;8g 和 MentorNet 的超参数 p 2 f0:7;0:8;0:9g 的最高分数。为了与 Co-Teaching、INCV 和 MentorNet 进行公平比较,我们还使用遗忘率 = 0:5 × [噪声分数] 的共同教学方法进行训练,并报告每种方法的两个训练模型的最大准确率。我们观察到,在训练期间删除每个时期的最后一个部分批次可以提高稳定性,因为可以避免在某些情况下从单个嘈杂示例中更新权重。对于表 2 的每一列,训练所有模型时使用完全相同的噪声标签。对于我们的方法,我们固定其超参数,即不同噪声水平的交叉验证的折叠数,并且不在验证集上对其进行调整。
-
对于每种 CL 方法、稀疏性和噪声设置,我们在表 2 中报告了平均准确率,通过改变用于训练的神经网络的随机种子和初始权重,在十次试验中取平均值。为了提高可读性,我们在表 3 中报告了标准差。对于表 2 中的每一列,表 3 中相应的标准差明显小于 CL 方法和基线方法之间的性能差异。值得注意的是,所有标准差都明显(约 10 倍)小于每种设置中表现最佳的 CL 方法和基线方法之间的平均性能差异,在随机权重初始化上取平均值。由于其他一些方法难以重现一致的结果,因此仅报告了 CL 方法的标准差。
-
-
表 3:表 2 中报告的 CL 方法得分与平均得分(超过十次试验)相关的标准差(% 单位)。每次试验使用不同的随机种子和网络权重初始化。标准差不超过 2%。
-
-
我们还评估了 CL 在查找标签错误方面的准确性。在表 4 中,我们比较了 CL 方法在噪声和稀疏性方面的五种变体,并报告了它们在恢复真实标签方面的精度、召回率和 F1。结果表明,CL 能够以较高的召回率和合理的 F1 找到标签错误。
-
-
表 4:CL 方法在 CIFAR-10 中查找标签错误的平均准确度、F1、精确度和召回率测量值,取十次试验的平均值。
-
-
对稀疏性的鲁棒性:表 2 报告了在噪声量和稀疏性方面带有噪声标签的学习的 CIFAR 测试准确率,其中前五行报告了我们的 CL 方法。 如图所示,与所有噪声和稀疏性设置中的现有技术相比,CL 始终表现良好。我们观察到高噪声和/或高稀疏性制度下的显着改善。最简单的 CL 方法 CL:Cconfusion 的表现与 INCV 相似,与现有技术相当,在所有噪声和稀疏性设置中,Cy;y ~ ∗ 的表现最佳。结果验证了直接建模联合噪声分布的好处,并表明我们的方法与极具竞争力的稳健学习方法相比具有竞争力。
-
为了理解 CL 为何表现良好,我们在附录的表 S1 中使用 RMSE 评估了噪声和稀疏性下的 CL 联合估计,并在附录的图 S1 中估计了 Q^ ~y;y∗。对于 20% 和 40% 的噪声设置,平均而言,CL 相对于所有稀疏性的真实联合 Qy;y ~ ∗ 实现了 :004 的 RMSE。最简单的 CL 变体 Cconfusion 通过方程 (3) 进行归一化以获得 Q^confusion,实现了稍差的 RMSE :006。
-
在图 2 中,我们可视化了 CIFAR 上高噪声(40%)、高稀疏度(60%)条件下 CL 联合估计的质量。子图 (a) 表明潜在真实联合 Qy;y ~ ∗ 具有高稀疏度,仅在六种噪声率中噪声就超过一半。然而,从子图 (b) 和 © 可以看出,CL 仍然估计了 Qy;y ~ ∗ 中 80% 以上的条目,绝对差异在 :005 之内。结果从经验上证实了第 4 节的理论界限。
-
在表 S2(见附录)中,我们报告了实现表 2 中 INCV 和置信学习准确度所需的训练时间。如表 S2 所示,INCV 训练时间超过 20 小时。相比之下,CL 在同一台机器上花费的时间不到三个小时:一个小时用于交叉验证,不到一分钟用于查找错误,一个小时用于重新训练。
Real-world Label Errors in ILSVRC12 ImageNet Train Dataset
-
Russakovsky 等人 认为 ImageNet 中存在标签错误是由于人为错误造成的,但据我们所知,很少有人尝试在 ILSVRC 2012 训练集中查找标签错误、对其进行表征或在不进行这些错误的情况下重新训练。在这里,我们考虑每个应用程序。 我们使用 ResNet18 和 ResNet50 架构,采用标准设置:0.1 初始学习率,90 个训练时期,动量为 0.9。
-
用于数据集管理的本体发现由于 ImageNet 是一个独热类数据集,因此这些类必须互斥。以 ImageNet 为例,我们在表 5 中观察到了类级别的本体问题的自动发现,通过列出 Cy;y ~ ∗ 中 10 个最大的非对角线条目来实现。例如,maillot 类出现了两次,存在 is-a 关系(如 bathtub is a tub),错误用词(如 projectile 和 missile),以及由具有多个定义的单词(如 corn 和 ear)引起的意外问题。 我们包括基线 Cconfusion,以表明虽然 Cconfusion 发现的标签错误比 Cy;y ~ ∗ 少,但它们对本体问题的排名相似。
-
-
表 5:用于本体问题发现的 ImageNet 训练集中置信联合 Cy;y ~ ∗ 中的十个最大非对角线条目。CL 检测到的重复类以红色突出显示。
-
-
查找标签问题: 图 3 显示了使用 CL: PBNR 和 ResNet50 发现的前 16 个标签问题,按归一化边距排序。我们使用术语“问题与错误”,因为 CL 发现的示例由多标签图像、本体问题和实际标签错误的混合组成。每个示例在图中用彩色边框表示。为了在没有真实标签的情况下评估 CL,我们对 500 个错误的随机样本(使用 CL: PBNR 识别)进行了小规模人工验证,发现 58% 是多标签、本体问题或错误。ImageNet 数据通常被认为是无错误的,但我们的尝试是首次在 ImageNet 训练图像中自动识别标签错误。
-
-
图 3:使用 CL: PBNR 在 2012 ILSVRC ImageNet 训练集中识别出的标签问题前 32 个(按归一化边距自动排序)。错误用红色框标出。本体问题用绿色框标出。多标签图像用蓝色框标出。
-
-
在 ImageNet 上训练 ResNet 并移除标签问题 通过提供经过清理的数据进行训练,我们探索了如何使用 CL 在用较少数据进行训练时在 ImageNet 上实现类似或更好的验证准确率。为了了解性能差异,我们在逐渐减少的数据上训练 ResNet-18(图 4),移除 CL 识别出的 ImageNet 训练集标签问题的 20%、40%、……、100%,每次都从头开始训练。图 4 描绘了使用来自 CL 的清理数据进行训练与删除均匀随机示例时的 top-1 验证准确率,针对 (a) 整个 ILSVRC 验证集、(b) Cy;y ~ ∗ 中对角线最小的 20 个(最嘈杂)类、© Cy;y ~ ∗ 中对角线最小的猎狐犬类,以及 (d) maillot 类,一个已知的错误类,在 ImageNet 中意外重复,如之前发布 ,并经过验证(参见表 5 第 7 行)。为了便于阅读,我们绘制了每个点上表现最佳的 CL 方法,并在附录中提供了每种 CL 方法的单独性能(参见图 S2)。对于单个类别的情况,如图 4(c)和 4(d)所示,我们使用模型的 top-1 预测来显示召回率,因此与(a)和(b)相比,报告的分类准确率的差异相对较大。
-
-
图 4:在训练之前删除使用置信学习发现的 20%、40%、…、100% 的标签问题(蓝色实线)与在训练之前删除的随机示例(橙色虚线)相比,ResNet-18 在 ImageNet(ILSVRC2012)上的验证准确率。每个子图从左到右读取,因为在训练之前逐渐删除了更多 CL 识别的问题(由 x 轴显示)。半透明的黑色虚线垂直条测量使用 CL 与随机示例删除示例时的改进。所有子图中的每个点都代表从头开始对 ResNet-18 进行独立训练。图上的每个点都表示 5 次试验的平均准确率(不同的随机种子和权重初始化)。带帽的彩色垂直条表示标准偏差。
-
-
我们观察到,CL 在几乎所有实验中都优于随机移除基线,并且在 1,000 和 20 个类设置的五次试验中平均提高了无数据移除基线准确率(子图最左边的点表示),如图 4(a)和 4(b)所示。为了验证结果不是特定于模型的,我们使用 ResNet-50 重复每个实验进行一次试验(图 5),发现 CL 同样优于随机移除基线
-
-
图 5:使用 ResNet-50 复制图 4 中的实验。每个子图中的每个点都表示单次试验的准确性(由于计算限制)。误差线(以彩色垂直线表示)是通过 Clopper-Pearson 间隔估计子图 (a) 和 (b) 的。有关更多信息,请参见图 4 的标题。
-
-
这些结果表明,CL 可以将现实世界中嘈杂的训练数据集的大小减少 10%,同时仍能适度提高验证准确率(图 4a、4b、5a、5b)并显着提高错误 maillot 类的验证准确率(图 4d、5d)。虽然我们发现 CL 方法可以通过过滤掉一部分训练示例来改进干净训练数据上的标准 ImageNet 训练,但这一结果的意义不在于改进的幅度,而在于在使用 ImageNet 进行训练时探索清理方法的依据,通常假设 ImageNet 具有正确的标签。 虽然 ImageNet 中的许多标签问题都是由于多标签示例造成的 ,但接下来我们考虑一个具有不相交类的数据集。
Amazon Reviews Dataset: CL using logistic regression on noisy text data
-
Amazon Reviews 数据集是一份文本评论语料库,其中包含来自 Amazon 客户的 1 星到 5 星评级,用于对情绪分析模型进行基准测试。我们研究该数据集的 5 核 (9.9 GB) 版本 - 所有用户和商品至少有 5 条评论的数据子集。2 星和 4 星评论由于与 1 星和 5 星评论存在歧义而被删除。如果留在数据集中,2 星和 4 星评论可能会增加错误计数,使 CL 看起来比实际更有效。
-
本小节有三个目标。首先,我们在本节的实验中使用逻辑回归分类器(而不是深度学习模型)来评估非深度学习方法的 CL。其次,我们试图了解 CL 如何改善文本数据标签空间中的噪声(而不是文本数据本身中的噪声,例如拼写错误)的学习。为了实现这一目标,我们考虑非空评论,其中“有帮助的”赞成票多于反对票——结果数据集包含大约一千万条评论。最后,定理 2 表明 CL 对类别不平衡具有鲁棒性,但 ImageNet 和 CIFAR-10 等数据集通过构造来平衡:然而,亚马逊评论数据集自然且极度不平衡——给定标签(即嘈杂的先验)的分布为:9% 1 星评论:12% 3 星评论,79% 5 星评论。我们试图了解 CL 是否能够发现标签错误,并在这种类别不平衡的环境中提高带有噪声标签的学习性能。
-
训练设置为了证明非深度学习方法在 CL 框架下可以有效地发现标签问题,我们使用多项逻辑回归分类器来查找标签错误和使用噪声标签进行学习。开源 fastText 库 中的内置 SGD 优化器用于设置:初始学习率 = 0.1、嵌入维度 = 100 和 n-gram = 3)。通过 5 倍交叉验证获得样本外预测概率。对于训练期间的输入,评论表示为预训练的三元组、单词级 fastText 嵌入的平均值 。
-
查找标签问题表 6 显示了使用置信学习的 CL: C+NR 变体自动发现的 Amazon Reviews 数据集中的标签问题示例。我们定性地观察到,CL 在此背景下识别的大多数标签问题都是合理的,但讽刺性评论除外,这些评论似乎无法通过词袋方法很好地建模。
-
-
表 6:使用 CL:C+NR 的 Amazon Reviews 文本数据集中 CL 识别的前 20 个标签问题,按归一化边距排序。使用在 fastText 嵌入上训练的逻辑回归分类器来获取样本外预测概率。大多数错误都是合理的,但讽刺性评论除外,因为这些评论很难通过词袋模型进行建模。
-
-
使用嘈杂标签/弱监督进行学习我们比较了 CL 方法和标准训练基线(在表 7 中表示为基线),前者从训练集中修剪错误,随后提供干净的训练数据,后者在原始未清理的训练数据集上进行训练。用于查找标签错误的相同训练设置(参见第 5.3 小节)用于获得表 7 中报告的所有方法的所有分数。为了进行公平的比较,表 7 中的所有平均准确度均在同一个保留测试集上报告,该测试集是通过将亚马逊评论数据集分成训练集和测试集而创建的,这样每十分之一的示例都放在一个测试集中,剩余的数据可用于训练(亚马逊评论 5 核数据集没有提供明确的训练集和测试集)。
-
-
表 7:消融研究(改变训练集大小、测试分割和时期)比较 CL 方法与标准训练基线的测试准确率 (%),用于将嘈杂的真实世界亚马逊评论文本数据分类为 1 星、3 星或 5 星。使用简单的多项逻辑回归分类器。报告了五次试验的平均 top-1 准确率和标准偏差。 在“修剪”列中显示了 CL 方法在训练之前删除的估计标签错误数量。随着额外的训练时期,基线训练开始过度拟合噪声,而 CL 测试准确率继续提高(参见 N=1000K,时期:50)。
-
-
Amazon Reviews 数据集天生就带有噪声,但据估计,数据集中的噪声比例不到 4% ,这使得研究为训练提供干净数据的好处变得具有挑战性。为了在不添加合成噪声的情况下增加噪声标签的百分比,我们从训练集中抽取了 100 万个训练示例,方法是结合所有五种 CL 方法从原始训练数据(244K 个示例)中识别出的标签问题,并对剩余“更干净”的训练数据进行均匀随机子采样(766k 个示例)。此过程将训练集中的标签噪声百分比增加到 24%(估计值),而且重要的是,它不会增加测试集中噪声标签的百分比——大量测试集标签噪声已被证明会严重影响基准排名 。
-
为了减轻因选择训练集大小、测试集划分和训练的 epoch 数量而引起的偏差,我们进行了表 7 所示的消融研究。对于训练集大小,我们使用 100 万个示例和 50 万个示例的训练集大小重复每个实验。对于测试集划分,我们通过删除训练/测试划分中的每 11 个示例(而不是 10 个)来重复所有实验(参见表 7 中的第一列),从而最小化两个测试集之间的重叠(9%)。对于每个训练的 epoch 数量,我们用 5、20 和 50 个 epoch 重复每个实验。我们省略(N = 500K,Epoch:50),因为 5 个 epoch 之后没有发生任何学习。
-
表 7 中报告的每个分数都是五次试验的平均值和标准差:每次试验都会改变随机选择的训练数据子集和用于训练的逻辑回归模型的初始权重。
-
表 7 中的结果揭示了三个值得注意的观察结果。首先,在所有情况下,所有 CL 方法的表现都远远优于基线方法。其次,即使近一半的训练数据被修剪,CL 方法的表现仍然优于基线方法(表 7,参见 N=500K)。 最后,对于训练集大小 N = 1000K,随着额外训练周期的增加,基线训练开始过度拟合噪声,而 CL 测试准确率继续提高(参见 N=1000K,周期:50),这表明 CL 在训练期间对过度拟合噪声具有鲁棒性。表 7 中的结果表明 CL 在文本数据背景下对逻辑回归的噪声监督中是有效的。
Real-world Label Errors in Other Datasets
-
我们使用 CL 在由预处理的黑白手写数字组成的所谓“无错误” MNIST 数据集中查找标签错误,以及在由从在线图像存储库收集的彩色图像组成并使用搜索查询作为噪声标签的噪声标记 WebVision 数据集中查找标签错误。
-
令我们惊讶的是,原始的、未受干扰的 MNIST 数据集(主要假设没有错误)包含明显的标签错误,图 6 中用红色框突出显示。为了找到 MNIST 中的标签错误,我们对一个简单的 2 层 CNN 进行了 50 个时期的预训练,然后使用交叉验证来获得 P^k;i,即训练集的样本外预测概率。CL:PBNR 用于识别错误。图 6 显示了按自信心排序的前 24 个标签错误。为了验证,训练标签错误的指标以灰色显示。
-
-
图 6:使用 CL 识别的原始、未受干扰的 MNIST 训练数据集中的标签错误:PBNR。这些是 CL 发现的前 24 个错误,按从左到右、从上到下的顺序排列,按自信心增加的顺序排列,用青色表示为 conf。预测的 arg max ^p(y~ = k; x; θ) 标签为绿色。 明显的错误为红色。在数万项研究中,该数据集被认为是“无错误的”。
-
-
为了在 WebVision 中查找标签错误,我们使用了预训练模型来获取 P^k;i,观察到 CL 的两个实际优势:(1)预训练模型可用于在样本外获取 P^k;i,而不是交叉验证;(2)这使得 CL 速度更快。例如,在笔记本电脑上使用预训练的 ResNext 模型(该模型从未见过嘈杂的 WebVision 训练集)查找 WebVision 中的标签错误需要三分钟,该模型包含超过一百万张图像和 1,000 个类别。我们使用 CL:Cy;y ~ ∗ 方法查找标签错误并按归一化边距排序错误。CL 发现的 WebVision 标签错误示例如图 7 所示。
-
-
图 7:使用 CL: Cy;y ~ ∗ 在 WebVision 训练集中识别出的前 32 个标签问题。使用在 ImageNet 上预先训练的模型获得样本外预测概率,完全避免了训练。错误用红色框出。模棱两可的情况或错误用黑色框出。 标签错误按归一化边距自动排序。
-
Related work
-
我们首先讨论有关置信学习的先前研究,然后回顾 CL 与噪声估计和稳健学习的关系。
-
Confident learning 我们的成果建立在大量被称为“自信学习”的工作之上。 Elkan 和 Forman 率先提出了计数方法来估计二元分类的假阳性和假阴性率。我们将计数原则扩展到多类设置。为了提高对预测概率和类别不平衡中的认知误差的鲁棒性,Elkan 和 Noto 引入了阈值,但需要未损坏的正标签。CL 将阈值的使用推广到多类噪声标签。CL 还会在训练期间重新加权损失,以调整删除数据的先验。这一选择建立在形成性工作的基础上,这些工作使用损失重新加权来证明具有噪声标签的学习具有等效的经验风险最小化。最近,Han 等人 提出了一种经验深度自监督学习方法,通过使用神经网络的嵌入层来避免概率。相比之下,CL 是非迭代的并且具有理论基础。Lipton 等人 使用基于混淆矩阵和交叉验证的方法来估计标签噪声。然而,与 CL 不同,前者假设的标签偏移形式不如类条件噪声那么普遍。Huang 等人 证明了首先发现标签错误然后在干净数据上进行训练的经验有效性,但该研究仅评估了均匀(对称)和成对标签噪声——CL 为这些经验发现提供了理论依据,以证明更广泛的非对称和类条件标签噪声。
-
理论:一种无模型、无数据的方法 使用噪声标签的理论分析通常假设一类受限的模型或数据,以消除模型噪声和标签噪声之间的歧义。 例如,Shen 和 Sanghavi 为在比 CL 更一般的环境中学习噪声标签提供了理论保证,其中包括对抗性示例和噪声数据,但他们的发现仅限于广义线性模型。 CL 理论与模型和数据集无关,而是限制了示例级噪声的大小。 在形成性相关方法中,Xu 等人 证明使用损失函数 − log (j det(Qy;y ~ ∗ ))j 可以为任何模型和数据集进行噪声稳健训练,并通过高性能经验结果进一步证明这一点。与置信学习类似,他们的方法取决于 Qy;y ~ ∗ 的使用,但是,他们要求 Qy~jy ∗ 是可逆的,并使用 Cconfusion 估计 Qy;y ~ ∗,这对类别不平衡和异构类别概率分布很敏感(参见第 3.1 节)。在第 4 节中,我们展示了 Thm. 2 中的充分条件,其中 Cy;y ~ ∗ 准确地找到标签错误,而不管每个类的概率分布如何。
-
不确定性量化和标签噪声估计:许多形成性研究开发了使用收敛标准 、正向无标记学习 和预测概率比 估计噪声率的解决方案,但仅限于二元分类。其他人证明了具有噪声标签的二元学习具有等效经验风险 ,假设噪声率已知,但这在实践中很少是真的。与这些二分类方法不同,CL 在多类设置中估计标签不确定性,其中先前的工作通常分为五类:(1)理论贡献 ,(2)标签噪声鲁棒性的损失修改 ,(3)深度学习和特定于模型的方法 ,(4)通过多名工作者众包标签 ,(5)因式分解、蒸馏 和归因 方法,以及其他方法。与这些方法不同,CL 在实际条件下直接提供了一致的估计量,用于精确估计噪声标签和真实标签的联合分布。
-
标签噪声稳健学习:除了上述噪声估计方法之外,大量研究还调查了在噪声数据集上训练模型。噪声稳健学习对于深度学习非常重要,因为在噪声标签上训练的现代神经网络在干净的验证数据上泛化能力较差 。噪声稳健学习的一个显著趋势是使用对称标签噪声进行基准测试,其中标签被均匀翻转。然而,现实世界数据集中的噪声非常不均匀,而且通常很稀疏。例如,在 ImageNet 中,导弹很可能被错误标记为射弹,但被错误标记为羊毛、牛或葡萄酒等大多数其他类别的概率几乎为零。为了近似真实世界的噪声,越来越多的研究使用损失或标签校正 、每个示例的损失重新加权 、共同教学 、半监督学习 、对称交叉熵 和半监督学习 等来研究非对称噪声。这些方法通过在训练期间引入新颖的新模型或对损失函数进行有见地的修改来发挥作用。 CL 采用与损失无关的方法,而是专注于通过直接估计噪声标签和真实标签的联合分布来生成用于训练的干净数据。
-
INCV 方法与置信学习的比较: INCV 算法 和置信学习都估计干净的数据、使用交叉验证,并使用混淆矩阵的某些方面来处理 ML 工作流中的标签错误。鉴于这些相似之处,我们讨论了置信学习和 INCV 之间的四个主要区别。
- 首先,使用 Cconfusion 置信学习基线的迭代版本发现 INCV 错误:任何给定标签与其 argmax 预测不同的示例都被视为标签错误。这种方法虽然有效(见表 2),但无法正确计算类别不平衡的错误,或者当模型对某些类别比其他类别更自信(平均概率更大或更小)时的错误,如第 4 节所述。为了解释预测概率中的这种类别级偏差并实现稳健性,置信学习在估计置信联合时使用理论支持的(见第 4 节)阈值。
- 其次,CL 的主要贡献是在假定无错误的基准(例如 ImageNet 和 MNIST)中发现标签错误,而 INCV 则强调使用噪声标签进行学习的经验结果。
- 第三,在每次 INCV 训练迭代中,都会进行 2 倍交叉验证。INCV 的迭代性质使训练速度变慢(参见附录表 S2)并且在训练期间使用的数据更少。与 INCV 不同,置信学习不是迭代的。在置信学习中,交叉验证概率仅预先计算一次,从中直接估计噪声和真实标签的联合分布,用于识别要通过单次重新训练使用的干净数据。我们证明这种方法在实验上无需迭代即可有效(见表 2)。
- 最后,置信学习是模块化的。用于训练、查找标签错误和对标签错误进行排序以进行删除的 CL 方法是独立的。在 INCV 中,该过程是迭代的,所有三个步骤都绑定在一个循环过程中。 INCV 的单次迭代相当于本文中基准测试的 Cconfusion 基线。
Conclusion and Future Work
- 遵循置信学习的原则,我们开发了一种新方法来估计标签噪声的联合分布,并阐明了这样做的好处的理论和实验见解。我们在多个数据集、数据模式和模型架构中展示了在高噪声和稀疏情况下的准确不确定性量化。 我们通过经验评估了三个标准:(1) 通过估计标签噪声的联合分布来量化不确定性,(2) 发现标签错误,以及 (3) 在 CIFAR-10 上使用嘈杂标签进行学习,并发现 CL 方法在这三个方面都优于最近的现有技术。
- 这些发现强调了置信学习的实用性,发现在 ImageNet、Amazon Reviews、MNIST 和其他数据集中存在大量预先存在的标签问题,并通过在清理过的数据集上进行训练来提高深度神经网络等学习模型的性能。置信学习促使人们进一步了解数据集不确定性估计、清理训练和测试集的方法,以及识别数据集管理的本体和标签问题的方法。未来的方向包括在更多数据集上验证 CL 方法,例如 OpenML 基准、多模态自我中心通信 (EgoCom) 基准 和现实的噪声标签基准 CNWL ;使用其他非神经网络模型(如随机森林和 XGBoost)评估 CL 方法;检查其他阈值函数公式;检查测试集中的标签错误及其对大规模机器学习基准的影响;将 CL 标签错误查找与伪标签和/或课程学习相结合,以在训练期间动态提供干净的数据;并进一步探索 CL 方法的迭代和/或基于回归的扩展。