麻省理工 HAN Lab 提出 ProxylessNAS 自動為目標任務和硬體定製高效 CNN 結構

2021-02-21 機器之心

機器之心發布

作者:Han Cai, Ligeng Zhu, Song Han

論文:ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware.

網站:https://hanlab.mit.edu/projects/proxylessNAS/

論文: https://arxiv.org/pdf/1812.00332.pdf

代碼:https://github.com/MIT-HAN-LAB/ProxylessNAS

摘要:NAS 受限於其過高的計算資源 (GPU 時間, GPU 內存) 需求,仍然無法在大規模任務 (例如 ImageNet) 上直接進行神經網絡結構學習。目前一個普遍的做法是在一個小型的 Proxy 任務上進行網絡結構的學習,然後再遷移到目標任務上。這樣的 Proxy 包括: (i) 訓練極少量輪數; (ii) 在較小的網絡下學習一個結構單元 (block),然後通過重複堆疊同樣的 block 構建一個大的網絡; (iii) 在小數據集 (例如 CIFAR) 上進行搜索。然而,這些在 Proxy 上優化的網絡結構在目標任務上並不是最優的。在本文中,我們提出了 ProxylessNAS,第一個在沒有任何 Proxy 的情況下直接在 ImageNet 量級的大規模數據集上搜索大設計空間的的 NAS 算法,並首次專門為硬體定製 CNN 架構。我們將模型壓縮 (減枝,量化) 的思想與 NAS 進行結合,把 NAS 的計算成本 (GPU 時間, GPU 內存) 降低到與常規訓練相同規模,同時保留了豐富的搜索空間,並將神經網絡結構的硬體性能 (延時,能耗) 也直接納入到優化目標中。我們在 CIFAR-10 和 ImageNet 的實驗驗證了」直接搜索」和「為硬體定製」的有效性。在 CIFAR-10 上,我們的模型僅用 5.7M 參數就達到了 2.08% 的測試誤差。對比之前的最優模型 AmoebaNet-B,ProxylessNAS 僅用了六分之一的參數量就達到了更好的結果。在 ImageNet 上,ProxylessNAS 比 MobilenetV2 高了 3.1% 的 Top-1 正確率,並且在 GPU 上比 MobilenetV2 快了 20%。在同等的 top-1 準確率下 (74.5% 以上), ProxylessNAS 的手機實測速度是當今業界標準 MobileNetV2 的 1.8 倍。在用 ProxylessNAS 來為不同硬體定製神經網絡結構的同時,我們發現各個平臺上搜索到的神經網絡在結構上有很大不同。這些發現為之後設計高效 CNN 結構提供新的思路。

背景


近期研究中,神經結構搜索(NAS)已經在各種深度學習任務(例如圖像識別)的神經網絡結構設計自動化方面取得了很大成功。然而,傳統 NAS 算法的計算量需求往往令人望而卻步,例如 NASNet 需要 10^4 GPU hours 來運行。以 DARTs 為代表的 Differentiable NAS 雖減少了計算需求,可隨著搜索空間線性增長的內存成了新的瓶頸。由於這些局限,之前的 NAS 都利用了 Proxy 任務,例如僅訓練少量 Epoch,只學習幾個 Block,在較小的數據集上搜索(e.g. CIFAR)再遷移。這些 Proxy 任務上優化的結構,並不一定在目標任務上是最佳的。同時為了實現可轉移性,這些方法往往僅搜索少數結構 Block,然後重複堆疊。這限制了塊的多樣性,並導致性能上的損失。依賴 Proxy 同時也意味著無法在搜索過程中直接權衡延遲等硬體指標。

在這項工作中,我們提出了一個簡單而有效的方案來解決上述限制,稱為 ProxylessNAS:它直接在目標任務和硬體上學習結構而不依賴於 Proxy。我們還移除了先前 NAS 工作中的重複塊的限制:所有 stage 都可以自由的選擇最適合的模塊。此外,為了直接在目標硬體上學習專用網絡結構,在搜索時我們也考慮了硬體指標(例如延遲)。

ProxylessNAS 是第一個在沒有任何代理的情況下直接學習大規模數據集(例如 ImageNet)上的 CNN 結構的 NAS 算法,同時仍然允許大的候選集並消除重複塊的限制。它有效地擴大了搜索空間,實現了更好的性能。

我們為 NAS 提供了一種新的路徑級剪裁視角,顯示了 NAS 與模型壓縮之間的緊密聯繫(Han et al。,2016)。我們通過使用路徑級二值化將內存消耗節省一個數量級。

我們提出了一種新的基於梯度的方法(作為一個正則函數),來處理硬體目標(例如延遲)。針對不同的硬體平臺:CPU / GPU / FPGA / TPU / NPU,ProxylessNAS 實現了針對目標硬體 CNN 結構定製。據我們所知,這是第一個來研究不同硬體結構下的專用神經網絡結構的文章。

廣泛的實驗證明了 Directness 和 Specialization 的優勢。它在不同硬體平臺(GPU,CPU 和 Mobile)延遲限制下,在 CIFAR-10 和 ImageNet 上實現了最好的性能。我們還分析了專用於不同硬體平臺的高效 CNN 模型的偏好,指出不同硬體平臺需要不同的神經網絡結構。

方法

NAS 的路徑級減枝視角

我們將 NAS 建模成一個路徑級減枝的過程。如圖 2 所示,我們首先構建一個過度參數化網絡。這個網絡在各個位置不是採用一個確定的操作,而是保留了所有可能的操作。我們引入架構參數來顯示地學習各個位置上哪些操作是冗餘的,然後通過去除這些冗餘的操作,我們就得到了一個輕量的網路結構。如此,我們就只需要在網絡結構搜索的過程中,訓練這個過度參數化網絡即可,而不需要訓練成千上萬個網絡,也不需要使用一個額外的元控制器。

然而,直接去訓練這樣一個過度參數化網絡是有問題的,因為其 GPU 顯存會隨著候選操作的數量線性增長。這裡,我們利用到路徑級二值化的思想來解決這個問題: 即將路徑上的架構參數二值化,並使得在訓練過程中只有一個路徑處於激活狀態。這樣一來 GPU 顯存的需求就降到和正常訓練一個水平。在訓練這些二值化的架構參數的時候,我們採用類似 BinaryConnect 的思想,使用對應的 Binary Gate 的梯度來更新架構參數:

優化不可導的網絡結構硬體指標

除了準確率之外,在設計高效神經網絡結構的時侯,延遲(Latency)是另一個非常重要的目標。與可以使用損失函數的梯度優化的準確率不同,延遲這一指標是不可微的。在本節中,我們提出了兩種算法來處理這種不可微分的目標。

如上圖所示,我們將網絡結構的延遲建模為關於神經網絡的連續函數。通過引入一個新的延遲損失,我們可以直接使用梯度來對其進行優化。

此外,作為 BinaryConnect 的替代方案,我們也可以利用 REINFORCE 來訓練這些二值化架構參數,這樣也能很自然得處理這些不可微分的目標。

結果

我們在 CIFAR-10 和 ImageNet 上進行了實驗。不同於之前的 NAS 工作,我們直接在目標數據集上進行神經網絡結構學習,為目標硬體(CPU / GPU / Mobile)進行優化,同時允許每一個 block 自由地選擇操作。

CIFAR-10 上與之前 SOTA(state-of-the-art)模型的對比總結在表 1 中。和他們相比,我們的模型不僅在測試錯誤率上更低,並且需要的參數量也更少。例如為了達到 2.1% 的錯誤率,AmoebaNet-B 使用 34.9M 參數,而我們的模型僅使用六分之一 (5.7M 參數)。這些結果證明了直接探索大型搜索空間而不是重複相同塊的好處。

在 ImageNet 上,我們主要關注於學習高效的 CNN 結構。因此,這是一個多目標的 NAS 任務,我們需要同時兼顧性能與延遲(不可導的硬體指標)。我們在三種不同的硬體平臺上(CPU / GPU / Mobile)進行了實驗。實驗所用的 CPU 是 2 x 2.40GHz Intel(R)Xeon(R)CPU E5-2640 v4 批大小 1, GPU 是 NVIDIA® Tesla® V100 批大小 8,Mobile 是 Google Pixel 1 單核無量化批大小 1。

在移動端,與 MobilenetV2 相比,我們的 ProxylessNAS 在維持同等的延遲的前提下,TOP-1 準確率提升了 2.6%。此外,在各個不同的延遲設定下,我們的模型始終大幅優於 MobilenetV2:為了達到 74.6% 的精度,MobilenetV2 需要 143ms 的推理時間,而我們模型僅需要 78ms(1.83x 倍)。與 MnasNet 相比,我們模型在提升 0.6% Top-1 的同時保持略低的推理時間。值得一提的是,我們所消耗的搜索資源要比 Mnas 少得多 (1/200)。

除了移動端,我們還應用 ProxylessNAS 為 CPU 和 GPU 定製 CNN 模型。和之間 SOTA 網絡結構相比,ProxylessNAS 依舊錶現出了更優的性能:在延遲低 20% 的情況下,ImageNet 上 top-1 準確率相比 MobileNetV2 提升了 3.1%。

之前人們習慣於將一種同一種網絡結構應用到多個平臺上,而我們的實驗結果表明,我們實際上需要為不同的平臺定製神經網絡結構:針對 GPU 優化的模型在 CPU 和移動端上運行速度並不快,反之亦然。

下圖展示了我們在三個硬體平臺上搜索到的 CNN 模型的詳細結構:GPU / CPU / Mobile。我們注意到,當針對不同平臺時,網絡結構呈現出不同的偏好:(i)GPU 模型短而寬,尤其是在 feature map 較大時;(ii)GPU 模型更喜歡大 MBConv 操作(例如 7x7 MBConv6),而 CPU 模型則傾向於小操作。這是因為 GPU 比 CPU 有更高的並行度,因此它可以更好地利用大 MBConv。另一個有趣的觀察是,當特徵地圖被下採樣時,所有的網絡結構都傾向於選擇一個更大的 MBConv。我們認為這可能是因為大 MBConv 操作有利於網絡在下採樣時保留更多信息。值得注意的是,這是之前強制 block 之間共享結構的 NAS 方法無法發現的。

PS:我們可視化了,網絡結構隨著搜索而變化的趨勢,視頻在下鏈中。

https://hanlab.mit.edu/files/proxylessNAS/visualization.mp4

NIPS 大會期間,韓松教授將於在 workshop 分享更多本工作的信息,有興趣的同學 / 老師歡迎前來交流。

12.7 9:30AM @ Room 512 Compact Deep Neural Networks with industrial applications

12.7 4:00PM @ Room 514 Machine Learning on the Phone and other Consumer Devices.

12.8 9:35AM @ Room 510 Machine Learning for Systems workshop

本文為機器之心發布,轉載請聯繫本公眾號獲得授權

✄---

加入機器之心(全職記者 / 實習生):hr@jiqizhixin.com

投稿或尋求報導:content@jiqizhixin.com

廣告 & 商務合作:bd@jiqizhixin.com

相關焦點

  • 模型壓縮25倍,MIT 韓松組提出高效適配不同硬體的HAT模型
    然而,由於參數量和計算量巨大,Transformer 模型難以在存儲和算力有限的邊緣硬體設備上高效部署。為了解決 Transformer 的低效問題,來自 MIT 的研究人員提出了 HAT: Hardware-Aware Transformers,針對不同的硬體設備的特性,為每個硬體搜索出一個高效的 Transformer 模型,從而在保持精確度的前提下大幅降低內存消耗。
  • 重磅 史上最全的深度學習和自動駕駛術語表!(來自麻省理工 MIT 6.S...
    歷時 8 周,雷鋒字幕組經麻省理工學院授權翻譯的 2018 MIT 6.S094 深度學習和自動駕駛課程完結啦!【中英雙語字幕】深度學習和自動駕駛所有課程視頻觀看地址:AI 慕課學院:http://www.mooc.ai/course/483
  • 聽麻省理工怎麼說
    工程師和設計師必須保持獲取最新的設計概念,以保持他們公司的技術前沿地位。本文引用地址:http://www.eepw.com.cn/article/201705/359155.htm  那麼3D列印職業教育如何開展?雷射、機械、仿真、建模、材料…從何處入手?本期,小編和大家一起來領略麻省理工的3D列印職業教育課程的設置出發點。
  • 致麻省理工社區的信:關於麻省理工與南科大的合作關係和陳剛教授的幾點澄清
    致麻省理工社區的信關於麻省理工與南科大的合作關係和陳剛教授的幾點澄清2021年1月22日致麻省理工人, 自上周陳剛教授被捕以來,我們的社區一直非常關心陳剛及其家人,深切關注與此案有關的更大問題。但是,由於政府的指控以及隨之而來的媒體報導都提到了麻省理工與南方科技大學的合作,因此,我想就這一合作的性質作出澄清。 正如《麻省理工新聞》當時所報導的,麻省理工學院於2018年與南科大建立了合作關係,在兩所高校創建了機械工程教學科研中心。雖然陳剛教授是麻省理工方的首任主任,但這一合作並不是他個人的合作,而是院系的合作,並得到了校方的支持。
  • LAB完結
    arch, attack, cache, shell, malloc, proxy)。比如,data lab要求學生掌握位運算的技巧;bomb lab要求學生閱讀簡單的彙編代碼(arch lab要求學生設計自己的流水線並優化程序性能;attack lab要求學生根據棧的特點攻擊一段有漏洞的代碼;cache lab要求學生模擬緩存的LRU替換策略,並修改程序以減少cache miss的次數;shell lab要求學生定製自己的linux shell;malloc lab要求學生實現動態內存分配
  • Linux Lab 發布 v0.6-rc2,新增首塊真實硬體開發板
    恢復使用主機 dns 配置,避免某些網絡限制外部 dns 的情況 在 v5.8 之後恢復加載 nfsd 模塊 向容器傳遞 HOST_OS,允許未來根據主機系統不同做差異化處理 允許自動加載 linux-lab 中的命令行自動補全腳本 Linux Lab 新增首塊真實硬體開發板
  • 麻省理工硬核課程——分布式系統lab_1解析
    •直至所有MapTask全部執行完畢後,開啟ReduceTask,ReduceTask的任務是到讀取MapTask產生的磁碟文件中,抓取出對應分區的Key出來,再將相同的Key與List(value)執行Reduce方法,得出結果後,最終再將結果寫出到結果文件中。初始化工作定義各種數據結構,及數據的交換格式。
  • 模型壓縮95%,MIT韓松等人提出新型Lite Transformer
    該研究是由 MIT 電氣工程和計算機科學系助理教授韓松領導的。韓松的研究廣泛涉足深度學習和計算機體系結構,他提出的 Deep Compression 模型壓縮技術曾獲得 ICLR2016 最佳論文,論文 ESE 稀疏神經網絡推理引擎 2017 年曾獲得晶片領域頂級會議——FPGA 最佳論文獎,引領了世界深度學習加速研究,對業界影響深遠。
  • 加州理工 VS 麻省理工,誰才是理工屆的扛把子?
    麻省理工的校園就在波士頓地鐵紅線上的肯德爾站旁邊,周圍有各種美食、娛樂、甚至是其他社交場所。學生們可以很容易地乘坐火車去薩默維爾、波士頓市中心、牙買加平原、羅克斯伯裡等地旅行。 和加州理工一樣,麻省理工也為本科生提供11棟宿舍樓。每個宿舍都配備專門的宿舍管理團隊,在保證學生安全的同時也為學生提供了多樣化的生活需求。
  • Proxy使用詳解
    new操作執行完畢之後的數據結構巧妙利用原型鏈和代理handler形參中的receiverreceiver是代理或繼承代理的對象。通俗來講,就是觸發了handler的源頭對象。一般receiver即是target的代理實例。
  • 招生| 開啟博士生涯:喬治亞理工、MIT等四所高校招收博士生
    同時也歡迎招收博士生的實驗室聯繫我們,為大家提供更多信息。喬治亞理工大學自動控制和機器學習實驗室陳永昕教授陳於 2018 年秋加入喬治亞理工大學航空航天學院並成立自動控制和機器學習實驗室。由數據推動的機器學習已經在很多方面取得了突破,可以用於完成相對複雜的任務。
  • 加州理工 VS 麻省理工,誰才是理工界的扛把子?
    麻省理工的校園就在波士頓地鐵紅線上的肯德爾站旁邊,周圍有各種美食、娛樂、甚至是其他社交場所。學生們可以很容易地乘坐火車去薩默維爾、波士頓市中心、牙買加平原、羅克斯伯裡等地旅行。 和加州理工一樣,麻省理工也為本科生提供11棟宿舍樓。每個宿舍都配備專門的宿舍管理團隊,在保證學生安全的同時也為學生提供了多樣化的生活需求。
  • 麻省理工神經科學專家發現:集中注意力,關鍵是瞄準正確目標
    我們在做一件事時,一定會受到一些幹擾,此時大腦做的就是讓我們在受到幹擾時,快速將注意力轉移到真正要做的事情上,選擇正確的目標任務去執行。▪克裡克就提出理論,認為注意力是由大腦深處稱為丘腦的區域控制,但丘腦的任務不僅僅是傳遞感覺器官輸入的信息,更重要的是在注意力被分散時,及時提醒注意力轉移回來,選擇正確的目標繼續執行任務。
  • 山東大學4人登上麻省理工重量級榜單,年齡最小才29歲!
    12月10日,全球青年科技領袖峰會暨《麻省理工科技評論》中國"35歲以下科技創新35人"頒獎典禮在"名士之鄉"紹興啟幕。峰會上,重磅發布了第四屆《麻省理工科技評論》"35歲以下科技創新35人"中國區榜單。
  • tf2+cnn+中文文本分類優化系列(2)
    其實,本次主要看cnn在做中文文本分類中single kernel與multi kernel的對比。2 前期處理數據集仍是復旦大學開源的文本數據集,label種類為20。存入各自列表中 """ re_han = re.compile(u"([\u4E00-\u9FD5a-zA-Z]+)") #去掉標點符號和數字類型的字符 with codecs.open(file_dir,'r',encoding='utf-8') as f: for line in f:
  • 加州理工 VS 麻省理工,到底誰才是美國理工大學屆的扛把子?
    麻省理工的校園就在波士頓地鐵紅線上的肯德爾站旁邊,周圍有各種美食、娛樂、甚至是其他社交場所。學生們可以很容易地乘坐火車去薩默維爾、波士頓市中心、牙買加平原、羅克斯伯裡等地旅行。 和加州理工一樣,麻省理工也為本科生提供11棟宿舍樓。
  • 加州理工VS 麻省理工,到底誰才是美國理工大學屆的扛把子?
    加州理工學院位於西海岸加州洛杉磯附近的帕薩迪納市,而麻省理工學院位於東海岸麻薩諸塞州波士頓郊外的劍橋市,兩校相距甚遠。 無論是本科生還是研究生,還是教授數量,麻省理工都比加州理工要多得多。儘管兩所大學的師生比一樣,但麻省理工學院的學生可以接觸到的教授人數是加州理工的三倍多。 那麼,這裡就涉及到兩個因素:班級規模和校園人口。
  • 《麻省理工科技評論》2020年中國科技英雄榜報名開啟
    2020 年,我們將繼續尋找在各大科研領域中不斷突破創新的探索者和實踐者們,用他們的新發現和新成就來定義未來。自 1999 年起,《麻省理工科技評論》每年都會在世界範圍內評選 35 歲以下的科技創新領軍人物,如今,涵蓋範圍已包括人工智慧、生物醫療、生命科學、區塊鏈、新能源、新材料、自動駕駛等新興技術領域。
  • 經典目標檢測方法Faster R-CNN和Mask R-CNN|基於PaddlePaddle深度...
    機器視覺領域的核心問題之一就是目標檢測 (object detection),它的任務是找出圖像當中所有感興趣的目標 (物體),確定其位置和大小。作為經典的目標檢測框架 Faster R-CNN,雖然是 2015 年的論文,但是它至今仍然是許多目標檢測算法的基礎,這在飛速發展的深度學習領域十分難得。