模型压缩

2022-10-06  本文已影响0人  xieyan0811

模型压缩

对于复杂问题建模时,深度学习模型在容纳更多参数的情况下,效果一般更好,但是模型占内存大,预测时间长的,往往限制其在小型或普通配制的硬件上使用。一般使用模型压缩方法给模型减肥,主要方法总结如下。

模型剪枝

移除对结果作用很小的参数权重,如接近0的参数。具体如去掉某些卷积核,或者卷积核中的某些权重,还有对通通道的减枝,对层的减枝,对注意力头的减枝等。
![[Pasted image 20220925094745.png]]

模型量化

减少存储权重所需的比特数,比如将 float32 降到 int8,基于KMeans的量化方案等等(将训练好的所有参数分成几簇,然后把权重转换成簇索引)。

参数共享

通过共享参数,达到减少网络参数的目的。一个不熟悉的词可由常用词定义,或者用普通单词的嵌入的稀疏组合;又如ALBERT可跨层共享所有参数。

低秩分解

低秩分解的方法运用了矩阵分解和矩阵乘法的结合律。把较大的卷积核分解为两个级联的行卷积核和列卷积核。比如:将一个3×3的卷积层,替换为一个3×1的卷积层加上一个1×3的卷积核。

知识蒸馏

将 teacher 的能力蒸馏到 student上,最近看了一些论文总结如下:

参考

一文详解文本深度学习模型的压缩

上一篇下一篇

猜你喜欢

热点阅读