日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【知识星球】剪枝量化初完结,蒸馏学习又上线

發布時間:2025/3/20 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【知识星球】剪枝量化初完结,蒸馏学习又上线 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

歡迎大家來到《知識星球》專欄,這里是網絡結構1000變小專題,模型壓縮是當前工業界的核心技術,我們這一個月一直在更新相關的內容,剛剛更新完了一批剪枝和量化相關的文章,最近又開始更新蒸餾學習相關的內容。

作者&編輯 | 言有三

1 剪枝

剪枝是一項古老的技術,從上個世紀傳承至今,在學術界和工業界相關的研究工作都是很活躍的。剪枝根據不同的粒度有很多種,小到一個卷積連接,大到一個網絡層。

下面是Google關于剪枝的一個典型研究。

有三AI知識星球-網絡結構1000變

To prune, or not to prune

本文探討了具有同樣大小的稀疏大模型和稠密小模型的性能對比,在圖像和語音任務上表明稀疏大模型普遍有更好的性能。

作者/編輯 言有三

模型剪枝是一項重要的模型壓縮技術,它給網絡參數帶來了稀疏性,在開源框架中可以通過和權重矩陣大小相等的掩膜來實現。

那么,剪枝到底對性能會有什么影響呢?首先看Inception V3模型的實驗,在稀疏性分別為0%,50%,75%,87.5%時的結果,此時模型中非零參數分別是原始模型的1,0.5,0.25,0.128倍,即實現了1,2,4,8倍的壓縮。

可以看到,在稀疏性為50%,性能幾乎不變。稀疏性為87.5%時,指標下降為2%。

上表展示了MobileNet的實驗結果,分別比較更窄的MobileNet和更加稀疏的MobileNet的結果,可以發現稀疏的MobileNet性能明顯優于稠密的MobileNet。

75%的Sparse Model比0.5倍寬的Dense Model在top-

1指標上超出了4%,而且模型更小。90%的Sparse Model比0.25倍寬的Dense Model在top-1指標上超出了10%,模型大小相當。

從這里可以看出剪枝真的是一個非常有前途的課題,值得研究。

[1]?Zhu M, Gupta S. To prune, or not to prune: exploring the efficacy of pruning for model compression[J]. arXiv preprint arXiv:1710.01878, 2017.

其他相關的內容如果感興趣可以移步有三AI知識星球。

2 量化

量化是深度學習模型在各大硬件平臺落地的重要基礎技術,從全精度到8bit及以下的相關研究和實踐都非常多。早期的研究關注在訓練后模型的權重量化,而現在更多的研究已經集中在訓練過程中同時完成量化,并且并不僅僅限制在模型的權重,而是從權重到激活,甚至是誤差和梯度,并且開始關注混合精度量化,下面是一個典型的研究。

有三AI知識星球-網絡結構1000變

HAQ

HAQ(Hardware-Aware Automated Quantization with Mixed Precision)是一個自動化的混合精度量化框架,使用增強學習讓每一層都學習到了適合該層的量化位寬。

作者/編輯 言有三

不同的網絡層有不同的冗余性,因此對于精度的要求也不同,當前已經有許多的芯片開始支持混合精度。通常來說,淺層特征提取需要更高的精度,卷積層比全連接層需要更高的精度。如果手動的去搜索每一層的位寬肯定是不現實的,因此需要采用自動搜索策略。

另一方面,一般大家使用FLOPS,模型大小等指標來評估模型壓縮的好壞,然后不同的平臺表現出來的差異可能很大,因此本文使用了新的指標,即芯片的延遲和功耗。

搜索的學習過程是代理Agent接收到層配置和統計信息作為觀察,然后輸出動作行為即權值和激活的位寬。其中一些概念如下:

(1) 觀測值-狀態空間,一個10維變量,如下:

(2) 動作空間,使用了連續函數來決定位寬,離散的位寬如下:

(3) 反饋,利用硬件加速器來獲取延遲和能量作為反饋信號,以指導Agent滿足資源約束。

(4) 量化,直接使用線性量化方法,其中s是縮放因子,clamp是截斷函數。

c的選擇是計算原始分布和量化后分布的KL散度,這也是很多框架中的做法。

(5) 獎勵函數,在所有層被量化過后,再進行1個epoch的微調,并將重訓練后的驗證精度作為獎勵信號。

(6)代理,使用了深度確定性策略梯度(DDPG)方法。

下面我們看實驗結果,這是延遲約束量化下的結果。

上圖是MobileNet-V1/V2模型在邊緣端和云端設備上的實驗結果,與固定的8bit量化方法相比,分別取得了1.4倍到1.95倍的加速。

上圖分別是邊緣端和云端設備上MobileNet-V1各個網絡層的量化特點,可以發現在邊緣端設備上depthwise卷積有更少的bits,pointwise有更多,在云端則是完全相反。這是因為云設備具有更大的內存帶寬和更高的并行性,而depthwise就是內存受限的操作,pointwise則是計算受限的操作,MobileNet-V2上能觀察到同樣的特點。

另外還有能量約束和模型大小約束的結果,讀者可以讀原始論文獲取細節。

[1] Wang K, Liu Z, Lin Y, et al. HAQ: Hardware-Aware Automated Quantization with Mixed Precision[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2019: 8612-8620.

更多相關內容感興趣請移步有三AI知識星球。

3 蒸餾學習

人類學習都需要一個經驗更加豐富的老師引導,這一思想也可以更自然地遷移到深度學習模型的訓練上,即知識蒸餾(Knowledge Distilling)技術,由此引發了很多的相關研究,大佬云集。下面是Hinton研究組最早期的經典方法。

有三AI知識星球-網絡結構1000變

Knowledge Distilling

知識蒸餾(Knowledge Distilling)是一項重要的模型壓縮技術,它將Teacher模型的知識遷移到了Student模型上,有著很廣泛的應用。

作者/編輯 言有三

知識蒸餾法包含了一個大模型,也被稱為teacher模型,一個小模型,也被稱為student模型,teacher模型和student模型的訓練是同時進行的。

Hinton最早在文章“Distilling the knowledge in a neural network”中提出了這個概念,核心思想是一旦復雜網絡模型訓練完成,便可以用另一種訓練方法從復雜模型中提取出來更小的模型。

“蒸餾”的難點在于如何縮減網絡結構但保留有效信息,文中以softmax分類為例子,T就是一個常量參數:

當T=1時,這就是softmax的定義,當T>1,稱之為soft softmax,T越大,因為Zk產生的概率差異就會越小。

文中提出這個方法用于生成軟標簽,然后將軟標簽和硬標簽同時用于新網絡的學習。當訓練好一個模型之后,模型為所有的誤標簽都分配了很小的概率。然而實際上對于不同的錯誤標簽,其被分配的概率仍然可能存在數個量級的懸殊差距。這個差距,在softmax中直接就被忽略了,但這其實是一部分有用的信息。文章的做法是先利用softmax loss訓練獲得一個大模型,然后基于大模型的softmax輸出結果獲取每一類的概率,將這個概率,作為小模型訓練時的標簽,網絡結構如上圖。真實的損失函數包含了硬標簽(hard label)和軟標簽(soft label)兩部分。

MNIST和JAT數據集上的結果都驗證了該方法的有消性,如下圖:

[1] Hinton G, Vinyals O, Dean J. Distilling the knowledge in a neural network[J]. arXiv preprint arXiv:1503.02531, 2015.

更多蒸餾學習相關的內容請移步有三AI知識星球,火熱更新中。

4 關于有三AI知識星球

有三AI知識星球是我們繼公眾號之后重點打造的原創知識學習社區,有需要的同學可以閱讀下文了解生態。

大家可以預覽一些內容如下,添加有三微信Longlongtogo加入可以優惠。

以上所有內容

加入有三AI知識星球即可獲取

來日方長

點擊加入

不見不散

更多精彩

每日更新

轉載文章請后臺聯系

侵權必究

往期精選

  • 【知識星球】數據集板塊重磅發布,海量數據集介紹與下載

總結

以上是生活随笔為你收集整理的【知识星球】剪枝量化初完结,蒸馏学习又上线的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。