天天看點

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

模型壓縮是在計算資源有限、能耗預算緊張的移動裝置上有效部署神經網絡模型的關鍵技術。

在許多機器學習應用,例如機器人、自動駕駛和廣告排名等,深度神經網絡經常受到延遲、電力和模型大小預算的限制。已經有許多研究提出通過壓縮模型來提高神經網絡的硬體效率。

模型壓縮技術的核心是确定每個層的壓縮政策,因為它們具有不同的備援,這通常需要手工試驗和領域專業知識來探索模型大小、速度和準确性之間的大設計空間。這個設計空間非常大,人工探索法通常是次優的,而且手動進行模型壓縮非常耗時。

為此,韓松團隊提出了 AutoML 模型壓縮(AutoML for Model Compression,簡稱 AMC),利用強化學習來提供模型壓縮政策。

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

論文位址:

https://arxiv.org/pdf/1802.03494.pdf

負責這項研究的MIT助理教授韓松博士表示:

“算力換算法”是當今AutoML系列工作的熱點話題,AMC則屬于“算力換算力”:用training時候的算力換取inference時候的算力。模型在完成一次訓練之後,可能要在雲上或移動端部署成千上萬次,是以inference的速度和功耗至關重要。

我們用AutoML做一次性投入來優化模型的硬體效率,然後在inference的時候可以得到事半功倍的效果。比如AMC将MobileNet inference時的計算量從569M MACs降低到285M MACs,在Pixel-1手機上的速度由8.1fps提高到14.6fps,僅有0.1%的top-1準确率損失。AMC采用了合适的搜尋空間,對壓縮政策的搜尋僅需要4個GPU hours。

總結來講,AMC用“Training算力”換取“Inference算力”的同時減少的對“人力“的依賴。最後,感謝Google Cloud AI對本項目的支援。

Google Cloud 研發總監李佳也表示:“AMC是我們在模型壓縮方面的一點嘗試,希望有了這類的技術,讓更多的mobile和計算資源有限的應用變得可能。”

“Cloud AutoML 産品設計讓機器學習的過程變得更簡單,讓即便沒有機器學習經驗的人也可以享受機器學習帶來的益處。盡管AutoML有很大的進步,這仍是一項相對初期的技術,還有很多方面需要提高和創新。”李佳說。

用AI做模型壓縮,完全不需要人工

研究人員的目标是自動查找任意網絡的壓縮政策,以實作比人為設計的基于規則的模型壓縮方法更好的性能。

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

這項工作的創新性展現在:

1、AMC提出的learning-based model compression優于傳統的rule-based model compression

2、資源有限的搜尋

3、用于細粒度操作的連續行動空間

4、使用很少的 GPU 進行快速搜尋(ImageNet 上 1 個 GPU,花費 4 小時)

目标:自動化壓縮流程,完全無需人工。利用 AI 進行模型壓縮,自動化,速度更快,而且性能更高。

這種基于學習的壓縮政策優于傳統的基于規則的壓縮政策,具有更高的壓縮比,在更好地保持準确性的同時節省了人力。

在 4×FLOP 降低的情況下,我們在 ImageNet 上對 VGG-16 模型進行壓縮,實作了比手工模型壓縮政策高 2.7%的精度。

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

我們将這種自動化壓縮 pipeline 應用于 MobileNet,在 Android 手機上測到 1.81 倍的推斷延遲加速,在 Titan XP GPU 上實作了 1.43 倍的加速,ImageNet Top-1 精度僅下降了 0.1%。

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

AutoML 模型壓縮:基于學習而非規則

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

圖 1:AutoML 模型壓縮(AMC)引擎的概覽。左邊:AMC 取代人工,将模型壓縮過程完全自動化,同時比人類表現更好。右邊:将 AMC 視為一個強化學習為題。

以前的研究提出了許多基于規則的模型壓縮啟發式方法。但是,由于深層神經網絡中的層不是獨立的,這些基于規則的剪枝政策并非是最優的,而且不能從一個模型轉移到另一個模型。随着神經網絡結構的快速發展,我們需要一種自動化的方法來壓縮它們,以提高工程師的效率。

AutoML for Model Compression(AMC)利用強化學習來自動對設計空間進行采樣,提高模型壓縮品質。圖 1 展示了 AMC 引擎的概覽。在壓縮網絡是,ACM 引擎通過基于學習的政策來自動執行這個過程,而不是依賴于基于規則的政策和工程師。

我們觀察到壓縮模型的精度對每層的稀疏性非常敏感,需要細粒度的動作空間。是以,我們不是在一個離散的空間上搜尋,而是通過 DDPG agent 提出連續壓縮比控制政策,通過反複試驗來學習:在精度損失時懲罰,在模型縮小和加速時鼓勵。actor-critic 的結構也有助于減少差異,促進更穩定的訓練。

針對不同的場景,我們提出了兩種壓縮政策搜尋協定:

 ●  對于 latency-critical 的 AI 應用(例如,手機 APP,自動駕駛汽車和廣告排名),我們建議采用資源受限的壓縮(resource-constrained compression),在最大硬體資源(例如,FLOP,延遲和模型大小)下實作最佳精度 );

 ●  對于 quality-critical 的 AI 應用(例如 Google Photos),我們提出精度保證的壓縮(accuracy-guaranteed compression),在實作最小尺寸模型的同時不損失精度。

DDPG Agent

 ●  DDPG Agent 用于連續動作空間(0-1)

 ●  輸入每層的狀态嵌入,輸出稀疏比

壓縮方法研究

 ●  用于模型大小壓縮的細粒度剪枝( Fine-grained Pruning)

 ●  粗粒度 / 通道剪枝,以加快推理速度

搜尋協定

 ●  資源受限壓縮,以達到理想的壓縮比,同時獲得盡可能高的性能。

 ●  精度保證壓縮,在保持最小模型尺寸的同時,完全保持原始精度。

為了保證壓縮的準确性,我們定義了一個精度和硬體資源的獎勵函數。有了這個獎勵函數,就能在不損害模型精度的情況下探索壓縮的極限。

 ●  對于資源受限的壓縮,隻需使用 Rerr = -Error

 ●  對于精度保證的壓縮,要考慮精度和資源(如 FLOPs):RFLOPs = -Error∙log(FLOPs)

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

實驗和結果:全面超越手工調參

為了證明其廣泛性和普遍适用性,我們在多個神經網絡上評估 AMC 引擎,包括 VGG,ResNet 和 MobileNet,我們還測試了壓縮模型從分類到目标檢測的泛化能力。

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

大量實驗表明,AMC 提供的性能優于手工調優的啟發式政策。對于 ResNet-50,我們将專家調優的壓縮比從 3.4 倍提高到 5 倍,而沒有降低精度。

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

此外,我們将 MobileNet 的 FLOP 降低了 2 倍,達到了 70.2%的 Top-1 最高精度,這比 0.75 MobileNet 的 Pareto 曲線要好,并且在 Titan XP 實作了 1.53 倍的加速,在一部 Android 手機實作 1.95 的加速。

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

結論

傳統的模型壓縮技術使用手工的特征,需要領域專家來探索一個大的設計空間,并在模型的大小、速度和精度之間進行權衡,但結果通常不是最優的,而且很耗費人力。

本文提出AutoML模型壓縮(AMC),利用增強學習自動搜尋設計空間,大大提高了模型壓縮品質。我們還設計了兩種新的獎勵方案來執行資源受限壓縮和精度保證壓縮。

在Cifar和ImageNet上采用AMC方法對MobileNet、MobileNet- v2、ResNet和VGG等模型進行壓縮,取得了令人信服的結果。壓縮模型可以很好滴從分類任務推廣到檢測任務。在谷歌Pixel 1手機上,我們将MobileNet的推理速度從8.1 fps提升到16.0 fps。AMC促進了移動裝置上的高效深度神經網絡設計。

原文釋出時間為:2018-09-12

本文作者:肖琴、聞菲

本文來自雲栖社群合作夥伴新智元,了解相關資訊可以關注“AI_era”。

原文連結:

AutoML自動模型壓縮再更新,MIT韓松團隊利用強化學習全面超越手工調參

繼續閱讀