2022(CVPR)InDistill: Transferring Knowledge From Pruned Intermediate Layers

发布平台:CVPR

论文链接:InDistill: Transferring Knowledge From Pruned Intermediate Layers

代码链接:https://github.com/gsarridis/InDistill.git

创新点

介绍了一种模型压缩的方法Indistill,将知识蒸馏通道剪枝结合在一个统一的框架中,以将关健信息流路径从重量级教师转移到轻量级学生。
考虑到每层的蒸馏难度和创建信息流路径的关健学习周期,采用基于课程学习的学习方案。

知识蒸馏中存在的问题

蒸馏过程中教师和学生之间通常存在宽度差异,造成了一个编码阶段,损害了信息流的保存,这对学生模仿教师的工作至关重要。
以往的方法都考虑特征映射编码来匹配教师和学生的宽度,从而折叠特征对齐。忽略了蒸馏过程中信息流路径的保留,忽略了模型之间的容量差距(即可学习参数数量的差异)。

方法

公式化

输入图像:在这里插入图片描述
教师模型:在这里插入图片描述在这里插入图片描述表示层的指数,在这里插入图片描述表示教师的在这里插入图片描述层输出。

学生模型:在这里插入图片描述在这里插入图片描述表示学生网络可学习的参数,在这里插入图片描述表示学生网络的层数(倒数第二层),在这里插入图片描述在这里插入图片描述层的输出。
教师和学生模型的类概率分布:在这里插入图片描述在这里插入图片描述表示输出类数。

逻辑蒸馏:在这里插入图片描述
强制倒数第二层表示共享最大数量的信息:在这里插入图片描述
辅助模型:在这里插入图片描述在这里插入图片描述表示层数(这里为在这里插入图片描述),在这里插入图片描述为其输出特征图。其中在这里插入图片描述在这里插入图片描述,辅助模型的类概率分布表示为在这里插入图片描述

通道剪枝

滤波器重要性评估标准:基于在这里插入图片描述范数的结构化通道剪枝的方法
在这里插入图片描述表示输入特征,在这里插入图片描述表示输出特征,在这里插入图片描述表示该层的滤波器。

伪代码

在这里插入图片描述

信息流保护KD

需要辅助模型时。设计辅助模型与学生模型具有相同的层数和相同的输出特征尺寸(长、宽)。辅助模型的特征映射通道大小在这里插入图片描述取决于学生模型的特征映射通道大小在这里插入图片描述和剪枝率在这里插入图片描述,即在这里插入图片描述
应用Alg.1后,剪枝数量在这里插入图片描述,教师模型修剪后的特征映射在这里插入图片描述 与学生模型的特征映射大小相等(文中没有明说宽、高如何进行匹配)。
特征图在这里插入图片描述在这里插入图片描述之间的损失定义为:
在这里插入图片描述
在这里插入图片描述表示在这里插入图片描述范数。
在这里插入图片描述在这里插入图片描述分别表示教师和学生的对数。教师和学生的概率分布为:
在这里插入图片描述
在这里插入图片描述
其中,在这里插入图片描述是温度项。最后,KL损失的定义如下:
在这里插入图片描述

课程学习

课程学习建议将一个困难的任务划分为子任务。
将每一层的转移作为一个单独的子任务。让学生模型的层数在这里插入图片描述
决定训练的子任务数(层数)。
在这里插入图片描述表示训练epoch的总数量,每个子任务(每层)训练的epoch计算如下:
在这里插入图片描述
其中参数在这里插入图片描述表示每一层训练期的阈值在这里插入图片描述增加期数的参数子任务的难度(层数越深,对应训练的epoch越多)。(次数)
对应于每个子任务(每层)在这里插入图片描述的epoch集合是在这里插入图片描述,其中:
在这里插入图片描述
最终损失的计算方法为:
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值