今天给自己加油! 坚持! 努力!
论文
题目: 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:
解决方案
用一个网络进行分布对齐(或者叫“校准”比较好)。
具体做法:(原文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=αj⋅zjo+βj,∀j∈C
α
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(y∣x)∣∣pm(y∣x))]
这个
p
r
(
y
∣
x
)
p_r(y|x)
pr(y∣x)是参考分布,其实是对原始分数的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复杂度推导的出来的那堆东西)不是也要好点儿?
最后只想说,我懂的少,你别骗我。。。