知识蒸馏算法原理

75 篇文章 15 订阅
订阅专栏
74 篇文章 6 订阅
订阅专栏
52 篇文章 4 订阅
订阅专栏

知识蒸馏算法原理

蒸馏”的概念大概就是将本身不够纯净的水通过加热变成水蒸气,冷凝之后就成更纯净的水

知识蒸馏同样使用这种原理,将不太纯净的“知识”通过“蒸馏”的方式获得更加有用或者纯净的“知识”

体现在神经网络中如下图所示:

一个大而臃肿,但知识丰富且高效的“教师网络”,通过转换精准将特定领域的知识传授给“学生网络”,让“学生网络”在某个方面做得很好,并且不那么臃肿,类似“模型压缩”

为什么不直接使用教师网络?因为将算法应用在现实生活中很多设备的算力会被限制,因此需要尽可能减少算力使用,因此使用大模型训练小模型,将 小模型部署在边缘计算设备

近些年来,预训练大模型的使用越来越广泛,并且参数规模每年增加10倍。大模型预训练都是由大公司耗费大量算力得来,在部署时大多会采用云服务器的方式进行,但是随之而来的问题就是网络延迟和必须要有网络

因此可以看到轻量化网络是以后的一个主流,压缩网络还可以使用一下方法:

作者介绍

知识蒸馏概念有人工智能教父Hinton,他为人工智能发展做出了巨大贡献,提出反向传播、玻尔兹曼机、dropout、AlexNet、动量优化器、知识蒸馏等,2019年获得图灵奖,与LeCun、Bengio并称深度学习三巨头

google工作了20年的老员工,其中谷歌大部分基础框架是这他完成的,一名传奇的程序员

知识的表示与迁移

将一匹马的图片进行识别,他可能会识别为驴或者是汽车,通过hard targets的标签进行训练,之后将图片出入模型进行识别,可以得到一个soft targets,从soft targets中可以看出马的概率是比较大的,识别为驴的概率和识别为汽车的概率都是比较小的,同样可以看出马和驴的相关性是比较小的,马和汽车的相关性也是比较小的,同样的驴和汽车的相似度也是很小。因此soft targets可以传递出更多的信息,可以使用soft targets去训练学生网络

类似于上面的例子,如果使用手写数据集进行预测,可以看到soft targets给出了输入测试的数字和0-9的数字相似度,它不仅给出了这个数字更像7和9,也给了它有多不像0,同样证明soft targets具有更多信息和知识

总结:Soft Lable 包含了更多“知识”和“信息”像谁,不想睡,有多像,有多不像,特别是非正确类别概率的相对大小(驴和车)

因此我们接下来要做的就是,让教师网络通过Hard Target训练输出的Soft Target,作为学生网络的输入训练学生网络。

蒸馏温度T

Soft Target的输出还不足够“Soft“,因此在对其进行处理,新增一个蒸馏温度T,T使用在softmax函数中,修正输出标签的soft度,如下图,当T为1是,整个式子就是原始的softmax函数,当T等于3时,可以看到softmax的曲线改变了很多,相关分类的相似度降低了,其他不相关分类的相似度有所增加。左下角的图可以看到,当T变大,每个分类所获得的相似度就越平均(越soft),太大的话每个分类的相似度就会相同,越小会发现每个类别的差异会很大。softmax是做归一化,凸显每个分类之间的差别

添加蒸馏温度T的学生网络和教师网络softmax计算对比

知识蒸馏过程

首先教师网络和学生网络都要经过添加了蒸馏温度T的softmax,二者进行一个loss求值,这个loss被称为disiliation loss,这个过程是学生网络在模拟老师网络的预测结果。

学生网络还会使用不添加蒸馏温度T的softmax进行一次计算,然后将结果和hard label进行一次loss计算,这里的loss称为student loss,这部分是学生网络在模拟真正的结果

最后的loss函数就是disiliation loss和student loss的加权求和

注:三种loss的计算方式及距离在蒸馏温度T章节的图2有例子

实验结果

图像分类的效果:

知识蒸馏具有覆盖的效果,例如当训练学生网络的时候没有使用狗这个类别,但是教师网络训练时具有这个分类,在完成知识传递后发现学生网络同样可以识别狗这个类别,因为在蒸馏过程中教师网络将自己学习到的特征知识都传递给了学生网络,学生网络也从中学习到了新知识。(类似于老师给学生讲课,虽然学生没有见过真正的飞机,但是老师见过,给学生描述了很多关于飞机的细节,当学生见到飞机时也可以分辨出飞机)(零样本学习)

语音识别:

发现学生网络和教师网络的效果十分相似,学生网络更轻量

使用使用更少的数据集去训练网络,有效的防止过拟合。如果常规网络中使用100%训练出一个模型,如果使用其中3%重新训练模型,会发现训练过程中精度高,测试精度低,出现过拟合,但是如果将3%的数据放在学生网络中就不会出现过拟合情况

应用场景

知识蒸馏背后的机理

绿色是教师网络求解空间,蓝色是学生网络求解空间。红色为教师网络的答案空间,浅绿色为学生网络的答案空间,橙色是在知识蒸馏的情况下得到的答案空间也是最优解。

如果不加引导学生网络会在自己的求解空间中试探着寻找,最后找到浅绿色的答案,在增加了教师网络之后,学生网络查找求解空间时,老师网络会给予指导,让学生网络得到的答案更准确,或者让其往教师网络的答案空间靠。所以知识蒸馏会得到更轻便且效果好的模型

bert给出的解释(这里没有翻译,需要就自己翻译吧)

自己漫无目的翻书,不如师傅手把手教

Soft targets VS lable smoothing

二者对比,相比之下Soft targets保留的信息更多,从直方图上可以看到,lable smoothing突出了正确分类,其他错误类别都拉成相同的,没有Soft targets这样每个类对比明确,这样在学习过程中就不能明确每一种类的类别。

知识蒸馏发展趋势

知识蒸馏是一个人工智能的通用方法,可以应用在各个领域

1)教学相长

        常规的知识老师网络单方面的输出,如果添加教师网络接受学生的矫正,也是可以的

2)助教、多个老师、多个同学

        新增老师网络或者使用多个学生网络,助教也是一个比较重要的角色,可以增加助教网络

3)知识的表示(中间层)、数据集蒸馏、对比学习

        知识蒸馏只是做了最后一层的softmax,可以增加中间层的蒸馏,或者老师将更多知识给学生,不仅仅是最后一层。下图三个角度,Response-Based、Feature-Based、Relation-Based都可以作为研究角度,知识蒸馏只是最后输出的Response-Based

Response-Based

Feature-Based

Relation-Based

指定层数学习:

学生的第一层学习老师的第二层,学生第二层学习老师的第五层(实现中间层蒸馏,脑回路的传授)

对比学习也是一个大的方向

4)多模态、知识图谱、预训练大模型的知识蒸馏

        多模态数据(语音、图像、文字结合)

知识蒸馏代码库

OpenMMLab模型压缩工具箱

知识蒸馏在边缘计算设备上的部署
程序员光剑
08-07 739
知识蒸馏在边缘计算设备上的部署 1. 背景介绍 1.1 边缘计算的兴起 随着物联网、5G等技术的发展,越来越多的计算任务需要在边缘设备上进行处理。边缘计算可以大幅减少数据传输的延迟,提高响应速度,节省网络带宽。然而,边缘设备通常面临着计算资源
知识蒸馏Knowledge Distillation原理与代码实例讲解
程序员光剑
06-05 862
1. 背景介绍 在深度学习领域,模型压缩和加速是一个重要的研究方向。知识蒸馏(Knowledge Distillation)是一种有效的模型压缩技术,它可以将大型、复杂的模型压缩为较小、更高效的模型,同时保持较好的性能。本文将介绍知识蒸馏的基本原理、核心概念与联系,并通过代码实例详细讲解其实现过程。 2.
ViT:5 Knowledge Distillation
最新发布
鲁班模锤
06-23 1190
知识蒸馏是一种技术,在这种技术中,较小的模型从更大、更复杂的模型中学习以复制其性能,从而在保持预测准确性的同时实现高效部署。视觉转换器(ViT)的知识蒸馏 (KD)技术可分为两种主要类型:同态KD 和异态KD。
知识蒸馏(Knowledge Distillation)
热门推荐
AI Flash
06-04 18万+
1、Distilling the Knowledge in a Neural Network Hinton的文章"Distilling the Knowledge in a Neural Network"首次提出了知识蒸馏(暗知识提取)的概念,通过引入与教师网络(teacher network:复杂、但推理性能优越)相关的软目标(soft-target)作为total loss的一部分,以诱导学...
深度学习方法(十五):知识蒸馏(Distilling the Knowledge in a Neural Network),在线蒸馏
Bin 的专栏
10-15 7万+
Distilling the Knowledge in a Neural Network 这篇介绍一下Hinton大神在15年做的一个黑科技技术,Hinton在一些报告中称之为Dark Knowledge,技术上一般叫做知识蒸馏(Knowledge Distillation)。核心思想是通过迁移知识,从而通过训练好的大模型得到更加适合推理的小模型。这个概念最早在06年的Paper: Model C...
知识蒸馏(Knowledge Distillation)
Cuibaby的博客
11-25 3377
关于知识蒸馏,你一定要了解的三类基础算法
知识蒸馏 | 知识蒸馏算法原理与其他拓展介绍
Clichong
03-19 6908
如有错误,恳请指出。 这篇博客将记录我看视频后对知识蒸馏的笔记,视频链接见参考资料[1],其中包含知识蒸馏算法原理(训练流程与测试流程),以及知识蒸馏能够正常工作的背后机理与其发展的趋势及展望。 在这篇博客中,主要都是介绍没有涉及具体的代码,我另外还将会记录一下知识蒸馏的测试过程,见另外的一篇博客。 文章目录框架1. 知识蒸馏算法原理1.1 知识的表示与迁移1.2 训练流程1.3 推理过程1.4 KD与Labe Smoothing的区别2. 知识蒸馏的应用场景3. 知识蒸馏的背后机理4. 知识蒸馏.
知识蒸馏知识蒸馏(Knowledge Distillation)技术详解
Roaddd的博客
02-24 2万+
知识蒸馏综述
知识蒸馏-基于Pytorch实现的语义分割结构化知识蒸馏算法-附项目源码+流程教程-优质项目实战.zip
06-01
通过逐步实践,学习者可以深入理解知识蒸馏原理,并掌握在实际项目中应用的方法。 在训练过程中,我们将监控模型的性能,调整超参数如学习率、知识蒸馏的温度因子等,以找到最佳的平衡点。一旦训练完成,我们可以...
知识蒸馏算法原理是什么?
01-24
知识蒸馏算法原理是通过将一个复杂的模型(称为教师模型)的知识传递给一个简化的模型(称为学生模型),以提高学生模型的性能和泛化能力。知识蒸馏的目标是在保持学生模型的性能的同时,减少其复杂度和计算资源的...
知识蒸馏-基于Pytorch实现的数据集蒸馏算法-附项目源码+流程教程-优质项目实战.zip
06-01
总之,这个“知识蒸馏-基于Pytorch实现的数据集蒸馏算法”项目提供了一个全面的学习平台,涵盖了理论、实践和代码实现,对于想深入了解和应用知识蒸馏的开发者来说,是一个宝贵的资源。通过跟随教程和源码,你可以...
知识蒸馏-基于Pytorch实现的知识蒸馏+自监督学习算法训练-附项目源码+优质项目实战.zip
06-01
一、知识蒸馏原理 知识蒸馏的基本思想是利用教师模型的软目标(即概率分布,而非单一的类别标签)来指导学生模型的学习。教师模型通常是经过充分训练的大型网络,其预测概率包含了丰富的类别间关系信息。学生模型则...
蒸馏算法闲聊
weixin_43128028的博客
10-03 1693
蒸馏算法的经典论文为《Distilling the Knowledge in a Neural Network》 解决问题就是,在使用的时候,把复杂模型变简单,把大模型变小。所以叫蒸馏。下图是我看到最明白的整理模型图分享一下地址 简述过程 首先说明,此处一般指多分类网络。硬标签指0、1;软标签指概率; 1、用硬标签训练大网络(硬标签) 2、用训练好的大网络来得到样本的软标签 3、用软标签和硬标签...
知识蒸馏原理
原来是个傻子,请坐 !!!
12-29 888
大模型包含的知识(特征)比较冗余,知识蒸馏就是将有用的知识(特征)进行迁移、泛化,最后小模型的预测结果和大模型非常相似。软标签:给出了三个类别的概率,马和驴的概率较高,说明两者相似度高,马和汽车概率差异大,说明两者相似度低。无限大、无监督数据集:将这些数据交给教师网络,教师网络得出结果,然后教师会交学生如何得出相应的结果。通过硬标签对教师网络进行训练,得出软标签,然后用软标签训练学生网络,就可以得到更多的信息。老师网络大,将老师的知识迁移到学生(蒸馏),学生的网络结构小。
知识蒸馏基本原理
null的专栏
09-12 2343
知识蒸馏通过对Teacher模型的压缩得到效果接近的Student模型,由于网络模型复杂度的减小,使得压缩后的Student模型的性能得到较大提升。
知识蒸馏Knowledge Distillation
CloudCver
12-11 517
知识蒸馏是模型压缩的一个重要方法,本文简要介绍了什么是知识蒸馏知识蒸馏Knowledge Distillation 1.什么是知识蒸馏 我浅谈一些我的看法,详细内容可以参考这篇文章 [https://zhuanlan.zhihu.com/p/90049906] 简单来说,就是我们一般训练模型时,可能为了有一个好的效果,就会加大网络深度,或者用一些复杂的网络,这样参数量就会好大…那么这么一个模型...
深度学习模型压缩算法综述(三):知识蒸馏算法+实战
梁瑛平的博客
05-31 1827
深度学习模型压缩算法综述(三):知识蒸馏算法本文禁止转载项目地址:联系作者:知识蒸馏:分类模型训练目标:two-stage检测模型训练目标:基本思路:损失函数:one-stage检测模型训练目标:基本思路:损失函数:基于特征的NMS算法:Deep Mutual Learning:基本思路:基本原理:迭代训练:目标检测模型知识蒸馏实验一:环境参数:项目地址:实验结果:目标检测模型知识蒸馏实验二:环境参数项目地址:实验结果:关注我的公众号:联系作者: 本文禁止转载 项目地址: https://github.c
一文全览 | 知识蒸馏算法汇总
小白学视觉
03-06 654
作者|AI浩 编辑| 小书童原文链接:https://zhuanlan.zhihu.com/p/583273832点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达知识蒸馏有两大类:一类是「logits蒸馏」,另一类是「特征蒸馏」。「logits蒸馏」指的是在softmax时使用较高的温度系数,提升负标签的信息,然后使用Student和Teacher在高温softmax...
基于知识蒸馏的模型压缩和加速
09-18 468
       动机:   目标:想要获得一个实时的模型,且尽可能的准确。   我们有一个大模型性能很好,但是很慢:      我们有个小模型速度很快,但是性能很差:      动机:面临的挑战   1、由于容量和能力,小模型很难达到一个很好的性能。   2、精确度和模型压缩之间的差距还是很大   3、物体检测比分类要困难得多:     a、 标签的计算更加昂贵 ...
写文章

热门文章

  • Neurocomputing投稿记录 20782
  • 知识蒸馏算法原理 9962
  • Deformable Attention学习笔记 9817
  • U-Net网络变形综述 7702
  • ViT(Vision Transformer)论文笔记 7077

分类专栏

  • 目标检测 18篇
  • 经典论文阅读 75篇
  • python 14篇
  • 力扣 1篇
  • c++学习 10篇
  • 运维 9篇
  • mongodb 3篇
  • iptables操作 1篇
  • supervisor 1篇
  • mysql 1篇
  • 深度学习环境 42篇
  • 环境部署 9篇
  • 深度学习 74篇
  • tensorflow 2篇
  • 应用实例 1篇
  • 编程基础 1篇
  • 使用模型 10篇
  • 软件介绍 1篇
  • tensorboard 1篇
  • 深度学习框架 52篇

最新评论

  • Neurocomputing投稿记录

    啥也不会写选手: 谢谢🙏谢谢🙏知道啦🆗

  • Neurocomputing投稿记录

    啥也不会写选手: 我没投这个表情包表情包祝好

  • MMdetection自定义数据集训练及相关配置

    m0_74009607: 已经解决啦,谢谢博主回答

  • MMdetection自定义数据集训练及相关配置

    麻花地: 应该是配置文件的问题 建议debug看一下

  • Neurocomputing投稿记录

    麻花地: 没有投开源 你可以试试

大家在看

  • 基于django+vue基于B_S架构的在线作业管理系统的设计与实现【开题报告+程序+论文】-计算机毕设
  • 基于django+vue基于B_S架构的实验室开放管理系统【开题报告+程序+论文】-计算机毕设
  • 国自然基金项目撰写技巧、技术路线与ChatGPT融合应用
  • 数据结构:单链表
  • 剖解反转链表 31

最新文章

  • MMdetection自定义数据集训练及相关配置
  • git上传代码(第一次或已有代码)
  • 华为诺亚实验室VanillaNet学习笔记
2024年1篇
2023年17篇
2022年85篇
2021年15篇
2019年5篇

目录

目录

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

玻璃钢生产厂家主题公园玻璃钢卡通形象雕塑平凉景区玻璃钢雕塑公司商场深圳美陈公司江苏多彩玻璃钢雕塑定制白城卡通玻璃钢雕塑东莞市玻璃钢雕塑生产厂家玻璃钢园林雕塑报价江油玻璃钢园门头雕塑句容玻璃钢牌匾雕塑丰都玻璃钢座椅雕塑工艺玻璃钢人物雕塑销售厂家大型玻璃钢雕塑制作方法廊坊诸城玻璃钢人物雕塑哈密玻璃钢雕塑造型玻璃钢青蛙雕塑加工厂 重庆赤峰公园玻璃钢雕塑生产厂家贺州市玻璃钢雕塑玻璃钢雕塑好吗怒江玻璃钢座椅雕塑浙江通道商场美陈厂家直销玻璃钢雕塑大型滁州人物玻璃钢雕塑市场天津欧式玻璃钢雕塑图片泰州玻璃钢雕塑工程南京玻璃钢卡通雕塑报价张家界玻璃钢雕塑厂家玻璃钢浮雕雕塑厂家定做新余桃子玻璃钢雕塑厂24孝玻璃钢雕塑成都 熊猫 玻璃钢 雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化