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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

缩减网络模型大小

發布時間:2023/12/18 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 缩减网络模型大小 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目前常見的神經網絡模型,模型大小差不多都在百M以上,有的甚至有幾G,幾十G的大小。將深度學習的模型運用于移動設備,比如手機輸入法,對圖像做變換做藝術效果的app,效果毋庸置疑是好的,但由于模型的size太大,給深度學習在移動端的應用帶來了困難??梢栽O想一下,如果一個手機的app需要加載一個500M甚至1G以上的模型恐怕不太容易被用戶接受。
因此需要將大模型變成小模型,以供在移動設備上使用。
針對計算機視覺里面的CNN模型,可以做模型壓縮,縮減模型大小。模型壓縮的技術,可以分為四類:

  • 剪枝:神經網絡是由一層一層的節點通過邊連接,每個邊上會有權重,所謂剪枝,就是當我們發現某些邊上的權重很小,可以認為這樣的邊不重要,進而可以去掉這些邊。在訓練的過程中,在訓練完大模型之后,看看哪些邊的權值比較小,把這些邊去掉,然后繼續訓練模型;

  • 權值共享:就是讓一些邊共用一個權值,達到縮減參數個數的目的。假設相鄰兩層之間是全連接,每層有1000個節點,那么這兩層之間就有1000*1000=100萬個權重參數??梢詫⑦@一百萬個權值做聚類,利用每一類的均值代替這一類中的每個權值大小,這樣同屬于一類的很多邊共享相同的權值,假設把一百萬個權值聚成一千類,則可以把參數個數從一百萬降到一千個。

  • 量化:一般而言,神經網絡模型的參數都是用的32bit長度的浮點型數表示,實際上不需要保留那么高的精度,可以通過量化,比如用0~255表示原來32個bit所表示的精度,通過犧牲精度來降低每一個權值所需要占用的空間。

  • 神經網絡二值化:比量化更為極致的做法就是神經網絡二值化,也即將所有的權值不用浮點數表示了,用二進制的數表示,要么是+1,要么是-1,用二進制的方式表示,原來一個32bit權值現在只需要一個bit就可以表示,可以大大減小模型尺寸。

總結

以上是生活随笔為你收集整理的缩减网络模型大小的全部內容,希望文章能夠幫你解決所遇到的問題。

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