AI学习者 · 1月25日 · 广东

轻量化模型开发必备 | 中心化Kernel对齐实现大模型知识向小模型迁移

image.png

知识蒸馏作为一种有效的方法,可以弥合大规模模型和轻量级模型之间的表示差异。常用的方法包括利用适当的度量标准来最小化教师模型提取的知识和学生模型学习的知识的差异或距离。中心核对齐(CKA)被广泛用于衡量表示相似性,并已在多个知识蒸馏方法中应用。然而,这些方法都很复杂,无法揭示CKA的本质,因此无法回答如何利用CKA实现简单有效的蒸馏的问题。

本文首先从一个理论角度说明CKA的有效性,将CKA分离到最大均方差异(MMD)的上界和常数项。作者提出了一种新颖的关系中心核对齐(RCKA)框架,该框架实际上将CKA与MMD建立联系。此外,作者根据每个任务的特性动态地定制CKA的应用,其计算资源较少,但性能与以前的方法相当。

在CIFAR-100,ImageNet-1k和MS-COCO上的广泛实验表明,RCKA在几乎所有教师-学生对图像分类和目标检测上实现了最先进的效果,验证了RCKA的有效性。

1 Introduction

大量工作已经完成,将大规模模型压缩成轻量级模型。代表性的方法包括网络剪枝,模型量化,神经架构搜索[23]和知识蒸馏(KD)。其中,KD最近由于其有效性和广泛的应用而成为最热门的话题之一。特别是,KD的核心思想是通过蒸馏学习表示,将大规模和高性能模型的获得表示转移到轻量级模型中,实现精确可靠的知识转移。研究行人普遍认为,从教师到学生的知识蒸馏有两种主流方法。第一种方法是基于对数预测的蒸馏,通过利用适当的度量标准最小化教师和学生的概率预测(响应)得分。第二种方法是基于特征的蒸馏,研究模型中的中间表示知识,以进一步提高蒸馏性能。

在这些方法中,度量标准的设计在知识转移中至关重要,并吸引了学者的关注。Kornblith等人[19]提出了中心核对齐(CKA)来定量理解神经网络之间的表示。CKA不仅关注模型预测,而且强调模型内的高阶特征表示,提供全面丰富的知识转移。

近年来,[20, 18]项研究引入了CKA来定量缩小教师模型和学生模型之间学习表示的差距。无疑,这些方法已经取得了显著的成功。然而,它们的设计过于复杂,需要大量的计算资源,使得实现细粒度知识转移具有挑战性,并导致低可扩展性。此外,这些方法未能揭示CKA的本质,缺乏对CKA在知识蒸馏中的深度分析。CKA有效的原因尚未被探索。因此,作者专注于CKA的理论分析,并重新思考一个既保证简单性又保证有效性的更合理架构设计,同时具有良好的泛化能力。

在本文中,作者从一个新的角度说明了CKA的有效性,其中CKA被视为最大均方差异(MMD)的上界和常数项,具体而言。从中,作者提出了一种关系中心核对齐(RCKA)框架,该框架实际上将CKA与MMD建立联系。此外,作者在实例级任务上动态定制CKA的应用,并引入基于块的中心核对齐(PCKA),与以前的方法相比,计算资源更少,但性能具有竞争力。RCKA不仅可以直接应用于基于对数预测的蒸馏,还可以应用于基于特征的蒸馏,具有卓越的可扩展性和扩展性。作者利用CKA计算类别之间的和高阶表示信息,这更好地激励了减轻教师和学生模型之间性能差距。

为了验证作者方法的有效性,作者在图像分类(CIFAR-100 和 ImageNet-1k)和目标检测(MS-COCO)任务上进行了广泛的实验。结果表明,RCKA在几乎所有的定量比较实验中实现了最先进(SOTA)的性能,并进行了公平的比较。此外,遵循作者的处理架构,在目标检测任务中,先前的蒸馏方法的表现得到了进一步提高。

作者的贡献可以总结如下:

  1. 作者从知识蒸馏的全新角度重新思考CKA,提供了CKA在知识蒸馏中有效的原因的理论依据。
  2. 作者提出了一种关系中心核对齐(RCKA)框架,用于构建CKA与MMD之间的关系,该框架具有较少的计算资源,但性能与先前的方法相当,这验证了作者对理论分析的正确性。
  3. 作者进一步动态地定制CKA在实例级任务上的应用,并提出了一种基于块的中心核对齐(PCKA)架构用于目标检测中的知识蒸馏,这进一步提高了先前蒸馏方法的表现。
  4. 作者进行了大量的消融研究来验证RCKA的有效性,该方法在各种视觉任务上实现了最先进(SOTA)的表现。此外,作者可视化了CKA的特征信息并发现了其中新的模式。

2 Methodology

在这一部分,作者首先回顾知识蒸馏的范式,然后引入中心核对齐(CKA)的公式。具体而言,作者推导出CKA与最大均方差异(MMD)之间关系的公式,其中CKA可以分离为MMD的上界和常数项。根据上述推导,作者概述了本文的方法。作者在图像分类和目标检测中应用所提出的算法,动态地定制CKA以适应每个任务。

The Paradigm of Knowledge Distillation

image.png

Distilling with the Upper Bound

image.png

Relation-based Centered Kernel Alignment

如图1所示,作者在图像分类中提出了一种关系中心核对齐(RCKA)框架。在这个框架中,作者利用CKA作为损失函数,以确保中心相似矩阵被蒸馏,而不是强制学生模仿教师相似矩阵的不同尺度。这是非常重要的,因为模型的判别能力取决于其特征的分布,而不是其尺度,这对于分类是无关紧要的。

image.png

image.png

Patch-based Centered Kernel Alignment

在这个子节中,作者进一步将提出的RCKA方法适应到实例级任务,如目标检测。然而,直接将RCKA应用于实例级任务可能会降低性能,因为这些任务通常使用较小的mini-batch大小(例如每个GPU训练2或4个mini-batch),导致gram矩阵无法收集足够的信息。此外,增加mini-batch大小需要大量的计算资源,这在实践中是不可行的。因此,作者动态地自定义作者的RCKA方法以适应目标检测。

近年来,[26, 19]项研究发现在目标检测中,蒸馏中间层的表示比蒸馏对数更有效。因此,作者调整RCKA只针对中间层。然而,作者在分类任务中仍然遵循作者的核心思想,通过使用CKA计算不同实例之间的相似性。因此,作者将图像特征图分成几个块,并计算不同块之间的相似性。

作者重新设计的算法在图2中得到说明。在这个框架中,作者首先用大小为的块裁剪教师和学生模型的特征图,然后将特征图转换为每个块之间的gram矩阵。最后,作者计算损失并从维度中获取平均值。在这里,和分别表示分别沿着高度和宽度切割的块的数量。因此,基于块的中心核对齐(PCKA)损失可以表示为:
image.png

3 Experiments

作者在图像分类和目标检测的基准测试上进行了广泛的实验。图像分类数据集包括CIFAR-100和ImageNet-1k,目标检测数据集包括MS-COCO。

此外,作者为提出的各种方法进行了各种消融和分析。有关这些数据集的更多详细信息可以在附录A中找到。作者在CIFAR-100上使用批量大小为128和初始学习率0.1的SGD优化器,并遵循[12]中ResNet34-ResNet18对和ResNet50-MobileNet对在ImageNet-1k上的设置。其他分类和检测任务的其他设置可以在附录B中找到。作者的代码将公开供可重复性。

Image Classification

在CIFAR-100分类上,作者在9组学生-教师对中比较了最先进的基于特征的和基于对数的蒸馏算法。其中,6组对教师和学生具有相同的结构,其余的对具有不同的架构。

结果如表1所示。RCKA在4组学生-教师对中超过了其他所有算法,并在其余的对上达到了可比的性能,同时需要的计算资源和时间消耗比SOTA方法DPK和ReviewKD要少得多。计算成本的比较可以在附录D中找到。

在ImageNet-1k分类上。 作者还在大规模的ImageNet上进行实验,以评估RCKA。作者的RCKA在其他算法上实现了可比较的结果,甚至超过了它们,如表2所示。作者发现,随着类别和实例的增加,学生模仿教师的高阶分布变得更加困难。

此外,在附录8中探索了在ImageNet-1k上的ViT模型特征蒸馏。值得注意的是,RCKA超过了其他方法,这意味着RCKA具有良好的可扩展性和良好的性能。

image.png

Object Detection

在MS-COCO检测上,作者进行了三种不同检测器的比较实验,即两阶段检测器、单阶段检测器和 Anchor-Free 检测器。如表3所示,PCKA在所有三种指标上都超过了其他方法,通过将高阶的块级表示进行对齐。作者认为,在低阶特征图上模仿学生和教师特征图也可能改善PCKA的性能,通过在早期阶段模仿低阶表示,然后逐渐学习高阶和复杂的表示。

因此,作者遵循[14]的方法,通过添加辅助模仿损失,即通过卷积层将学生特征图从教师特征图中翻译过来,并使用进行监督,将其添加到检测蒸馏任务中。最终,作者从表3中得出结论,基于PCKA的模仿损失在Cascade RCNN-X101-Cascade RCNN-R50和RetinaNet-X101-RetinaNet-R50对上取得了最佳性能。作者还进行了其他四个架构的实验,如表4和表9所示。这些结果进一步验证了作者提出的方法的 effectiveness。

image.png

Ablations and Visualizations

作者在三个方面进行了消融研究:

  1. 超参数的影响
  2. 所提出模块的有效性
  3. 在训练过程中未探索到的现象。

超参数消融研究。如附录中表12,表11和表13所示,作者在mini-batch大小,的损失缩放因子和蒸馏的中间层数量方面进行了超参数消融研究。作者发现局部最优值是mini-batch大小,的损失缩放因子和层蒸馏。

image.png

MMD的上界。在定理2中,作者推导出CKA与MMD之间的关系,其中CKA是MMD的上界和常数项。为了验证这一点,作者进行了实验,如表6所示。作者注意到CKA,即MMD的上界,具有额外的更强约束。因此,与MMD相比,CKA更快、更稳定地收敛到最优解。

平均维度的选择。在PCKA框架中,作者将教师和学生模型的激活值裁剪成的形状。作者还进行了不同维度的实验,如表5所示。作者发现,在通道维上平均是优化。

划分激活图的蒸馏。作者探索将激活图划分成块的有效性。如表7所示,几种标准的蒸馏方法[13, 14, 15]都通过划分块得到了良好的效果,验证了划分块的有效性。由于块中的表示分布较小,因此可以更容易地对学生和教师进行对齐。因此,提出的PCKA架构极大地提高了以前的方法。

  1. 提供了一些可视化来展示RCKA在对数 Level 上成功地缩小了教师-学生之间的差距。特别地,作者在附录E中可视化了6组教师-学生对的对数相似性。作者发现RCKA显著地提高了对数相似性。
  2. 进一步可视化了不同检测器的训练过程以及块对RetinaNet-X101-RetinaNet-R50对的影响。结果如附录中的表4和表3所示。
  3. 首先可视化了所提出方法的混淆矩阵(见图6),然后分别可视化了训练时有无块平均不同维度的标注图像(见图7)。这些图像揭示了作者方法可以收集不同类别之间的相似性,并显示出作者在目标检测任务上方法的有效性。

image.png
image.png

4 Discussion

在图像分类任务中,作者应用PCKA。它也很好地超过了具有相同蒸馏类型的其他方法,如表14所示。然而,对于具有不同架构的教师-学生对,PCKA的表现非常糟糕。因为不同架构的激活包含更多不同和有害的表示,这使得向学生传递知识变得困难。

在通道上平均,提升性能。表7中的结果揭示了有趣的现象,即在将激活值裁剪成块后,通过对通道维度的损失进行平均,之前蒸馏方法的表现得到了提升。通过将表示值裁剪成块,可以使得教师和学生的对齐更容易,且块中的表示值分布更小。此外,将表示值裁剪成块符合作者提出的分类框架中的思想,因此PCKA可以计算块中的类间相似性和类内相似性。此外,由于余弦相似性相对于基于距离的损失具有优越性,以及Gram矩阵收集的高阶分布表示,PCKA超过了DIST和AT。

位置信息损失。在PCKA中,作者将教师和学生模型的激活值切割成块,然后将其 flatten 成一个向量。尽管这个操作会损害原始的位置信息,但性能不会下降。作者认为,CKA确保优化的重点在于分布的形状,而不是Gram矩阵中的原始值,这很重要,因为模型的判别能力取决于其特征的分布,而不是其规模。此外,在开始时,PCKA带来的效果较小,与CE损失相比。因此,CE损失促使学生模型的优化稳步进行,而从某个时刻开始,PCKA驱动学生模型对复杂和高阶表示进行对齐,提高泛化能力。

Appendix  Derivations

Revisit the formula of CKA

image.png

CKA curve in training.

为了定性分析所提出的方法,作者在训练阶段可视化了CKA相似度。如图5所示,随着训练的进行,CKA值增加,这表明RCKA在对数 Level 上缩小了教师-学生模型之间的差距。

image.png

参考

[1].Rethinking Centered Kernel Alignment in Knowledge Distillation.

作者:AI视界引擎
文章来源:AI视界引擎

推荐阅读

更多嵌入式AI干货请关注嵌入式AI专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。

推荐阅读
关注数
18801
内容数
1347
嵌入式端AI,包括AI算法在推理框架Tengine,MNN,NCNN,PaddlePaddle及相关芯片上的实现。欢迎加入微信交流群,微信号:aijishu20(备注:嵌入式)
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息