监督|长尾问题太严重?半监督和自监督就可以有效缓解!( 四 )


因此,在一些很难利用半监督学习的极端情况下,我们需要完全不同的但是也行之有效的方法。非常自然的,我们接下来从不平衡标签负面价值的角度去入手,阐述另一思路 --- 自监督学习带来的好处。
自监督框架下的不均衡学习
同样地,我们首先通过一个简单的理论模型分析来直观理解自监督对不平衡学习所带来的影响(同样也可以直接跳到解释部分),之后展示有意思的实验结果,以及总结思考。
理论分析:我们同样考虑一个维Guassian mixture的toy example。这次我们考虑两个类有相同的均值(都为0)但是不同的方差,和。其中,我们假设负类是主要的类(mix 概率)。我们考虑线性的分类器,,并且用标准的error probability,,作为分类器的衡量标准。
在正常的训练中,公式里的feature代表的是raw data,。在这种情况下,我们可以首先证明上述的线性分类器一定会有至少的error probability。
接下来我们考虑当有self-supervision的情况。假设一个好的self-supervised task帮助我们学习到了新的representation,,。我们考虑用作为线性分类器的输入。
在上述的分类器范围内, 我们可以得到一个分类器,,,满足下面的定理:
监督|长尾问题太严重?半监督和自监督就可以有效缓解!
文章插图
同样的,我们尝试直观的解释这个定理的意义。我们发现在这样简单的情况下,如果通过一个好的self-supervised task学习到了有用的表达形式,我们能得到:
有很高的概率,我们能得到一个更好的分类器。这个分类器的error probability随数据维度的增加而指数型减小。对于如今常见的高维数据(如图像)这种性质是我们希望得到的。
训练数据的不平衡性会影响我们能够得到这样一个好的分类器的概率。上文中,和代表训练数据里不同类的数量。从和这两项中我们可以发现,当数据越多且越平衡,我们就有更高的概率得到一个好的分类器。
自监督的不平衡学习框架:为利用自监督来克服固有的“label bias”,我们提出在长尾学习的第一阶段先放弃标签信息,并进行自监督预训练(self-supervised pre-training,SSP)。此过程旨在从不平衡数据集中学到更好的、与标签无关的初始化特征信息。
在此阶段后,我们可以使用任何标准的训练方法,去训练得到最终的模型。由于预训练与正常训练阶段所采用的学习方法无关,因此这种策略可与任何现有的不平衡学习算法兼容。一旦自监督产生良好的初始化,网络就可以从预训练任务中受益,并最终学习到更通用的表示形式。
实验:那么又一次到了激动人心的实验部分 ;) 这次由于不需要额外数据,我们除了在长尾的CIFAR-10/100上验证算法,也在大型数据集ImageNet的长尾版本,以及一个真实的大型长尾数据集iNaturalist[7]上进行测试,并和相应state-of-the-art对比。
对于自监督算法,我们采用了经典的Rotation prediction[19]和最新的对比学习方法MoCo[20]。在Appendix里我们也提供了更多ablation study,比较了4种不同自监督方法的效果,以及不同的Imbalance Type。
具体实验结果如以下两表格所示。一言以蔽之,使用SSP能够对不同的 (1) 数据集,(2) 不平衡比率,以及 (3) 不同的基础训练算法,都带来了一致的、肉眼可见的提升,并且在不同数据集上都超过了之前最优的长尾分类算法。
监督|长尾问题太严重?半监督和自监督就可以有效缓解!
文章插图
监督|长尾问题太严重?半监督和自监督就可以有效缓解!
文章插图
最后同样展示一下自监督下的定性实验结果。与之前一样,我们分别画出了训练和测试集的特征t-SNE投影。从图中不难发现,正常CE训练的决策边界会很大程度被头类样本改变,从而导致在(平衡的)测试集中尾类样本的大量“泄漏”,无法很好泛化。
相比之下,使用SSP可以保持清晰的分离效果,并减少尾类样本的泄漏,尤其是在相邻的头类和尾类之间。
这样的结果同样也能直观理解:自监督学习通过额外的task来约束学习过程,对数据空间的结构学习的更完整、提取的信息更全面,相比不平衡的标签信息带来的语义信息的不平衡,其能有效减轻网络对高层语义特征的依赖,以及对尾部数据的过拟合,学到的特征表示会更鲁棒易泛化,从而在下游任务中表现更好。
监督|长尾问题太严重?半监督和自监督就可以有效缓解!
文章插图
结语
最后总结一下本文,我们首次通过半监督和自监督这两个不同的viewpoint去尝试理解和利用不平衡的数据(标签),并且验证了这两种框架均能提升类别不均衡的长尾学习问题。我个人还是挺喜欢这篇文章的,有很直观的理论分析与解释,以及用非常简洁并且通用的框架去提升长尾分布下的学习任务。