论文1:One-for-All: Bridge the Gap Between HeterogeneousArchitectures in Knowledge Distillation

目录

1.论文核心

代码:https://github.com/Hao840/OFAKD

1.1 研究背景:

1.2 创新点: 

2.具体方法

2.1 重新审视异构体系结构的特性提炼

2.2 CKA方法介绍

论文:Algorithms for learning kernels based on centered alignment.

2.3 异构知识蒸馏

2.4 自适应目标信息增强

3.一些思考与启发

3.1 关于早期退出的全连接矩阵的问题

3.2 为什么早期退出可以实现异构模型的特征对齐

4.遗留问题


1.论文核心

代码:https://github.com/Hao840/OFAKD

1.1 研究背景:

  • 大多数现有的蒸馏方法,特别是基于暗示(hint-based)的方法,是在假设教师和学生模型属于同一个模型族的情况下设计的。
  • 通过使用中心核对齐(CKA)来比较异构教师和学生模型之间的学习特征,我们观察到显着的特征分歧。

1.2 创新点: 

  • 我们将中间特征投影到一个对齐的潜在空间中,例如logits空间,其中架构特定的信息被丢弃。
  • 我们引入了一个自适应的目标增强方案,以防止学生被无关信息的干扰。

2.具体方法

2.1 重新审视异构体系结构的特性提炼

通过CKA测量的中间特征的相似性热图,比较了CNN/MLP/VIT三种模型架构同架构和异架构特征之间的相似性。

 可以明显看出异构模型特征之间的差异。

2.2 CKA方法介绍

论文:Algorithms for learning kernels based on centered alignment.

CKA是一种允许实现跨架构比较的特征相似性度量,因为它可以处理具有不同维度的输入。CKA在小批量上评估特征相似性。假设\mathbf{X}\in\mathbb{R}^{n\times d_{1}}\mathbf{Y}\in\mathbb{R}^{n\times d_{2}}是由两个不同模型提取出来的n个样本的特征其中d_{1}d_{2}为特征的维度。CKA通过以下方式测量它们的相似性:

\mathrm{CKA}(\mathbf{K},\mathbf{L})=\frac{\mathcal{D}_{\mathrm{HSIC}}(\mathbf{K},\mathbf{L})}{\sqrt{\mathcal{D}_{\mathrm{HSIC}}(\mathbf{K},\mathbf{K})\mathcal{D}_{\mathrm{HSIC}}(\mathbf{L},\mathbf{L})}},

其中K=XX',L=YY' ,\mathcal{D}_{HSIC}为希尔伯特-施密特独立准则:

\mathcal{D}_{\mathrm{HSIC}}(\mathbf{K},\mathbf{L})=\frac{1}{(n-1)^2}\mathrm{tr}(\mathbf{KHLH}),

其中

H=I_{n}-\frac{1}{n}II'

2.3 异构知识蒸馏

下图提供了拟议框架的概览。

 异构特征提取的关键是对齐不匹配的表示。然而,现有方法通过卷积投影直接对齐特征的维度,这不是所有异构架构的通用解决方案。受早期退出模型架构的启发[1],我们通过向学生引入额外的退出分支来对齐logits空间中的特征。

2.4 自适应目标信息增强

虽然不同的模型在logits空间中学习相同的目标,但是它们不同的归纳偏差导致它们到达不同的目的地,即它们的预测分布是不相同的。这种差异导致了老师和学生对暗知识的理解不一致。为了弥补这一差距,我们建议增强目标类的信息,因为它总是与样本的真实的类相关,而不会带来信息失配的问题。具体为: 

1.对目标类和非目标类信息进行解耦

笔者阅读过一篇专门对目标类和非目标类进行解耦方法DKD[2],有兴趣深挖可以阅读。本文的解耦方法为:

\begin{aligned}\mathcal{L}_{\mathrm{KD}}&=-\log p_{\hat{c}}^{s}-\mathbb{E}_{c\sim\mathcal{Y}}[p_{c}^{t}\log p_{c}^{s}]\\&=-(1+\boldsymbol{p}_{\hat{c}}^{t})\log\boldsymbol{p}_{\hat{c}}^{s}-\mathbb{E}_{c\sim\mathcal{Y}/\{\hat{c}\}}[\boldsymbol{p}_{c}^{t}\log\boldsymbol{p}_{c}^{s}],\end{aligned}

其是将目标类和非目标类的logits信息分开引导,用以增强对目标类信息的增强。进一步,我们将调制参数\gamma加入到(1+p_{\hat{c}}^{t})项:

\mathcal{L}_{\mathrm{OFA}}=-(1+\boldsymbol{p}_{\hat{c}}^t)^\gamma\log\boldsymbol{p}_{\hat{c}}^s-\mathbb{E}_{c\sim\mathcal{Y}/\{\hat{c}}\}[\boldsymbol{p}_c^t\log\boldsymbol{p}_c^s].

为了了解不同 \gamma下OFA损失的表现,将其二项式展开:

\begin{aligned} \mathcal{L}_{\mathrm{OFA}}& =-\sum_{k=0}^{\gamma}\binom{\gamma}{k}(\boldsymbol{p}_{\hat{c}}^{t})^{k}\log p_{\hat{c}}^{s}-\mathbb{E}_{c\sim\mathcal{Y}/\{\hat{c}\}}[\boldsymbol{p}_{c}^{t}\log p_{c}^{s}] \\ &=-(1+\boldsymbol{p}_{\hat{c}}^{t})\log\boldsymbol{p}_{\hat{c}}^{s}-\mathbb{E}_{c\sim\mathcal{Y}/\{\hat{c}\}}[\boldsymbol{p}_{i}^{t}\log\boldsymbol{p}_{i}^{s}]-(\sum_{k=1}^{\gamma}\binom{\gamma}{k}(\boldsymbol{p}_{\hat{c}}^{t})^{k}-\boldsymbol{p}_{\hat{c}}^{t})\log\boldsymbol{p}_{\hat{c}}^{s} \\ &=\mathcal{L}_{KD}+-(\sum_{k=1}^{\gamma}\binom{\gamma}{k}(\boldsymbol{p}_{\hat{c}}^{t})^{k}-\boldsymbol{p}_{\hat{c}}^{t})\log\boldsymbol{p}_{\hat{c}}^{s}. \end{aligned}

当 \gamma=1时OFA损失与寻常的KD损失一致,当\gamma=2时则损失为:

\mathcal{L}_{\mathrm{OFA},\gamma=2}=\mathcal{L}_{KD}+-(\boldsymbol{p}_{\hat{c}}^{t}+(\boldsymbol{p}_{\hat{c}}^{t})^{2})\log\boldsymbol{p}_{\hat{c}}^{s}.

这样做可以保证当教师的目标类置信度低,也就是不自信时, 高阶项衰减的很快,这样可以避免学生模型从不自信的教师模型学习。

3.一些思考与启发

3.1 关于早期退出的全连接矩阵的问题

每个stage的特征都会经过一个全连接矩阵最终输出一个logits值,与教师模型最终输出的logits做一个OFA损失,在这个损失函数的引导下,每个stage的全连接矩阵都会被更新成提取特征分类信息的作用。

3.2 为什么早期退出可以实现异构模型的特征对齐

通过特征投影将特征投影到logits空间,在logits空间中的特征表示,已经去除了与特定架构相关的特性。

4.遗留问题

 教师模型使用最后一层的logits,其已经是多层stage之后的结果,学生模型每一层stage都跟他对齐会不会出现信息不对称问题。

[1]. MULTI-SCALE DENSE NETWORKS FOR RESOURCE EFFICIENT IMAGE CLASSIFICATION

[2]. Decoupled Knowledge Distillation

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值