论文笔记:Learning a Wavelet-like Auto-Encoder to Accelerate Deep Neural Networks
解决问题:网络加速
通过下采样技术实现网络加速,在这种技术带来的信息损失会削弱网络性能的情况下,WAE这一算法既能有效降低图像分辨率,又能保证数据完整性,从而维持分类准确性。该算法借助小波分解理论基础,将原始图像分解为两个低分辨率版本:其中一个是包含高频细节或噪声的部分,另一个则承载着图像全局的主要特征
网络框架


Encoding layer
输入图片在编码层中被分解为IH(高频图像)和Il(低频图像)。具体过程如下:输入图片首先经过三层由3×3卷积构成的模块后,在步长为2的操作下执行一系列的降采样操作,最终生成分辨率仅为原始图片一半的高频图像与低频图像,并在此基础上施加L²范数约束。基于小波变换理论可知,在这种情况下,低频图像主要聚集了大量能量且数值较大;而高频图像则具有较小数值且能量较少。该方法利用小波变换的核心优势——对图像细节特征进行有效提取的基础上提出了新的限制策略:对于像素值较小的部分我们将其定义为高频信息子带。



Classification

该网络架构中,在右半部分被划分为上部区域与下部区域两个部分来进行特征提取:首先处理上部区域时,
通过经过一个预定义的VGG卷积模块分别提取出特征IH与IL;
随后在下部区域直接经FC层计算得到向量参数;
最后将上半部与下半部的特征向量通过逐元素相加的方式合并形成最终分类输入。
Decoding layer
通过IL和IH恢复原图像作为训练损失函数的比较


目标函数
该任务划分为三个主要阶段:
第一阶段:WAE网络的训练
在此期间将重点开展Wasserstein自编码器(WAE)网络的技术实现工作;
第二阶段:分类网络的训练
后续将逐步推进分类网络的学习过程;
第三阶段:联合优化
最终通过多轮迭代完成模型性能的整体提升
整体训练Loss[3] = 分类Loss[1] + WAE Loss[2]

分类Loss


WAE Loss

Auto-encoder(WAE)主要是看重构误差

为了获得"高频图"新增一个约束条件用于对其中一个特征图像素值的大小进行限制:

计算量分析
对于CNN,所有卷积层的总计算复杂度为:

卷积层的数量被定义为d,
通道的数量被定义为n,
卷积核的尺寸设定为s,
输出特征图的尺寸被设定为m,
输入的高频图与低频图均缩小至原尺寸的一半,
在融合网络架构中,在采用VGG网络时所使用的通道数量减少至原来的四分之一。

实验分析
1.Wavelet+CNN

2.离散小波变换(DWT:9/7实现)
该算法采用小波变换方法对图像进行分割处理,并将其划分为四个分辨率逐次减半的通道:其中cA代表低频信息近似于原始输入图像,并由小写字母l表示;cH、cV、cD分别代表高频细节部分。
值得注意的是该方法采用了更为高效的方法相比传统方法具有更快的速度优势然而与传统方法相比该算法在处理细节方面表现更为出色
传统的Wavelet Autoencoder(WAE)则倾向于通过最小化IH的能量来集中高频信息至较低层次的小写字母l位置
相比之下该算法能够更好地平衡细节提取与整体重建性能从而在保持较高识别准确率的同时显著提升了处理效率
3.Decomposition+CNN
采用了与WAE相似的思路,并将图像分解为分辨率各减半的两部分;然而,在分解通道上并未施加L2正则化,并仅通过分类损失进行训练

(a) 生成输入图像
(b) (c) 通过WAE分离得到了低频图像与高频图像(并补充了互补信息)
(c) 经过WAE分解得到了低频图像与高频图像(并提供了互补信息)
(d) (e) 基于Decomposition结合CNN方法分离得到了低频图像与高频图像(并且结果较为接近)
验证L2约束下最小化IH能量的有效性
4.分离通道的分析

5.总体结果

