论文内容
Intuition
解决问题:分割。
对于长尾数据,类别样本分布不平衡。那很直接的想法就是把不同类的样本分成均衡的就行了,不过这样一分,样本就会很少,就变成了fewshot learning。然后看看这个论文怎么解决的。
这个想法是很容易想到的呀,就是具体操作不太好设计。前几天看的那个Balanced Group Softmax还有个multi-experts[ECCV2020]也是这个思路。
从Intro看,也有点儿像meta-learning。
具体方法
Class-Incremental Instance Segmentation
把数据分成了
T
T
T组相对平衡的子集
{
C
i
}
i
=
0
,
1
,
.
.
.
,
T
\{\mathcal{C}_i\}_{i=0,1,...,T}
{Ci}i=0,1,...,T。训练到
t
t
t步的时候,用
C
i
=
0
,
1
,
.
.
.
,
t
\mathcal{C}_{i=0,1,...,t}
Ci=0,1,...,t个子集。
训练过程:
前
t
−
1
t-1
t−1步网络参数是
θ
t
−
1
\theta_{t-1}
θt−1,这部分参数要冻起来。然后加入
C
t
\mathcal{C}_t
Ct,分类器是要随着
t
t
t增加逐渐扩张,以便分类新来的数据。同时用知识蒸馏传递就参数:
L
k
d
=
∣
y
t
−
1
−
y
t
′
∣
L_{kd}=|y_{t-1}-y'_t|
Lkd=∣yt−1−yt′∣
y t − 1 y_{t-1} yt−1是用参数 θ t − 1 \theta_{t-1} θt−1的模型预测的分数, y t ′ y'_{t} yt′是当前模型,即当前参数为 θ t \theta_t θt的模型。 L k d L_{kd} Lkd用的L2范数。
Instance-level Data Balanced Replay
随着新的
C
t
\mathcal{C}_t
Ct加入,后面来的自己包含的训练样本越来越少,这个论文用了下采样方法来平衡,起了个名字叫replay。下采样参数是用
C
t
\mathcal{C}_t
Ct的平均样本个数
n
‾
c
\overline{n}_c
nc和
{
C
i
}
i
=
0
,
1
,
.
.
.
,
t
−
1
\{\mathcal{C}_i\}_{i=0,1,...,t-1}
{Ci}i=0,1,...,t−1的平均个数
n
‾
k
\overline{n}_k
nk计算的。采
⌈
n
‾
c
/
n
‾
k
⌉
\lceil \overline{n}_c/\overline{n}_k \rceil
⌈nc/nk⌉个。这里可能少乘了个当前类别的个数
n
k
n_k
nk吧,反正大概就是这个意思,样本越来越少了,之前的
t
−
1
t-1
t−1里的样本个数很多,和当前
t
t
t类的子集中的样本个数平衡一下,少采一些。
对新加进来的数据的分类器参数,用Meta Weight Generator的方式学的。即分类器参数 W t \mathcal{W}_t Wt分成了两部分 [ W t O , W t N ] [\mathcal{W}_t^\mathcal{O},\mathcal{W}_t^\mathcal{N}] [WtO,WtN]。 W t O \mathcal{W}_t^\mathcal{O} WtO直接用之前 t − 1 t-1 t−1步学的就可以了, W t N \mathcal{W}_t^\mathcal{N} WtN是通过检索base classifier weights组合出来的。大概意思是说重新组合学到的特征的权重,获得新看到的物体的类别。
总结
出发点是很容易想到的,但是具体如何实现就很复杂。这篇论文用的meta-learning的思路。