神经网络模型压缩优化方法:
1.优化压缩模型大致有三个方向:
1)更为精细的网络设计,简化卷积层和全连接层的形式,
2)对模型进行裁剪},在结构复杂的神经网络中,往往存在着大量的参数冗余,因此可以寻找一个适当的评定方法进行剪枝优化
3)为了保持原有模型中的数据精度,一般常见的网络中,都会以32bit的浮点类型保存模型权重。这种保存方式,增加了数据存储的大小和重载模型的计算复杂度。对于以上的情况,可以将数据进行量化或者二值化。通过量化或者二值化之后,可以对于存储空间进行压缩。
此外,还可以对卷积核进行稀疏化,将卷积核一部分裁剪为0,从而减少再次加载模型的计算量。
网络蒸馏不需要大网络的参数初始化,其他方法需要
1.网络裁剪
裁剪本质:
难点:
裁剪类型:
- filter pruning
- kernel/group pruning
- 稀疏矩阵
参数重要性:
旷世的论文:
LASSO regression
ResNet 迭代
实验(分类和回归)
通道剪枝:
裁剪浅层的网络结构。
tiny-yolo压缩与加速
基于 Tiny-yolo 的网络压缩与硬件加速方法
Tiny-yolo的网络模型占用63. 5MB的存储空间,而Yolo的模型更是达到了258MB,不利于在存储空间有限的嵌入式端存储.同时,神经网络包含了大量的卷积运算,消耗时间多.针对这两点问题,文中采用网络裁剪的方法对网络进行压缩,达到减小模型体积的目的:通过数据量化操作,对权重值进行量化,进一步减少模型所占内存,以及运行消耗的位宽;最后在嵌入式端,采用硬件加速。FPGA并行加速,提高网络运算速度.