PISR - yubo105139/paper GitHub Wiki
Learning with Privileged Information for EfficientImage Super-Resolution(2020)
目的:压缩SR模型并保持其超分效果。
主要思想:
通常的SR方法仅将HR作为训练时候的GT,HR图像包含LR图像的互补信息(例如,高频分量)。这里HR 图像作为特殊的先验信息去提取特征,将其应用于SR。
方案设计:
HR信息的使用方法:对原始的知识蒸馏方法做改进,HR输入教师网络,学生网络学习特征。
-
教师网络是一个hourglass结构,对输入HR,先进行encoder,再进行decoder。
-
encoder 提取HR的 compact features,使用imitation loss,使该特征尽可能和LR相似。
-
decoder网络和学生网络一样。
-
通过基于互信息的特征蒸馏方法,学生网络学习教师网络在decoder阶段的特征。
详细设计
estimator module :取中间学生网络中间的feature map,并输出location和scales maps
教师网络
-
输入
ground-truth HR images
-
网络结构
- encoder-decoder
对于一个LR-HR对,encoder输入HR,输出与LR 图像size相同的特征。decoder将该低维特征作为输入,重建得到HR` 。
- decoder结构和学生网络一样。
-
损失函数
-
imitation loss
限制encoder输出特征的表达,使其更接近LR图。使用特征图和LR图的平均绝对误差
-
reconstruction loss
HR图和重建结果的平均绝对误差
-
total loss
-
学生网络
-
输入LR;输出生成的HR
-
网络结构
-
与教师网络的decoder结构一致使用FSRCNN
-
学生网络训练时使用decoder的参数进行初始化,转移教师网络的重构能力。(实验验证该方法的有效性)
-
-
损失函数
虽然和decoder初始化参数相同,但是输入不同。使用蒸馏损失和重建损失进行进一步训练。
-
reconstruction loss
和教师网络的计算方法一致
-
distillation loss
参照VID蒸馏,使用互信息的方法。基于 $
f^t
$和$f^t
$ 的互信息,用拉普拉斯分布来近似条件概率,其中拉普拉斯分布的参数Estimator module学习得到。student feature 输入Estimator module得到拉普拉斯密度函数的位置$
u
$和尺度参数$b
$。用该分布去近似教师和学生特征的条件概率。其参照VID,VID使用的高斯分布进行的近似,上式使用的是Laplace分布。
-
-
Estimator module
两个相同网络结构的分支模块(1×1conv+PReLU),分别输入学生网络decoder输出的特征$
f^s
$, 一个预测location $u
$,一个预测 scale $b
$,scale 模块末尾使用softplus : $ζ(x) = log(1 + ex )
$, 以使得scale参数为正。该模块只在训练时用到。
实验设计
实验设置
- 网络设置
(conv+PReLU)×[5*5, 5*5, 3*3,3*3],第二个block,stride为scale factor
- 参数设置
DIV2K数据集上使用图搜索,模仿损失和蒸馏损失的权重分别设置为$λ^T = 10^{−4} , λ^S = 10^{−6}
$
HR patch size 192 × 192, LR patch size 96 x 96 , scale factor 2
教师网络随机初始化, batch size 16, Adam
- 评价设置
Set5 [5], Set14 [59], B100 [40], and Urban100
PSNR ,SSIM
各个设计组件测试
scale 2, Set5, psnr
- 教师网络使用沙漏结构的影响
- 学生网络初始化使用decoder的参数
- 教师网络使用imitation loss, 使encoder输出逼近LR
- 蒸馏损失使用互信息方法(高斯分布,拉普拉斯分布)
对encoder生成特征compact feature 的分析
在空间阈和频阈对其进行分析。 使用2Dfft算法将图像从空间域变到频率域,分析像素值分布。
结果证明了:
- 不管是否使用Lim ,compact feature 相比LR携带更多的高频细节。
- compact feature包含更多信息。因为相同结构的student和teacher decoder的网络,后者重建效果更好
- imitatioin loss的必要性。不经过imitatioin loss的 compact feature 和LR的像素分布区别很大,不利于weight transfer。
与原始FRCNN以及其他SOA模型的比较
scale 2,3,4 , HR 1280 × 720
比较PSNR, SSIM, 模型参数大小,推导时间等。
比较重建结果
证明了:
-
添加HR作为特权信息的方法效果有提升。
-
使用的蒸馏方法实现了模型压缩效果和超分效果的平衡
-
将FSRCNN网络替换为其他SR网络如VDSR, CARN, 使用该设计方法效果都有提升。
supplement:(VID互信息蒸馏)
Paper:Variational Information Distillation for Knowledge Transfer
定义互信息:
I(f^t; f^s) = H(f^t) - H(f^t|f^s)
MI可以表示两个变量的依赖程度,MI越大,表明两者的输出越相关。
则如下loss函数来增大teacher和student之间的输出特征的互信息:
采用另外一个分布来近似这个分布的做法,并使用变分信息最大化 的方法求解变分下界(variational low bound)
I(f^t;f^s) = \sum_{f^t\in F^t}\sum_{f^s\in F^s}p(f^t, f^s)log\frac{p(f^t|f^s)}{p(f^t)}
真实分布$logp(t|s)
$的期望等于变分分布$E_{t,s}[logq(t|s)]
$的期望+两个分布的KL散度期望。因为KL散度的值是恒大于0的,所以得到变分下界。H(t)由于和待优化的student参数无关,所以是常数。loss函数变为:
所以只需要计算 $E_{t,s}[log q(t|s)]
$
然后联合的训练学生网络利用target task和最大化条件似然去拟合teacher网络得到的激活。
Laplace 分布的密度函数如下:
f(x|\mu,b) = \frac{1}{2b} e^{\frac{|x-\mu|}{b}}
$\mu
$是位置参数,$b
$是尺度参数。拉普拉斯分布的期望为$\mu
$,方差为 $2b^2
$ ,偏度为0,峰度为3。
服从拉普拉斯分布的随机变量,出现极端大的值的概率,要远远大于正态分布。