基于pytorch量化感知训练(mnist分类)--浮点训练vs多bit后量化vs多bit量化感知训练效果对比
生活随笔
收集整理的這篇文章主要介紹了
基于pytorch量化感知训练(mnist分类)--浮点训练vs多bit后量化vs多bit量化感知训练效果对比
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
基于pytorch量化感知訓練–浮點訓練vs多bit后量化vs多bit量化感知訓練效果對比
代碼下載地址:下載地址
灰色線是量化訓練,橙色線是后訓練量化,可以看到,在 bit = 2、3 的時候,量化訓練能帶來很明顯的提升。
實驗分析
在 bit = 1 的時候,我發現量化訓練回傳的梯度為 0,訓練基本失敗了。這是因為 bit = 1 的時候,整個網絡已經退化成一個二值網絡了,而低比特量化訓練本身不是一件容易的事情,雖然我們前面用 STE 解決了梯度的問題,但由于低比特會使得網絡的信息損失巨大,因此通常的訓練方式很難起到作用。
另外,量化訓練本身存在很多 trick,在這個實驗中我發現,學習率對結果的影響非常顯著,尤其是低比特量化的時候,學習
總結
以上是生活随笔為你收集整理的基于pytorch量化感知训练(mnist分类)--浮点训练vs多bit后量化vs多bit量化感知训练效果对比的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于pytorch后量化(mnist分类
- 下一篇: 基于pytorch的模型剪枝+模型量化+