论文阅读Mark(二) Distilling the knowledge in a neural network NIPS2014 Hinton

知识蒸馏是一种将大型模型的知识转移到小型模型的技术,通过教师网络向学生网络传授概率分布信息。SoftTarget相比于HardTarget提供了更多的信息,有助于防止过拟合。在MNIST实验中,即使学生网络未见过某些数据(如数字3),也能通过教师网络的知识传递实现有效预测,展示了其在小样本和零样本学习中的潜力。
摘要由CSDN通过智能技术生成

本篇博客笔记是对B站up主同济子豪兄讲解的知识蒸馏开山之作的重点记录整理,非原文献的raw note。

原论文:arxiv


知识蒸馏是从一个网络中提取蒸馏有用的知识到另一个网络中,使得另一个网络具备原网络的能力。能够将大模型压缩成小模型。
在这个过程中可以看作是一对网络:教师——学生网络,教师掌握的知识多,学生需要学习教师的网络。教师将TA的知识传授给学生。

Soft Target 与 Hard Target

一个分类任务,网络接受一张马的图片,得出一个预测的输出。

  • 对于Hard Target 来说,网络会直接输出预测为马的概率为1,而其他类的概率为0。
  • 而对于Soft Target 来说,网络会给出一个预测概率分布。比如预测该图片为马的概率是0.7,为驴的概率为0.4,为汽车的概率为0.1等。而不是直接输出0。
    由此我们可以看出,采用Soft Target 得到的信息量比用Hard Target 的多。在现实世界中也好理解。因为马与驴还是具有一定的相似性的,比如都有四条腿,有尾巴,脖子都比较长等;汽车中也有“马”,如德国汽车宝马,美国的野马汽车,还有法拉利的标志上也带有马。所以不能说完全没有相似性,采用Soft Target 比用Hard Target 要更好。

Soft Target 也可以抑制模型训练过拟合。

蒸馏温度T

Softmax输出 q i = e x p ( z i / T ) ∑ j e x p ( z j / T ) q_i = \frac{exp(z_i/T)}{\sum_j exp(z_j/T)} qi=jexp(zj/T)exp(zi/T)
若T= 1,则为Softmax,T可以改变,以此来将Hard Target 变成 Soft Target。

Simple demonstration

KD
Softloss 来比较教师网络与学生网络输出预测的差异。教师网络预测出第 j 类的概率作为学生网络第 j 类的Soft Target。

知识蒸馏的过程

DK prosess

实验结果

作者在MNIST手写数据集上进行了实验,预测效果十分出色,学生网络的预测准确率与教师网络相差无几。并且有意外收获。
作者在训练学生网络时,将数字3的数据全部剔除,然后得到学生网络。发现学生网络对于未见过的3也能有很好的预测效果。因为教师网络是已经训练过3这个数字的,在知识蒸馏的过程中,教师将3的有关知识和信息传授给学生网络,使其也可以预测未见过的3。这其实实现了小样本学习甚至零样本的学习。

知识蒸馏的应用场景

  • 模型压缩
  • 优化训练, 防止过拟合(潜在 的正则化)
  • 无限大、无监督数据集的数据挖掘
  • 少样本、零样本学习
  • 迁移学习
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
将神经网络中的知识进行提取,是一种将模型的信息转化为更为简洁和易于理解形式的过程。 神经网络是一种由许多神经元组成的复杂计算模型,它们通过学习和调整权重来解决各种问题。然而,神经网络通常具有大量的参数和复杂的结构,这使得它们难以解释和应用到其他领域。因此,我们需要一种方法来提取和总结神经网络中的知识,以便更好地理解和应用这些模型。 在进行神经网络知识提取时,有几种常见的方法。一种常见的方法是使用可视化技术,如热力图、激活图和网络结构图等,来可视化网络中不同层的活动模式。这些可视化技术能够帮助我们发现网络中的模式和特征,并从中推断出网络的知识。 另一种方法是使用特征提取技术,如卷积神经网络(CNN)的滤波器、自动编码器的隐藏层和循环神经网络(RNN)的隐状态等,来提取网络学习到的重要特征。这些重要特征可以帮助我们更好地理解网络学习到的信息,并将其应用到其他问题中。 此外,还有一种被称为知识蒸馏的技术,它通过训练一个较小的模型来提取大型模型中的知识。知识蒸馏通过引入目标函数和额外的训练策略,使小模型能够学习到大模型中的重要知识,并在不损失太多性能的情况下将其应用到实际问题中。 总而言之,提取神经网络中的知识是一项重要任务,它能够帮助我们更好地理解和应用这些复杂的模型。通过可视化、特征提取和知识蒸馏等方法,我们能够从神经网络中提取出有用的信息,并将其应用到其他领域或解决其他问题中。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值