目录
1.卷积网络的压缩方法
在一定程度上,网络越深,参数越多,模型越复杂,其最终效果越好。神经网络的压缩算法是,旨在将一个庞大而复杂的预训练模型(pre-trained model)转化为一个精简的小模型。
按照压缩过程对网络结构的破坏程度,我们将模型压缩技术分为“前端压缩”和“后端压缩”两部分。
+ 前端压缩,是指在不改变原网络结构的压缩技术,主要包括`知识蒸馏`、紧凑的模型结构涉及以及`滤波器(filter)层面的剪枝(结构化剪枝)`等;
+ 后端压缩,是指包括`低秩近似`、未加限制的剪枝(非结构化剪枝/稀疏)、`参数量化`以及二值网络等,目标在于尽可能减少模型大小,会对原始网络结构造成极大程度的改造。
总结:前端压缩几乎不改变原有网络结构(仅仅只是在原模型基础上减少了网络的层数或者滤波器个数),后端压缩对网络结构有不可逆的大幅度改变,造成原有深度学习库、甚至硬件设备不兼容改变之后的网络。其维护成本很高。
2.低秩近似
简单理解就是,卷积神经网络的权重矩阵往往稠密且巨大,从而计算开销大,有一种办法是**采用低秩近似的技术**将该稠密矩阵由若干个小规模矩阵近似重构出来,这种方法归类为低秩近似算法。
一般地,行阶梯型矩阵的秩等于其“台阶数”-非零行的行数。
本文总结了卷积网络的压缩方法,包括前端压缩(知识蒸馏、滤波器剪枝)和后端压缩(低秩近似、参数量化、二值化网络)。讨论了低秩近似降低计算开销,剪枝算法衡量神经元重要性,参数量化减少存储开销,以及二值化网络的训练策略。强调了二值网络设计的注意事项,如避免1x1卷积和合理调整激活位数。最后提到了浅层/轻量网络在特定任务中的应用。
订阅专栏 解锁全文
6944

被折叠的 条评论
为什么被折叠?



