【读论文0624】Distribution Alignment: A Unified Framework for Long-tail Visual Recognition

今天给自己加油! 坚持! 努力!


论文

题目: Distribution Alignment: A Unified Framework for Long-tail Visual Recognition
发表时间: CVPR2021
CODE: https://github.com/Megvii-BaseDetection/DisAlign


解决问题

visual recognition tasks. including image classification, semantic segmentation, object detection, and instance segmentation.

Intuition

two-stage strategy需要超参,限制了数据对齐的能力。 (长尾的训练数据和均衡的测试数据之间需要对齐。) 据我观测,他列举的参考文献是需要按照某些规则,通过引入超参对齐数据。比如:[19]是decoupling,采样方式中有超参;[28] logit adjustment,它超参不少,边界、还有个 τ \tau τ–一个类似温度的控制量,调整起来应该挺麻烦;[23]是那个balanced group softmax,分组个数需要调整。

such a two-stage strategy (文献[19, 28, 35, 38, 23]) typically relies on heuristic design to adjust the decision boundary of the initially learned classifier head, which often requires tedious hyper-parameter tuning in practice. This severely limits its capacity to resolve the mismatch between imbalanced training data distribution and balanced evaluation metrics.

一个ablation experiment:
用一个平衡的数据先估计了一个理想准确率。发现:长尾的和平衡的数据,学习到的表示都很好,gap在于分类器,分类器的决策边界画的不好。(这个和2020年那几篇decoupleling, BBN之类的一个意思。)

解决方案

用一个网络进行分布对齐(或者叫“校准”比较好)。

具体做法:(原文Section3.2,第一段又是个没用的段落。)
1)用instance-balanced strategy联合学习特征表示和分类器。数据还是用的长尾分布的数据,就是用平衡采样的方式来取样本。和decoupling一样。
2)分布对齐/校准 (这个我觉得是重点)
初始分数: z o = [ z 1 0 , z 2 0 , . . . , z K 0 ] z^o=[z_1^0,z_2^0,...,z_K^0] zo=[z10,z20,...,zK0]
class-specific linear transform 调整这个类别分数,调整方式 s j = α j ⋅ z j o + β j , ∀ j ∈ C s_j=\alpha_j \cdot z_j^o+\beta_j,\forall j \in C sj=αjzjo+βj,jC
α j \alpha_j αj β j \beta_j βj就是每类的对齐/校准参数。又定义了一个置信方程 σ ( x ) \sigma (x) σ(x)来组合对齐分数和原始分数:
z ^ j = σ ( x ) ⋅ s j + ( 1 − σ ( x ) ) ⋅ z j o \hat{z}_j=\sigma(x)\cdot s_j+(1-\sigma (x))\cdot z^o_j z^j=σ(x)sj+(1σ(x))zjo
置信方程 σ ( x ) \sigma (x) σ(x)可以写成 g ( v T x ) g(v^Tx) g(vTx),就可以当作一个线性层再加一个激活单元,然后可以直接放到网络里了。
这个 z ^ j \hat{z}_j z^j是最终的分数,预测的概率还用softmax。求解参数的损失函数用这个预测分布和参考分布的KL散度:
L = E D t r [ K L ( p r ( y ∣ x ) ∣ ∣ p m ( y ∣ x ) ) ] L=\mathbb{E}_{\mathcal{D_{tr}}}[\mathcal{KL(p_r(y|x)||p_m(y|x))}] L=EDtr[KL(pr(yx)pm(yx))]
这个 p r ( y ∣ x ) p_r(y|x) pr(yx)是参考分布,其实是对原始分数的softmax概率的重加权。权重:
w c = ( 1 / r c ) ρ ∑ k = 1 K ( 1 / r k ) ρ w_c=\frac{(1/r_c)^\rho}{\sum_{k=1}^K(1/r_k)^\rho} wc=k=1K(1/rk)ρ(1/rc)ρ
r = [ r 1 , . . . , r K ] r=[r_1,...,r_K] r=[r1,...,rK]是empirical class frequencies,就是每类样本的个数(这样写显得好高级呀,学着学着), ρ \rho ρ是超参,控制分布形式用的。

老习惯,实验就不多说啦。分类用的数据集:ImageNet-LT,iNaturalist-2018,Place365-LT。它还有分割和检测的实验,分割用的ADE-20K,检测用的LVIS,原来COCO-style average precision (AP) metric 是个评价指标呀。

总结

懵了,对齐到重加权的预测上。为啥?重加权的预测本身就也有误差吧,用一个较大误差对齐到较小误差?那有啥优越性呀?把 p r p_r pr当GT,直接用 p r p_r pr做预测结果不久行了?再对齐一次又引入误差。或者不如直接对齐到理想分布误差(就是用VC维或者Rademacher复杂度推导的出来的那堆东西)不是也要好点儿?
最后只想说,我懂的少,你别骗我。。。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值