本文是长尾分布系列论文解析的第三篇,前两篇分别关注了传统分类问题中的长尾分布:长尾分布系列论文解析(一)Decoupling Representation and Classifier for Long-Tailed Recognition以及回归问题中的长尾分布长尾分布系列论文解析(二)Delving into Deep Imbalanced Regression本篇要介绍的是多域学习任务中的长尾分布问题,相关论文为:
分类问题和回归问题中的长尾都旨在解决同一个域的问题,也就是训练集和测试集的数据都来自于同一个总体(但实际上还是很疑惑为什么要在balance的测试集上进行测试,这种情况下训练集和测试集真的算来自于同一分布吗?)。而现实中不同域间往往存在着不同、但是又可以彼此借鉴的长尾分布,比如说同样的动物分类数据集,素描的图像和拍摄的图像可能有着不同的长尾分布,但从分类的角度来看二者的知识是可以迁移的。本文所研究的问题就是这一条件下的MDLT(Muliti-Domain Long-Tailed Recognition),旨在训练模型从含有不同不平衡标签分布的域中学习共通的信息,并将训练出的模型迁移到同一系列域但是标签分布的测试集中。
MDLT算是MDL(Multi-Domain Learing)的子课题,这里需要稍微区分一下MDL和DA(domain adaptation)以及DG(Domain Generalization)的区别。DA旨在提升模型在单一的目标域上的表现,也就是存在着源域和目标域的区别;而MDL旨在提升模型在所有域上的表现;DG则是期望将模型泛化到一个全新的域中,这一域只会在测试时出现。本文则主要关注于MDL中不同域可能存在的不平衡标签分布问题,同时进一步将这一问题拓展到了DG方向,证明了DG领域也需要考虑域内不平衡分布差异性的问题。
文章的主要贡献在于:
在单域的不平衡分布中,最基本的单元是类别,而在MDLT问题中,最基本的单元是域-类对 ( d , c ) (d,c) (d,c)。作为迁移学习的子问题,MDLT关心的是利用同类的域类对获得相应类别的典型信息,其核心问题是如何进行域间的信息整合,而这一点在MDL问题中已经得到了广泛的研究。MDLT则是将其更细化的考量到如果不同域间分布不同,那么该如何依据这一差异性做出不同的迁移,这就设计到了度量不同域-类对间的可转移性。作者定义了域-类对间的可转移性为:
t r a n s ( ( d , c ) , ( d ′ , c ′ ) ) ≜ E z ∈ Z d , c [ d ( z , μ d ′ c ′ ) ] trans((d,c),(d',c'))\triangleq \mathbb{E}_{z\in \mathbf{Z}_{d,c}}[\mathbf{d}(z,\mu_{d'c'})] trans((d,c),(d′,c′))≜Ez∈Zd,c[d(z,μd′c′)]
其中 z z z为域-对 ( d , c ) (d,c) (d,c)中一样本 x x x在特征空间 Z \mathbf{Z} Z中的像,而 μ d ′ c ′ ≜ E z ∈ Z d , c [ z ′ ] \mu_{d'c'}\triangleq\mathbb{E}_{z\in \mathbf{Z}_{d,c}}[z'] μd′c′≜Ez∈Zd,c[z′]为 ( d ′ , c ′ ) (d',c') (d′,c′)的一阶统计量(原点矩), d \mathbf{d} d为特征空间的距离度量函数。粗略的来看这一公式,其实就是描述了两个域-对在特征空间的统计特征间的距离,显然是越小越好。
更进一步的将每一个域-对视作顶点,两两间的相似性视作为边,我们可以得到多域上的可转移性图 G = ( V , E ) , V ⊆ μ d , c , E ⊆ ( V , V ) \mathcal{G}=(\mathcal{V},\mathcal{E}),\mathcal{V}\subseteq{\mu_{d,c}},\mathcal{E}\subseteq(\mathcal{V},\mathcal{V}) G=(V,E),V⊆μd,c,E⊆(V,V)。得到的可转移性图和经MDS二维可视化结果如下:
很显然,在本问题中我们希望能提取同类共性而剔除不同类的相似性,即减小 α \alpha α,増大 β , γ \beta,\gamma β,γ
借由一个简单的包含2个domain的数字分类问题,作者向我们展示了长尾分布对于域-类对间可转移性的影响
可以看到当两个域呈同一均匀分布时基本完美实现了不同域同类间的信息迁移,而当两个域呈现同一长尾分布时,虽然判决准曲率无可避免的下降,但从可转移性上来看仍然尚可,虽然 α \alpha α有所増大,但整体上仍然是小于 b e t a beta beta的。但当两个域为不同的长尾分布时,可以看到两个域的同一类间已经无法进行正常的转移,受其他类影响巨大。由此可见,不同域上不同的长尾分布对于MDL问题有着显著的影响。
更进一步的作者通过调整分类模型的超参数以获得不同的 β + γ − α \beta+\gamma-\alpha β+γ−α下,模型的准确率变化曲线如下:
注意到随着 β + γ − α \beta+\gamma-\alpha β+γ−α的增大,模型的准确率都有所上升,这说明了可转移性的统计量 β + γ − α \beta+\gamma-\alpha β+γ−α和模型的准确率有着较强的相关性。而当不同域的分布状况出现差异时,模型更难去学到可转移性强的特征,准曲率下降。这就为我们从可转移性的角度提供了MDLT问题的优化目标–差异分布状况下提升 β + γ − α \beta+\gamma-\alpha β+γ−α
作者给出的方案是从损失函数方面约束模型的训练过程,使得模型朝着 β + γ − α \beta+\gamma-\alpha β+γ−α尽量大的方向更新,DA(Domain-Class Distribution Alignment)损失表达式如下:
仔细端详这个式子,实际上是对每一个样本的特征 z i z_i zi都计算出所有域内的同类特征和它的相似性。log部分实际上就类似于softmax函数,其分母为所有的域-类对(除了当前计算样本所属的域-类对)和样本特征距离的指数和,分子为某不同域同类域-类对和样本特征的距离,整体就是在在计算归一化的相似性。再考虑到前方的求和符号,就是在计算以
所有的域-类对(除了当前计算样本所属的域-类对)作为整体下,当前样本特征和对应的所有不同域同类域-类对间的归一化相似性。而由于实际计算的是“负距离”而非“相似性”,前方再加入负的域归一化得到均值意义下不同域同类相似性损失。将所有样本的损失求和即为DA损失。
想要损失最小化,就需要归一化的相似性越大越好,从而同类样本的“负距离”越大越好,不同类样本“负距离”越小越好,等价于最大化 β + γ − α \beta+\gamma-\alpha β+γ−α。
DA损失考虑到了 β + γ − α \beta+\gamma-\alpha β+γ−α提升的需求,但是并没有考虑到不同域的分布差异所带来的影响占多数的样本会对损失函数有着较大的影响(需计算的 z i z_i zi更多),反之亦然。因此有了改进后的BoDA(Balanced Domain-Class Distribution Alignment)
通过引入基于样本数目的缩放使得含多数同类样本和含少数同类样本的域对损失函数的贡献不至于失衡。作者通过理论推导证明了BoDA为 β + γ − α \beta+\gamma-\alpha β+γ−α定义了一个合理的上界,通过优化BoDA,可以确保较低的 α \alpha α和较高的 β + γ \beta+\gamma β+γ。
更进一步的,作者通过实验发现用两个不同长尾分布的域的数据训练时,测试集的样本和训练集样本的相似性并不都是来自于同一域的更接近。当训练集中某域某类样本的数目较少时,对应测试集中该域的该类样本反倒和另一域的该类样本相似性更高。这说明了一个好的模型应该会让知识从样本数目较少的域-类对迁移到样本数目较多的域-类对,而非反之。
由此有了距离校准后的BoDA,鼓励模型将知识从多数样本迁移到少数样本:
作者从常用的MLT数据集中建立了一套MDLT数据集,对比了主流MLT模型在使用BoDA损失函数前后的性能变化情况,基本都有所提升。而在DG问题上,BoDA同样有所建树,且用的数据集并非是特意制作的长尾分布数据集而是标准的MLT数据集,作者认为这说明了类别分布的不平衡问题是DG算法的内在问题。
此外,可视化实验证明了BoDA确实完成了预设的目标,即拉近不同域同类样本特征间的距离,将多数样本的知识迁移至同类不同域少数样本上:
同样是非常solid的工作,motivation到理论推导到实验非常的完美,而且是开创了新的任务,很nice。并且据作者自己说是在进行医疗方面的项目时遇到了跨域的长尾分布问题,才进行了这一系列的研究,很有可能以后会碰到。作者解析:ECCV 2022 | 多域长尾分布学习,不平衡域泛化问题研究, 源代码:multi-domain-imbalance