1. 程式人生 > >深度學習神經網路量化

深度學習神經網路量化

主要問題

DNN(Deep Neural Networks)的冗餘性決定了引數個數不會對網路的精度造成影響。此外,SGD(Stochastic Gradient Descent)所需要的精度僅為6~8bit,因此合理的量化網路也可保證精度的情況下減小模型的儲存體積

影響

DNN壓縮看參考Stanford大學Han Song博士的幾篇論文,如下:

  • Learning both Weights and Connections for Efficient Neural Networks

  • Regularizing Deep Neural Networks with Dense-Sparse-Dense Training

  • Compressing Deep Neural Networks with Pruning , Trained Quantization and Huffman Coding

演算法的主要實現思路是發現對網路貢獻較小的引數並精簡,然後重新訓練精簡後的稀疏網路以達到減少非0網路引數的個數並保留或提高網路精度的目的,此類方法屬於改變網路密度類方法。
這裡寫圖片描述
圖1 Deep Compression的深度神經網路剪枝,量化和編碼的示意框圖。

量化技術

深度神經網路的量化技術主要可以分為兩類:完整訓練後量化和訓練時量化。與改變密度類方法不同,量化類的方法屬於改變網路多樣性的方法,容易造成精度損失。
完整訓練神經網路後,再執行量化類技術主要針對已完整訓練的網路

https://www.zhihu.com/question/40503595