PGD论文阅读笔记

PGD:Prediction-Guided Distillation for Dense Object Detection

1.Idea

In this work, we show that only a very small fraction of features within a ground- truth bounding box are responsible for a teacher’s high detection performance. Based on this, we propose Prediction-Guided Distillation (PGD)

  1. 找到关键可预测区域key predictive regions
  2. 自适应的权重策略

作者认为,重要的可预测区域就是教师模型准确率最高的位置

Our intuition is that these regions should be distilled because they hold the infor- mation that leads to the best predictions; other areas will be less informative and can contaminate the distillation process by distracting from more essential features.

贡献

通过实验显示了教师预测中高质量点的分布,表明目前表现好的密集检测模型,top 1%的分数与最后教师模型的表现有关。

使用key predictive regions

对于前景的蒸馏,使用低参数化的权重策略

在COCO和CrowdHuman数据集上表现良好

2.key predictive regions

目标是放大最有用的部分

质量分数\(q\)的计算

\[q\big(\hat b_{(i,j)},b\big) = \mathbb 1[X_i\in b]~\cdot ~\Big( \hat p_{(i,j)}(b) \Big)^{1-\xi} ~\cdot~ \Big(\text{IoU}\big(b,\hat b_{(i,j)}\big) \Big)^{\xi} \tag{1} \]

其中 \(\hat b_{(i,j)}\) 表示生成的box,\(X_i=(x_i,y_i)\)表示box的位置,\(b\) 表示ground truth

\(\mathbb 1[x\in \Omega_b]\)表示如果\(X_i\)在box b中,值为1;否则值为0。作为乘数,保证了结果只与在box中的点有关

\(\hat p_{(i,j)}\)表示分类概率

IoU\((b,\hat b_{(i,j)})\)表示预测box和GT-box的IoU

\(\xi\)​用于平衡分类和位置的权重

选择\(\hat q_i = \max_{j\in J_i}~q(\hat b_{(i,j)},b)\),其中\(J_i\)是所有预测的集合

3.Prediction-Guided Weighting Module

对于对象\(o\)以及GT-box \(b\),首先计算\(b\)中每个像素的质量分数,选择其中分数最高的\(K\)个像素\(T^o = \{ (X^o_k,l^o_k)~ |~ k=1,...k \}\),其中\(X_k^o\)是坐标,\(l^o_k\)是FPN级别

我们假设选择的像素点\(T^o_k\)满足\(T_k^o\sim \mathcal N(\mu,\Sigma ~|~ o)\),然后通过MLE对\(\mu\)\(\Sigma\)进行估计

\[\hat \mu = \frac{1}{K}\sum^K_{k=1}X_k^o, ~~\hat\Sigma = \frac{1}{K}\sum^K_{k=1}(X^o_k-\hat\mu)(X_k^o-\hat\mu)^T \tag2 \]

对于FPN中第\(l\)​层的特征,计算其在蒸馏中的重要性

\[I^o_{(i,j),l} = \left\{ \begin{aligned} &0 &P_{(i,j),l} \notin T^o \\ &\exp\left(-\frac{1}{2}(X_{i,j}-\hat\mu)\hat \Sigma^{-1}(X_{i,j}-\hat\mu)^T \right) &P_{(i,j),l} \in T^o \end{aligned} \right. \tag{3} \]

对于有非0重要值的对象,使用其中最大的一个:\(I_{(i,j),l} = \max_o\{I^o_{(i,j),l} \}\)

这样,对于每个FPN的第\(l\)层,大小记为\(H_l\times W_l\),都通过normalising整层的重要系数为其赋予一个蒸馏权重\(M_{(i,j),l}\)

\[M_{(i,j),l} = \frac{I_{(i,j),l}}{\sum^{H_l}_{i=1}\sum^{W_l}_{j=1}\mathbb 1_{(i,j),l}} \tag4 \]

其中\(\mathbb 1\)只有在\(I_{(i,j),l}\neq0\)的时候值为1,否则值为0

上述过程构成了预测引导加权(PGW)模块,其输出是所有特征级别和像素的前景蒸馏权重M。

4.Prediction-Guided Distillation

这部分是KD的整个过程

工作基于FGD的基础,合并了spatial and channel-wise attention mechanisms

对特征的蒸馏

对FPN的每一层进行模仿,将分类和回归的部分分离开,用PGW方法得到\(\xi ^{cls}\)\(\xi^{reg}\),从而分别得到\(M^{cls},M^{reg}\in \mathbb R^{H\times W}\)

然后让学生的feature \(F^{S,cls},F^{S,reg}\in \mathbb R^{C\times H \times W}\)去模仿教师的feature \(F^{T,cls},F^{T,reg}\)

\[L^{cls}_{fea} = \sum^C_{k=1}\sum^H_{i=1}\sum^W_{j=1}(\alpha M_{i,j}^{cls} + \beta N_{i,j}^{cls})P_{i,j}^{T,cls}A_{k,i,j}^{T,cls}(F_{k,i,j}^{T,cls} - F_{k,i,j}^{S,cls})^2 \tag5 \]

\[L^{reg}_{fea} =\sum^C_{k=1}\sum^H_{i=1}\sum^W_{j=1}\gamma M^{reg}_{i,j}A_k^{T,reg}(F_{k,i,j}^{T,reg} - F_{k,i,j}^{S,reg})^2 \tag6 \]

\(N^{cls}\)是背景引导的用来normalised的mask,\(N^{cls}_{i,j} = \mathbb 1^-_{i,j}\sum^{H,W}_{h,w=1}1^-_{w,h}\),其中\(\mathbb 1^-_{a,b}\)\((a,b)\)不在任何GT-box中时为1,否则为0

\(P\)\(A\)是空间spatial和通道channel的attention map

对Attention的蒸馏

修改了channel attention,对于特征的每个位置分开计算

\[P_{i,j} = \frac{\exp(HW\cdot \sum^C_{k=1}|F_{k,i,j}|/\tau )}{\sum^H_{i=1}\sum^W_{j=1}\exp(\sum^C_{k=1}|F_{k,i,j}|/\tau)}\\A_{k,i,j} = \frac{C\cdot\exp( |F_{k,i,j}|/\tau )}{\sum^C_{k=1}\exp(|F_{k,i,j}|/\tau)}\tag7 \]

分开计算分类和回归的attention losses

\[L^{cls}_{att} = \frac{\delta}{HW}\sum^H_{i=1}\sum^W_{j=1}|P^{T,cls}_{i,j}-P^{S,cls}_{i,j} | + \frac{\delta}{CHW}\sum^C_{k=1}\sum^H_{i=1}\sum^W_{j=1}|A^{T,cls}_{k,i,j}-A^{S,cls}_{k,i,j} | \tag8 \]

\[L^{reg}_{att} = \frac{\delta}{C\sum^H_{i=1}\sum^W_{j=1 }\mathbb 1_{i,j}}\sum^H_{i=1}\sum^W_{j=1}\sum^C_{k=1}\mathbb 1_{i,j}|A^{T,reg}_{k,i,j}-A^{S,reg}_{k,i,j} | \tag9 \]

其中\(\mathbb 1_{i,j}\)在$M_{i,j}^{reg}\neq 0 $时为1

总的loss计算

\[L_{distill} = L^{cls}_{fea} + L^{reg}_{fea} + L^{cls}_{att} + L^{reg}_{att} \]

5.实验结果

6.消融实验

对比前景蒸馏策略

FGD和Defeat都是将GT-box中的内容一视同仁地进行蒸馏,用Box方法来表示实验结果,比最佳结果差了0.9

LD认为最有意义的区域在GT-box的中间,使用TADF的BoxGauss策略进行测试,相比于Box提高0.4的AP,说明了关注中间区域的重要性

采用直接取中间的Centre策略,只蒸馏GT-box中间的\(0.2H\times 0.2W\)部分,效果反而最差,可能的原因是固定的大小限制了不同大小GT-box的蒸馏信息

采用根据quality的自适应策略Quality,在大中目标中效果超过BoxGauss,但是在小物体上效果不如

采用TopkEq,在小物体上效果有所提升

比较了Gaussian MLE和kernel density estimation(KDE),表现差不多

posted @ 2022-03-23 16:01  无证_骑士  阅读(292)  评论(0)    收藏  举报
页脚HTML页码