Advertisement

[论文阅读]Adversarial Network Compression

阅读量:

目录

目标

主要贡献

方法

算法框架

损失函数

实验


这是一篇用对抗训练来进行网络压缩的论文。

论文链接 https://arxiv.org/abs/1803.10750

PPT下载地址 https://pan.baidu.com/s/1Rb8ZLPS4OgZBp9aGaj2o8Q

目标

将知识从深的、精确的模型转移到较小的模型。

主要贡献

  1. 本研究致力于开发一种抗性网络压缩机制来优化小型student网络的性能,在模仿大型teacher网络的过程中无需依赖标签信息。
  2. 本研究提出了一个增强判别器的正则化方案,在提升其识别能力的同时并未影响整体网络性能。
  3. 该框架设计灵活且具有扩展性,在多个不同的teacher-student架构中均能有效应用。

方法

算法框架

将一个深的、精确的网络定义为 teacher

f_{t}

,将一个浅的、参数少的网络定义为 student

f_{s}

在模型架构中,在有标签数据的基础上进行参数优化的过程中, 教师模型展现出良好的性能特征, 对于任意输入样本x, 该研究将这两个深度学习模型被用于解决同一类问题, 即本文关注的任务为分类问题, 其核心目标是通过设置双重损失函数来优化学生模型的学习过程。如图所示, 教师模型代表已经完成训练的分类系统, 学生模型则处于待优化状态, 通过结合L2范数约束以及对抗学习机制, 能够有效提升学生模型的学习效果与泛化能力。

损失函数

  • 对抗损失
f_{t}{k}(x),f_{s}{l}

分别对应于teacher和student网络的前一层输出特征图。其中logits层位于softmax之前,并未进行归一化处理。

  • L2损失

就是计算两个网络logits层的输出loss。

那么,两者合起来的的损失就是

  • 判别器正则化

研究表明,在生成对抗网络中使用条件生成模型时发现:考虑到判别器的设计维度相对较小,并且其架构决定了对输入数据的理解能力,在模型初期阶段确实能够较为容易地区分来自教师模型和学生模型生成的数据样本。因此建议在训练过程中引入适当的正则化机制来约束判别器的学习过程,并防止判别器在训练过程中过于强大

**** 因此,有三种做法可供选择。

1)L2正则化。强制性让判别器的权值不增加。

为了将这一项与前面提到的两项相加,判别器需要最大化这个式子,并因此在计算中添加了负号。

2)L1正则化。使得判别器的权值稀疏。

3)在判别器中使用对抗样本。

这个式子和前面的对抗损失的前半部分很像,只是

f_{t}^{k}

变成了

f_{s}^{l}

把这一项加入前面的损失函数中意味着将部分来自student生成的数据标记为由teacher生成的真实数据。在更新判别器D时不仅会利用真实标注的数据还会利用标注由teacher提供的student级别的数据即通过与这些具有鉴别能力的数据一起训练使模型更加鲁棒和准确。

为了使学生与判别器D之间的对抗过程持续时间得以延长

那么,最终的损失函数为

另外,在判别器D中加入dropout会使得效果更好。

实验

  • 判别器使用不同的网络框架
  • 判别器使用不同的正则化方法

ours这一列分类错误率最低。

ResNet-20在参数规模上约为其更深版本如ResNet-164的一小部分,在CIFAR-10数据集上的分类任务中仅略高于后者。值得注意的是该网络未采用带有标注数据的训练方式其在无标注数据下的分类性能依然优于直接从有标注数据中提取特征并用于优化深度学习模型的传统方法。通过这种方式不仅降低了对计算资源的需求还显著提升了模型泛化能力。

  • 参数量和性能与teacher网络的比较
  • 在CIFAR-10和CIFAR-100上与其他压缩方法比较

相比于其他网络压缩方法,参数少,分类错误率低 。

全部评论 (0)

还没有任何评论哟~