<label id="jgr5k"></label>
    <legend id="jgr5k"><track id="jgr5k"></track></legend>

    <sub id="jgr5k"></sub>
  1. <u id="jgr5k"></u>
      久草国产视频,91资源总站,在线免费看AV,丁香婷婷社区,久久精品99久久久久久久久,色天使av,无码探花,香蕉av在线
      您正在使用IE低版瀏覽器,為了您的雷峰網賬號安全和更好的產品體驗,強烈建議使用更快更安全的瀏覽器
      此為臨時鏈接,僅用于文章預覽,將在時失效
      人工智能開發者 正文
      發私信給skura
      發送

      2

      精度 vs 效率:模型越小,精度就一定越低嗎?

      本文作者: skura 2019-11-07 17:17
      導語:深度學習是否朝著正確的方向發展?

      精度 vs 效率:模型越小,精度就一定越低嗎?

      以下是我最近在倫敦 O’Reilly AI Conference 和 DroidCon 上的兩次談話的改編。

      今年早些時候,NVIDIA 的研究人員發布了 MegatronLM。這是一個擁有 83 億個參數(比 BERT 大 24 倍)的大型 transformer 模型,它在各種語言任務上都達到了最先進的性能。雖然這無疑是一項令人印象深刻的技術成就,但我不禁要問自己:深度學習是否朝著正確的方向發展?

      單是這些參數在磁盤上的權重就超過了 33GB,訓練最終的模型需要 512v100 GPU 連續運行 9.2 天。考慮到每張卡的能量需求,訓練這一模型所用的能量量是美國平均年能源消耗量的 3 倍多。

      我不想單獨列出這個項目。有許多例子表明,大量的模型正在被訓練,以便在各種基準上獲得更高的精度。盡管 MegatronLM 比 BERT 大 24 倍,但它在語言建模方面只比 BERT 強 34%。作為演示新硬件性能的一次性實驗,這里沒有太大的危害。但從長遠來看,這一趨勢將導致一些問題。

      首先,它阻礙了民主化。如果我們相信,在這個世界上,數以百萬計的工程師將使用深度學習來改進每一個應用程序和設備,那么我們就不會擁有需要大量時間和金錢來訓練的大型模型。

      其次,它限制了規模。世界上每一個公共和私有云中可能只有不到 1 億個處理器,但現在已經有 30 億部手機、120 億部物聯網設備和 1500 億個微控制器。從長遠來看,正是這些小型、低功耗的設備最需要深度學習,大規模的模型根本不會是一個選擇。

      精度 vs 效率:模型越小,精度就一定越低嗎?

      為了確保深度學習實現其承諾,我們需要重新對研究進行定位,不要追求最高的準確性和最先進的效率。我們需要關心的是,模型是否能夠讓最大數量的人使用,是否能夠在大多數設備上用最少的資源盡可能快地迭代。

      好消息是,我們正在努力使深度學習模型更小、更快、更高效。早期的回報令人難以置信,例如,Han 等人 2015 年的一篇論文得出了這樣一個結果。

      「在 ImageNet 數據集上,我們的方法將 AlexNet 所需的存儲空間減少了 35 倍——從 240MB 減少到 6.9MB,而且不失準確性。我們的方法將 VGG-16 的大小從 552MB 減少到 11.3MB,減少了 49 倍,同樣沒有精度損失。」

      為了達到這樣的效果,我們必須考慮從模型選擇、訓練到部署的整個機器學習生命周期。在本文的其余部分,我們將深入到這些階段,并研究如何創建更小、更快、更高效的模型。

      模型選擇

      精度 vs 效率:模型越小,精度就一定越低嗎?

      以更小、更高效的模式結束的最好方法是開始一個模型的建立。上圖描繪了各種模型架構的大致大小(兆字節)。我已經覆蓋了表示移動應用程序的典型大小(包括代碼)以及嵌入式設備中可用的 SRAM 數量。

      Y 軸上的對數刻度軟化了視覺打擊,但不幸的事實是,大多數模型架構對于除了數據中心的任何地方來說,數量級都太大了。

      令人難以置信的是,右邊較小的架構的性能并沒有比左邊的大架構差多少。像 VGG-16 這樣的架構(300-500MB)的性能和 MobileNet(20MB)的差不多,盡管它的體積小了近 25 倍。

      精度 vs 效率:模型越小,精度就一定越低嗎?

      是什么讓 MobileNet 和 SquezeNet 這樣的小型架構如此高效?基于 Iandola 等人(SquezeNet)、Howard 等人(MobileNet3)和 Chen 等人(DeepLab V3)的實驗,一些答案存在于模型的宏觀和微觀結構中。

      宏體系結構指的是模型使用的層的類型,以及如何將它們排列成模塊和塊。要生成高效的宏架構,請執行以下操作:

      • 通過降采樣或使用空洞卷積保持激活圖的大小

      • 使用更多的通道,更少的層

      • 在計算過程中使用跳接和剩余連接來提高精度,重復使用參數

      • 用可分離的標準卷積替換

      模型的微觀結構與各個層相關。最佳做法包括:

      • 使輸入和輸出塊盡可能高效,因為它們通常占模型計算成本的 15-25%

      • 減小卷積核的大小

      • 添加一個寬度倍增器,用超參數 alpha 控制每次卷積的通道數

      • 排列圖層,以便可以融合參數(例如偏差和批量標準化)

      模型訓練

      在選擇了模型架構之后,要縮小它并使其在訓練期間更有效,仍然有很多工作可以做。如果還不明顯的話,大多數神經網絡都是參數化的,許多經過訓練的權重對整體精度影響很小,可以去除。Frankle 等人發現,在許多網絡中,80-90% 的網絡權值可以被移除,同時這些權值中的大多數精度也可以被移除,而精度損失很小。

      尋找和移除這些參數的策略主要有三種:知識蒸餾、剪枝和量化。它們可以一起使用,也可以單獨使用。

      知識蒸餾

      精度 vs 效率:模型越小,精度就一定越低嗎?

      知識蒸餾采用較大的「教師」模型來訓練較小的「學生」模型。這項技術最初由 Hinton 等人于 2015 年提出,其關鍵在于兩個損失項:一個是學生模型的硬預測,另一個是基于學生在所有班級,產生相同分數分布的能力。

      Polino 等人能夠在 CIFAR10 上訓練的 ResNet 模型的大小減少 46 倍,精度損失只有 10%;在 ImageNet 上,大小減少 2 倍,精度損失只有 2%。最近,Jiao 等人蒸餾 BERT 來制造 TinyBERT:小 7.5 倍,快 9.4 倍,并且精確度只降低了 3% 。有一些很好的開源庫實現了蒸餾框架,包括 Distiller 和用于 transformer 的 Distil。

      剪枝

      縮小模型的第二種技術是剪枝。剪枝包括評估模型中權重的重要性,并刪除那些對整體模型精度貢獻最小的權重。剪枝可以在一個網絡的多個尺度上進行,最小的模型是通過在單獨的權重級別上剪枝來實現的,小量級的權重設置為零,當模型被壓縮或以稀疏格式存儲時,其存儲效率非常高。

      Han 等人使用這種方法將普通的計算機視覺體系結構縮小了 9~13 倍,精度變化可以忽略不計。不幸的是,缺少對快速稀疏矩陣操作的支持意味著權重級別的剪枝也不會提高運行速度。

      要創建更小、更快的模型,需要在濾波器或層級別進行剪枝,例如,刪除對總體預測精度貢獻最小的卷積層的濾波器。在濾波器級別剪枝的模型并沒有那么小,但通常速度更快。Li 等人使用該技術能夠將 VGG 模型的大小和運行時間減少 34%,而不損失準確性。

      最后,值得注意的是,對于是否最好從更大的模型開始,從零開始剪枝或訓練更小的模型,Liu 等人的結果好壞參半。

      量化

      精度 vs 效率:模型越小,精度就一定越低嗎?

      圖源:https://medium.com/@kaustavtamuly/compressing-and-accelerating-high-dimensional-neural-networks-6b501983c0c8 

      模型經過訓練后,需要為部署做好準備。這里也有一些技術可以對模型進行更多的優化。通常,模型的權重存儲為 32 位浮點數,但對于大多數應用程序,這遠比所需的精度高。我們可以通過量化這些權重來節省空間和時間,同時對精度產生最小的影響。

      量化將每個浮點權重映射到一個固定精度的整數,該整數包含的 bit 數少于原始值。雖然有許多量化技術,但最重要的兩個因素是最終模型的 bit 深度和訓練期間或之后是否量化權重。

      最后,量化權重和激活對于加快模型的運行是很重要的。激活函數是自然產生浮點數的數學運算,如果不修改這些函數來產生量化的輸出,那么由于需要轉換,模型甚至可能運行得更慢。

      在一篇精彩的測評文中,Krishnamoorthi 測試了許多量化方案和配置,以提供一組最佳實踐:

      結果如下:

      • 后訓練通常可以應用到 8 位,模型減小 4 倍,模型精度損失小于 2%

      • 訓練感知量化,以最小的精度損失將位深度減少到 4 或 2 位(模型減小 8~16 倍)

      • 量化權重和激活可以使 CPU 的速度提高 2-3 倍

      部署

      這些技術中的一個共同點是,它們生成了一個連續的模型,每個模型都有不同的形狀、大小和精度。雖然這會產生一些管理和組織問題,但它很好地映射到了各種各樣的硬件和軟件條件的模型將面臨的問題。

      精度 vs 效率:模型越小,精度就一定越低嗎?

      上圖顯示了 MobileNetV2 模型在各種智能手機上的運行速度,最低端和最高端設備之間可能存在 80 倍的速度差。為了給用戶提供一致的體驗,在正確的設備上放置正確的型號是很重要的,這意味著訓練多個模型,并根據可用資源將它們部署到不同的設備上。

      通常,最佳的設備性能是通過以下方式實現的:

      • 使用本機格式和框架(例如 iOS 上的 Core ML 和 Android 上的 TFLite)

      • 利用任何可用的加速器,如 GPU 或 DSP

      • 監視設備的性能,確定模型瓶頸,并迭代特定硬件的體系結構

      當然,監視和管理所有模型的不同版本并不總是那么容易。

      總結

      通過應用這些技術,可以將大多數模型縮小并加速至少一個數量級。下面引用到目前為止討論過的幾篇論文:

      • 「TinyBERT 在經驗上是有效的,并且在 GLUE 數據集中取得了與 BERT 相當的結果,同時比 BERT 小了 7.5 倍,推理速度快了 9.4 倍。」—Jiao 等人

      • 「我們的方法將 VGG-16 的大小從 552MB 減少到 11.3MB,減少了 49 倍,沒有精度損失。」—Han 等人

      • 「模型本身占用的閃存空間不到 20KB……而且它只需要 30KB 的 RAM 就可以運行。」—Peter Warden 在 TensorFlow Dev Summit 2019 上如是說

      為了證明普通人也可以完成這件事情,我冒昧地創建了一個小的 17KB 風格的傳輸模型,它只包含 11686 個參數,但仍然產生了與 160 萬個參數的模型一樣好的結果。

      精度 vs 效率:模型越小,精度就一定越低嗎?

      左:原始圖像;中:我們 17KB 的小模型的樣式化圖像;右:更大的 7MB 模型的樣式化圖像

      我一直認為這樣的結果很容易實現,但并不是每一篇論文都采用了標準的過程。如果我們不改變我們的實踐,我擔心我們會浪費時間、金錢和資源,同時無法將深度學習用到可能從中受益的應用程序和設備中。

      不過,好消息是,大模型的邊際效益似乎正在下降,而且由于這里概述的這些技術,我們也可以對其大小和速度進行優化,而不會犧牲太多的準確性。

      額外資源:

      精度 vs 效率:模型越小,精度就一定越低嗎?

      via:https://heartbeat.fritz.ai/deep-learning-has-a-size-problem-ea601304cd8

      雷鋒網雷鋒網雷鋒網

      雷峰網版權文章,未經授權禁止轉載。詳情見轉載須知

      精度 vs 效率:模型越小,精度就一定越低嗎?

      分享:
      相關文章
      當月熱門文章
      最新文章
      請填寫申請人資料
      姓名
      電話
      郵箱
      微信號
      作品鏈接
      個人簡介
      為了您的賬戶安全,請驗證郵箱
      您的郵箱還未驗證,完成可獲20積分喲!
      請驗證您的郵箱
      立即驗證
      完善賬號信息
      您的賬號已經綁定,現在您可以設置密碼以方便用郵箱登錄
      立即設置 以后再說
      主站蜘蛛池模板: 亚洲第一色视频| 延川县| 一区二区三区资源| 欧美三级中文字幕在线观看| 亚洲自拍偷拍福利小视频| 久久久久香蕉国产线看观看伊| 色哟哟91| 亚洲欧美中文字幕| 亚洲中文无码手机永久| 少妇被粗大的猛烈进出动视频| 免费看婬乱a欧美大片| 新营市| 亚洲熟妇中文字幕五十中出| 日本一区二区三区内射| 国产人与禽zoz0性伦多活几年| 风间由美性色一区二区三区| 全部孕妇毛片丰满孕妇孕交| 国产精品免费AⅤ片在线观看| 国产麻豆天美果冻无码视频| 精品久久久无码中文字幕一丶| 被黑人伦流澡到高潮HNP动漫| 99人妻| 欧美日韩久久| аⅴ天堂 在线| 日韩精人妻无码一区二区三区| 成?人?黄?色?A?Ⅴ?网?站03| 无码人妻丰满熟妇区五十路百度| 亚洲性无码av在线| 乱精品一区字幕二区| 亚洲三级香港三级久久| 高跟熟女中文字幕在线亚洲| 湘乡市| 日本中文字幕有码在线视频| 强伦人妻精品三级| 亚洲一区二区| 色欲狠狠躁天天躁无码中文字幕| 91社视频在线观看| 国产欧美在线观看精品一区污| 在线播放深夜精品三级| 婷婷成人丁香五月综合激情| 一区一区三区产品乱码|