模型压缩:量化、剪枝和蒸馏

目录

量化

剪枝

知识蒸馏


量化

为了保证较高的精度,大部分的科学运算都是采用浮点型进行计算,常见的是32位浮点型和64位浮点型,即float32和double64。

对于深度学习模型来说,乘加计算量是非常大的,往往需要GPU等专用的计算平台才能实现实时运算,而模型量化是一个有效降低计算量的方法。

量化,即将网络的权值,激活值等从高精度转化成低精度的操作过程,例如将32位浮点数转化成8位整型数int8,同时期望转换后的模型准确率与转化前相近。

剪枝

深度学习网络模型从卷积层到全连接层存在着大量冗余的参数,大量神经元激活值趋近于0,将这些神经元去除后可以表现出同样的模型表达能力,这种情况被称为过参数化,而对应的技术则被称为模型剪枝。就是去掉模型中不重要的参数或者没有用的神经元。

知识蒸馏

量化和剪枝是最常用的模型压缩方法,有成熟的配套工具,但为了保证一定精度,其压缩比一般较小

知识蒸馏(Knowledge Distillation,KD),是2015 年由深度学习开山鼻祖Hinton 提出的一种模型压缩方法,是一种基于教师-学生网络思想的训练方法。

蒸馏已经成为压缩模型的主流方法之一,可以与量化和剪枝叠加使用,达到可观的压缩比。

在知识蒸馏使用的教师-学生(Teacher-Student)网络中,教师模型是“知识”的输出者,学生模型是“知识”的接受者,整个过程分为两个阶段。

1)教师模型训练:教师模型一般为参数量巨大,结构相对复杂的待压缩的模型,简称为Model-T。教师模型一般由大量数据训练而成,性能指标高于蒸馏后的学生模型。

2)学生模型训练:学生模型一般为参数量很小,结构相对简单的模型,简称为Model-S,其训练过程以学习Model-T 为主,而不是学习数据的真实标签。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值