ECCV 2020 | 自监督任务辅助的知识蒸馏

本文探讨了一种利用自监督任务辅助知识蒸馏的方法,即SSKD,它在ECCV 2020上被接收。通过对比学习等自监督任务,SSKD在提升模型压缩效率和学生模型性能方面展现出优势,尤其在抵抗过拟合和应对数据限制方面表现出色。
摘要由CSDN通过智能技术生成

本文介绍了一种利用自监督任务辅助知识蒸馏的方法:Knowledge Distillation Meets Self-Supervision [1]. 这篇文章(以下简称SSKD)来自香港中文大学和南洋理工大学,被ECCV 2020接收。

本文用一种简洁易理解的方式来分享这篇工作的思路来源,希望对读者有所启示。

模型压缩与知识蒸馏

近年来,随着底层计算硬件和分布式平台的快速发展,卷积神经网络(CNN)向着更宽、更深的方向大步前进,这些模型有着优异性能的同时,过大的模型规模和过长的推理时间限制了它们向移动设备迁移的可能,为解决这一问题,多种模型压缩算法被提出,旨在压缩大模型,以尽可能小的性能损失部将其部署在计算资源受限的移动设备上。

模型压缩有很多种选择,如剪枝(pruning)维持模型结构不变,试图剪掉对网络影响不大的通道(channel),如量化(quantization)将32-bit的高精度计算降至8-bit的低精度计算,本文要讨论的知识蒸馏(knowledge distillation)也是模型压缩的一种,由Hinton [2]在2015年首次提出。

图1 知识蒸馏框架

不同于剪枝和量化,知识蒸馏并非去修改一个已有的大模型,而是构建一个新的小模型,期望在大模型的监督下,小模型的性能可以得到提升,如图1所示,通常称大模型为教师模型(teacher),称小模型为学生模型(student)。

Hinton提出知识蒸馏基于这样一个观察:一个训练好的模型在测试时,给出的预测结果并不是one-hot形式(某一类为1,其余类全0)的,对于某一张测试图像,即使模型分类正确,在错误的类别上模型仍然会给出一些值较小但非零的概率。

Hinton认为这些小而非零的值包含类与类之间的相似度关系,例如输入一张狗的图像,模型可能在狗的类别上给出0.7的概率,而在猫和狼的类别上给出0.1的概率,这种类间关系是模型在训练过程中基于数据集自动学会的,能够提供比人工标注的one-hot标签更丰富的信息,用一个训好的大模型的输出来监督另一个小模型ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值