小工具知识网

当前位置: 首页 > 行业知识 > 《Decoupling Representation and Classifier for Long-Tailed Recognition》阅读笔记

行业知识

《Decoupling Representation and Classifier for Long-Tailed Recognition》阅读笔记

2026-10-20 09:46:48 来源:互联网转载

论文标题

《Decoupling Representation and Classifier for Long-Tailed Recognition》

用于长尾识别的解耦表示和分类器

作者

Bingyi Kang、Saining Xie、Marcus Rohrbach、Zhicheng Yan、 Albert Gordo、Jiashi Feng 和 Yannis Kalantidis

来自 Facebook AI 和 新加坡国立大学

初读

摘要

  • 视觉世界的长尾分布对基于深度学习的分类模型如何处理类不平衡问题提出了巨大的挑战。现有的解决方案通常涉及类平衡策略(class-balancing strategies),

    • 例如通过损失重加权、数据重采样,或者从头部类别到尾部类别的迁移学习,但它们大多数遵循共同学习表示和分类器的方案。
    • 在这项工作中,我们**将学习过程解耦(decouple)为表示学习和分类(representation learning and classification),并系统地探索不同的平衡策略如何影响长尾识别。**研究结果令人惊讶:

      • 数据不平衡在学习高质量表示时可能不是一个问题;

      • 通过最简单的实例平衡(自然)采样学习的表示,也可以通过仅调整分类器来实现强大的长尾识别能力。

      • 我们进行了广泛的实验,并在常见的长尾基准测试上,如 ImageNet-LT、Places-LT 和 iNaturalist,取得了新的最先进性能,展示了通过使用一种直接的方法解耦表示和分类,可以超越精心设计的损失、采样策略,甚至是带有记忆的复杂模块。

        结论

        • 在这项工作中,我们探索了多种用于长尾识别的学习方案,并将同时学习表示和分类器与多种简单的解耦方法进行了比较。
        • 通过广泛的研究,我们发现尽管在同时学习表示和分类器时采样策略很重要,但实例平衡采样提供了更具有泛化性的表示,这些表示在适当地重新平衡分类器后,无需精心设计的损失或记忆单元,就能实现最先进的性能。
        • 我们在三个长尾基准测试上设定了新的最先进性能,并相信我们的发现不仅有助于更深入地理解长尾识别任务,而且可以为未来的工作提供灵感。

          再读

          Section 1 Introduction

          • 背景介绍:

            视觉识别研究在过去几年中取得了快速进展,这主要得益于深度卷积神经网络(CNNs)的使用和大型图像数据集,尤其是 ImageNet 挑战赛。这类数据集通常在训练集中每个对象/类的实例数量上是人为平衡的。然而,视觉现象遵循长尾分布,许多标准方法无法正确建模,导致准确度显著下降。受此启发,最近出现了一些工作,试图研究长尾识别,即在每个类的实例数量高度变化并遵循长尾分布的环境中进行识别。

          • 长尾学习的常见方向:

            在学习长尾数据时,一个常见的挑战是实例丰富(或头部)类主导了训练过程。学到的分类模型往往在这些类上表现更好,而对于实例稀少(或尾部)类的性能则显著较差。

            • 为了解决这个问题,并提高所有类的性能,可以重新采样数据或设计特定的损失函数,以更好地促进不平衡数据的学习。
            • 另一个方向是通过从头部类别转移知识来增强尾部类别的识别性能。然而,现有方法的共同信念是,设计适当的采样策略、损失,甚至是更复杂的模型,对于学习长尾识别的高质量表示是有用的。
            • 问题与改进:

              • 大多数上述方法因此是联合学习用于识别的分类器和数据表示。然而,这种联合学习方案使得长尾识别能力的实现方式不明确——是由于学习了更好的表示,还是通过移动分类器决策边界更好地处理了数据不平衡?
              • 为了回答这个问题,我们后退一步,将长尾识别解耦为表示学习和分类。
                • 在学习表示时,模型暴露于训练实例并通过不同的采样策略或损失进行训练。
                • 对于分类,在学到的表示之上,模型通过各种分类器识别长尾类别。
                • 我们在联合和解耦学习方案下评估了各种采样和分类器训练策略对于长尾识别的性能。
                • 具体策略:

                  • 具体来说,我们首先使用不同的采样策略训练模型来学习表示,包括标准的基于实例的采样(standard instance-based sampling)、类别平衡采样(class-balanced sampling)以及它们的混合。
                  • 接下来,我们在学到的表示之上研究三种不同的基本方法来获得具有平衡决策边界的分类器。它们分别是:
                    1. 以类别平衡方式重新训练参数化线性分类器(即重新采样(re-sampling));
                    2. 非参数最近类均值分类器,它根据训练集中最接近的特定于类的平均表示来对数据进行分类;
                    3. 归一化分类器权重,它直接调整权重大小以实现更平衡,添加一个温度来调节归一化过程。
                  • 实验:

                    • 我们进行了广泛的实验,以比较上述解耦学习方案的实例与传统的联合训练分类器和表示的方案。我们还与最近精心设计且更复杂的模型进行了比较,包括使用记忆的方法(例如,OLTR (Liu et al., 2019))以及更复杂的损失(Cui et al., 2019)。通过对 ImageNet-LT、Places-LT 和iNaturalist 这三个长尾数据集的广泛研究,
                    • 我们得到了以下有趣的观察结果:
                      • 我们发现,解耦表示学习和分类的结果令人惊讶,挑战了对长尾识别的常见信念:实例平衡采样学习到了最佳且最具有泛化性的表示。
                      • 在长尾识别中,重新调整在表示学习中由联合学习的分类器指定的决策边界是有利的:我们的实验表明,这可以通过用类别平衡采样重新训练分类器来实现,或者通过简单但有效的分类器权重归一化来实现,后者只有一个控制“温度”的超参数,而且不需要额外的训练。
                      • 通过将解耦学习方案应用于标准网络(例如,ResNeXt),我们在多个长尾识别基准数据集上实现了比已确立的最先进方法更高的准确度,包括 ImageNet-LT、Places-LT 和 iNaturalist。

                        Section 2 RELATED WORK

                        由于实际应用中普遍存在不平衡数据,长尾识别引起了越来越多的关注(Wang 等人,2017;Zhou 等人,2017;Mahajan 等人,2018;Zhong 等人,2019;Gupta 等人,2019)。近期的研究主要从以下三个方向展开:

                        • 数据分布重新平衡(Data distribution re-balancing)

                          沿着这个方向,研究人员提出了重新采样数据集以实现更平衡的数据分布。这些方法包括

                          • 对少数类进行过采样(Chawla et al., 2002; Han et al., 2005)(通过添加数据副本)
                          • 对多数类进行欠采样(Drummond et al., 2003)(通过删除数据)
                          • 以及基于每个类的样本数量进行类别平衡采样(Shen et al., 2016; Mahajan et al., 2018)。
                          • 类别平衡损失(Class-balanced Losses)

                            提出了各种方法,为每个类的不同训练样本分配不同的损失。

                            • 损失可以在类级别上变化,以匹配给定的数据分布并提高尾部类别的泛化能力(Cui et al., 2019; Khan et al., 2017; Cao et al., 2019; Khan et al., 2019; Huang et al., 2019)。
                            • 也可以在样本级别上实现更细粒度的损失控制,例如使用Focal loss(Lin et al., 2017),Meta-Weight-Net(Shu et al., 2019),重新加权训练(Ren et al., 2018),或基于贝叶斯不确定性(Khan et al., 2019)。
                            • 最近,Hayat等人(2019年)提出使用亲和力度量来平衡头部和尾部类的分类区域,强制类的聚类中心均匀分布且等距。
                            • 从头部类到尾部类的迁移学习(Transfer learning from head- to tail classes)

                              基于迁移学习的方法通过将学习自丰富训练实例的头部类特征迁移到代表性不足的尾部类,来解决训练数据不平衡的问题。最近的工作包括迁移类内方差(Yin et al., 2019)和迁移语义深层特征(Liu et al., 2019)。然而,设计特定的模块(例如外部记忆)以进行特征迁移通常是一项非平凡(non-trivial)的任务。

                            • 其他:

                              • Hariharan & Girshick (2017) 提出了一个低样本识别的基准,该基准包括一个没有低样本类别访问权限的表示学习阶段和一个后续的低样本学习阶段。相比之下,长尾识别的设置假设可以访问头部和尾部类别,并且类别标签的减少更为连续。
                              • 最近,Liu et al. (2019) 和 Cao et al. (2019) 采用重新平衡计划,在一个两阶段训练方案中联合学习表示和分类器。
                              • OLTR (Liu et al., 2019) 使用实例平衡采样首先学习表示,然后在第二阶段使用类别平衡采样和记忆模块进行微调。
                              • LDAM (Cao et al., 2019) 引入了一种标签分布感知的边缘损失,扩大了少数样本类别的决策边界。在第五节中,我们详尽地比较了OLTR和LDAM,因为它们报告了 ImageNet-LT、Places-LT 和 iNaturalist 数据集的最先进结果。

                                在我们的工作中,我们主张解耦表示和分类。我们证明,在长尾场景中,这种分离允许直接的方法实现高识别性能,而无需设计采样策略、平衡感知损失或添加记忆模块。

                                Section 3 LEARNING REPRESENTATIONS FOR LONG-TAILED RECOGNITION

                                长尾识别的学习表征/学习长尾识别的表示

                                • 概述:

                                  • 对于长尾识别,训练集在类别上遵循长尾分布。由于在训练期间我们对不常见类别的数据了解较少,使用不平衡数据集训练的模型往往会在少数样本类别上表现出欠拟合。
                                  • 但在实践中,我们希望获得能够良好识别所有类别的模型。因此,提出了各种重新采样策略(Chawla et al., 2002; Shen et al., 2016; Cao et al., 2019)、损失重加权和对少数样本类别的边缘正则化。
                                  • 然而,它们如何实现性能提升(如果有的话)对于长尾识别仍然不清楚。在这里,我们通过将表示学习与分类器学习分离,系统地调查它们的有效性,以确定长尾识别中实际重要的是什么。
                                  • 符号表示(Notation)

                                    我们定义了本文中使用的符号表示。

                                    • 令 X = { x i , y i } , i ∈ { 1 , … , n } X=\{x_i,y_i\},i\in\{1,\dots, n\} X={xi​,yi​},i∈{1,…,n} 为一个训练集,
                                      • 其中 y i y_i yi​ 是数据点 x i x_i xi​ 的标签。
                                      • 令 n j n_j nj​ 表示类别 j j j 的训练样本数量,且令 n = ∑ j = 1 C n j n=\sum^C_{j=1}n_j n=∑j=1C​nj​ 为训练样本的总数。
                                        • 为了不失一般性,我们假设类别按基数降序排序,即如果 i 0​:

                                          L f o c a l : = ( 1 − h i ) γ L C E = − ( 1 − h i ) γ log ⁡ ( h i ) ( 5 ) \mathcal{L}_{focal}:=(1−h_i)^\gamma\mathcal{L}_{CE}=−(1−h_i)^\gamma\log(h_i)\qquad\qquad(5) Lfocal​:=(1−hi​)γLCE​=−(1−hi​)γlog(hi​)(5)

                                          对于容易样本(可能主导训练样本)以及它们对真实类别的较大预测概率 h i h_i hi​,相应的交叉熵损失将被降低。

                                        • 最近,Cui et al. (2019) 提出了一种类平衡的 Focal 损失变体,并将其应用于长尾识别。他们对来自类别 j j j 的样本调制了 Focal 损失,平衡感知系数等于 ( 1 − β ) / ( 1 − β j n ) (1−\beta)/(1−\beta^n_j ) (1−β)/(1−βjn​)。

                                        • 非常最近,Cao et al. (2019) 提出了一种标签分布感知的边缘(LDAM)损失,鼓励少样本类别具有更大的边缘,他们的最终损失形式化为一个带有强制边缘的交叉熵损失:

                                          L L D A M : = − log ⁡ e y ^ − Δ j e y ^ − Δ j + ∑ c ≠ j e y ^ − Δ c ( 6 ) \mathcal{L}_{LDAM}:=−\log\frac{e^{\hat{y}-\Delta_j}}{e^{\hat{y}-\Delta_j}+\sum_c\ne je^{\hat{y}-\Delta_c}}\qquad\qquad(6) LLDAM​:=−logey^​−Δj​+∑c​=jey^​−Δc​ey^​−Δj​​(6)

                                          其中 y ^ \hat{y} y^​ 是逻辑值, Δ j \Delta_j Δj​ 是一个类感知的边缘,与 n j 1 / 4 n^{1/4}_j nj1/4​ 成反比。

                                          B FURTHER ANALYSIS AND RESULTS

                                          进一步分析和结果

                                          B.1 SAMPLING STRATEGIES

                                          抽样策略

                                          在图 3 中,我们可视化了我们探索的四种采样策略的采样权重。在表 5 中,我们展示了在联合训练分类器和表示/骨干架构时,在 ImageNet-LT 上的“所有”类别的准确率。很明显,更好的采样策略在联合训练分类器和表示/骨干架构时有所帮助。

                                          • 图片注解:

                                            ImageNet-LT 的采样权重 p j p_j pj​。类别按 x 轴上递减的 n j n_j nj​ 顺序排列。

                                            • 左图:实例平衡、类别平衡和平方根采样。
                                            • 右图:渐进平衡采样;随着周期的进行,采样从实例平衡变为类别平衡采样。
                                              • 图片注解:

                                                使用不同采样策略联合学习表示和分类器时的 ImageNet-LT 准确率。本表中的结果是图 1 中呈现结果的一个子集。

                                                B.2 CLASSIFIER DECISION BOUNDARIES FOR \tau$-NORMALIZED AND NCM

                                                τ \tau τ-标准化和 NCM 的分类判定界限

                                                在图 4 中,我们展示了使用公式 (3) 规范化前后以及使用余弦距离时的分类器决策边界。平衡范数也导致更平衡的决策边界,使得少样本类别的分类器能够占据更多的空间。

                                                • 图片注解:

                                                  不同分类器及其相应决策边界的说明,其中 w i w_i wi​ 和 w j w_j wj​ 分别表示类别 i i i 和 j j j 的分类权重, C i C_i Ci​ 是属于类别 i i i 在特征空间中的分类锥, m i m_i mi​ 是类别 i i i 的特征均值。从左到右:

                                                  • τ \tau τ-规范化分类器( τ → 0 \tau\to0 τ→0):权重较大的分类器具有更宽的决策边界;
                                                  • τ \tau τ-规范化分类器( τ → 1 \tau\to1 τ→1):不同类别的决策边界更平衡;
                                                  • NCM 使用余弦相似度,其决策边界与分类器权重无关;
                                                  • NCM 使用欧氏相似度,其决策边界将特征空间划分为 Voronoi 单元。
                                                    B.3 CLASSIFIER LEARNING COMPARISON TABLE

                                                    表 6 对第 4 节中介绍的四种不同的分类器学习方法进行了比较分析。

                                                    B.4 VARYING THE BACKBONE ARCHITECTURE SIZE

                                                    改变骨干网结构的大小

                                                    • ImageNet-LT

                                                      在图 5 中,我们比较了不同方法下不同骨干架构大小(模型容量)的性能,包括

                                                      1. 使用作者代码库设置的 OLTR(Liu et al., 2019)(OLTR*);
                                                      2. 使用第 5 节中详细描述的表示学习阶段的 OLTR(OLTR**);
                                                      3. 在训练分类器时使用 Liu et al. (2019) 的记忆模块的 cRT;
                                                      4. cRT;以及
                                                      5. τ \tau τ-规范化。

                                                      我们观察到:

                                                      • 作者实现的 OLTR 在较大模型上过拟合,

                                                      • 使用我们的训练设置(不同的训练和 LR 调度)可以减轻过拟合,

                                                      • 在重新训练分类器时添加记忆单元不会增加性能。表 2 的额外结果在表 7 中给出。

                                                        • 图片注解:在 ImageNet-LT 上使用不同骨干网络 {ResNet, ResNeXt}-{50, 101,152} 的综合结果
                                                        • iNaturalist 2018

                                                          • 图片注解:在 iNaturalist 2018 上使用不同骨干网络(ResNet-50、ResNet-101 和 ResNet-152)和不同训练周期(90 & 200)的综合结果

                                                          • 在表 8 中,我们呈现了表 3 结果的扩展版本。我们展示了每个分割的结果以及使用 ResNet-101 骨干网络的结果。正如我们在第 5 节中提到的,仅训练 90 个周期会得到次优的表示,而大型模型和更长的训练则在这个具有挑战性的大规模任务上获得更高的准确率。

                                                          • 更有趣的是,我们发现在重新平衡分类器后,多样本、中等样本和少样本分割的性能大致相等,只在多样本类别中略有优势。

                                                            B.5 ON THE EXPLORATION OF DETERMINING τ \tau τ

                                                            关于确定 τ \tau τ 的探索

                                                            当前的 τ \tau τ-规范化策略确实需要一个验证集来选择 τ \tau τ,这在实际场景中可能是一个劣势。我们能做得更好吗?

                                                            • 在训练集上寻找 τ \tau τ 值。

                                                              • 我们还尝试直接在训练数据集上选择 τ \tau τ。令人惊讶的是,仅使用训练集选择的 τ \tau τ 值在测试集上的最终性能非常相似。

                                                              • 我们实现这一目标的方法是:从训练集中模拟一个平衡的测试分布。

                                                                • 首先,我们将整个训练集通过网络,为每个类别得到 top-1 准确率。

                                                                • 然后,我们计算每个类别的特定准确率并求平均值,将平均准确率作为确定 τ 值的指标。

                                                                • 如表 9 所示,我们比较了在所有三个数据集上使用训练集和验证集找到的 τ \tau τ 值。我们可以看到, τ \tau τ 的值和整体性能都非常接近,这证明了在训练集上寻找 τ \tau τ 的有效性。这种策略提供了一种在验证集不可用时找到 τ \tau τ 的实际方法。

                                                                • 在训练集上学习 τ \tau τ 值

                                                                  我们进一步研究是否可以自动学习 τ \tau τ 值而不是网格搜索。为此,我们设置 τ \tau τ 作为一个可学习的参数,并在平衡采样的训练集上学习它,同时保持所有其他参数固定(包括骨干网络和分类器)。我们还比较了学习到的 τ \tau τ 值和表 9 中相应的结果(标记为“learn” = 3)。这进一步减少了搜索最佳 τ \tau τ 值的人工工作,并使策略更适用于实际使用。

                                                                  B.6 COMPARING MLP CLASSFIIER WITH LINEAR CLASSIFIER

                                                                  MLP 分类器与线性分类器的比较

                                                                  我们在实验中使用了不同层数(2层或3层)和不同隐藏神经元数量(2048 个或 512 个)的多层感知机(MLPs)。我们使用 ReLU 作为激活函数,将批量大小设置为 512,并在固定表示上使用平衡采样训练 MLP,训练 10 个周期,使用余弦学习率调度,学习率逐渐减小到零。我们在两个数据集上进行了实验。

                                                                  在 ImageNet-LT 上,我们使用 ResNeXt50 作为骨干网络。结果总结在表 10 中。我们可以看到,当 MLP 变得更深时,性能变差。这可能意味着骨干网络已经足够学习到具有区分性的表示。

                                                                  对于 iNaturalist,我们使用训练了 200 个周期的 ResNet50 模型的表示。我们只考虑一个隐藏维度为 2048,因为该数据集包含更多的类别。结果展示在表 11 中,并且显示当使用更深层的分类器时,性能下降更为严重。

                                                                  B.7 COSINE SIMILARITY FOR CLASSIFICATION

                                                                  用于分类的余弦相似度

                                                                  我们尝试用带有(标记为“cos”)和没有(标记为“cos(noRelu)”)最后一个 ReLU 激活函数的余弦相似度分类器替换线性分类器,遵循 Gidaris & Komodakis (2018)。我们在表 12 中总结了结果,它们彼此相当。

上一篇:移动电信服务器怎么快?

下一篇:服务器的粉丝怎么删除?