ICLR 2021 | 美團AutoML論文:魯棒的神經網絡架構搜索 DARTS-

背景

美團日益增長的用戶側和商家側業務對人工智能(AI)技術有着非常廣泛和強烈的訴求。從用戶角度出發,美團 AI 在外賣之外,有到店消費、酒店旅遊等200多個生活服務場景,均需要 AI 來提升用戶體驗。從商家角度出發,美團 AI 將幫助商家提高效率、分析運營狀況,比如能對用戶評論進行細粒度分析,來刻畫出商家服務現狀、商家競爭力分析,以及商圈洞察等等,爲商戶提供精細化經營建議。

目前,美團 AI 涉及的研發領域,包括自然語言理解、知識圖譜、搜索、語音識別、語音生成、人臉識別、文字識別、視頻理解、圖像編輯、AR、環境預測、行爲規劃、運動控制等。AI 技術在這些場景中落地的兩個關鍵部分是規模化的數據和先進的深度學習模型,其中高質量模型的設計和更新迭代是當前 AI 生產開發的痛點和難點,亟需自動化技術來輔助並提升生產效率。在此情景下應運而生的技術叫做自動化機器學習(AutoML)。AutoML 被認爲是模型設計的未來解決方案,能夠將 AI 算法工程師從手動設計的繁複試錯中解放出來。

谷歌 2017 年正式提出神經網絡架構搜索(Neural Architecture Search,NAS)<sup>[1]</sup> 用於自動化生成模型架構,這項技術被業界寄予厚望,成爲 AutoML 的核心組成部分。憑藉日益增強的算力和持續迭代的 NAS 算法,視覺模型在架構層面誕生了像 EfficientNet、MobileNetV3 等影響力深遠的系列模型,NAS 也應用到了視覺、NLP、語音等領域的很多方向 <sup>[2,3]</sup>。NAS 作爲生成 AI 模型的 AI,其重要意義不言而喻。美團在 NAS 方向也開展了深入性的研究,對該領域保持着積極的探索。

本文介紹美團和上海交通大學合作的文章 DARTS-<sup>[4]</sup>,該文即將發表在 ICLR 2021 頂會上。ICLR (International Conference on Learning Representations)全稱是國際學習表徵會議,2013 年由兩位深度學習大牛、圖靈獎得主 Yoshua Bengio 和 Yann LeCun 牽頭創辦。ICLR 成立至今僅七年,但它已得到學術界的廣泛認可,被認爲是“深度學習領域的頂級會議”。ICLR 的 h5 指數爲 203,在所有科學出版物中排名第 17,超過了 NeurIPS、ICCV 和 ICML。本屆 ICLR 共有 2997 篇論文提交,最終接收 860 篇,包括 53 篇 Oral(接收率 6%),114 篇 Spotlight,693 篇 Poster,接收率爲 28.7%。

神經網絡架構搜索簡介

神經網絡架構搜索(NAS)的主要任務是如何在有限時間和資源下搜索得到最優的模型。NAS 主要由搜索空間、搜索算法、模型評估三部分組成。NAS 最早在視覺分類任務中驗證,在分類任務中常見的搜索空間分爲基於子結構單元(Cell)和基於子結構塊(Block)兩種,前者的特點是具有豐富的圖結構,將相同的單元串聯再組成最終的網絡。後者是直筒型的,搜索的焦點就在於每層子結構塊的選取。

按搜索算法分類,NAS 主要包括基於強化學習(Reinforcement Learning,RL)、基於遺傳算法(Evolutionary Algorithm,EA)、基於梯度優化(Gradient-Based)的方法。RL 方法通過生成並評估模型來獲取反饋,根據反饋來調整生成的策略,從而生成新的模型,循環這一過程直到最優。 EA 方法將模型結構編碼爲可以交叉和變異的“基因”,通過不同的遺傳算法來獲取新一代的基因,直到達到最好。EA 方法的優點在於可以處理多種目標,比如一個模型的優劣有參數量、計算延遲、性能指標等多個考察維度,EA 方法便很適合在多個維度進行探索和演進。但 RL 和 EA 均比較耗時,主要受限於模型評估部分,一般採取全量、少量訓練的方法。最新的 One-Shot 路線採用訓練一個包含所有子結構的超網來評估所有子網的方式,可以從很大程度上提高 NAS 的效率。但同期,基於梯度優化的 DARTS 方法更爲高效,成爲當下 NAS 方法主流的選擇。

DARTS 由卡耐基梅隆大學(CMU)的研究者劉寒驍等人提出,全稱爲可微分的神經網絡架構搜索(Differentiable Architecture Search, DARTS) <sup>[5]</sup> ,大幅提高了搜索效率,受到了業界的廣泛認可。可微分方法(DARTS)基於梯度優化,它首先其定義了一個基於有向無環圖(DAG)的子結構(Cell),DAG 有四個中間節點(下圖 Figure 1 中灰色方框),每條邊有多個可選算子(由不同顏色的邊表示),通過 softmax 加和不同邊的結果作爲到下個節點的輸入。堆疊這樣的子結構可以形成網絡的主幹。DARTS 將搜索過程看作對堆疊而成的主幹網絡(也稱爲超網,或過參數化網絡)的優化過程。這裏每條邊被賦予了不同的結構權重,並和網絡權重一起交叉進行梯度更新。優化完成後結構權重大(由粗線條表示)的作爲最終子網的算子,並將該子網作爲搜索結果(Figure 1d 展示了最終的 Cell 結構)。這個過程( Figure 1 從 c 到 d)將連續的結構權重硬性截斷爲離散值,比如 0.2 變爲 1, 0.02 變爲 0,而這樣會產生所謂的離散化偏差(Discretization Gap)。

神經網絡架構搜索的難點

簡單總結目前神經網絡架構搜索主要需要解決的難點在於:

  • 搜索過程的高效性:搜索算法耗費的計算資源和時間要在可接受的範圍,從而可以在實踐中得到廣泛的應用,直接支撐面向業務數據集的模型結構搜索;
  • 搜索結果的有效性:搜索得到的模型要在多個數據集上有很好的性能,且又很好的泛化性能和領域遷移能力,比如搜索得到的分類主幹網可以很好地遷移到檢測和分割任務,並且有很好的表現;
  • 搜索結果的魯棒性:在具有有效性的同時,多次搜索的結果要相對穩定,即提高搜索的可靠性,降低試錯成本。

可微分方法的缺點和改進方法

可微分神經網絡架構搜索方法的不足之處就是魯棒性較差,容易產生性能崩塌,即搜索過程中的超網性能表現很好但推斷出的子網存在大量的跳躍連接(Skip Connection),嚴重削弱了最終模型的性能。基於DARTS 湧現出了非常多的改進工作,比如 Progessive DARTS<sup>[6]</sup>,Fair DARTS<sup>[7]</sup>,RobustDARTS<sup>[8]</sup>,Smooth DARTS<sup>[9]</sup> 等。其中, ICLR 2020 滿分論文 RobustDARTS 提出用 Hessian 特徵根作爲衡量 DARTS 出現性能崩塌的徵兆,但計算特徵根又非常耗時。而且在標準的 DARTS 搜索空間下,RobustDARTS 在 CIFAR-10 數據集上的搜索得到的模型性能並不突出。這促使我們思考怎麼提高魯棒性,同時又提高有效性。針對這兩個問題,業內有不同的分析和解決方法,代表性的分別是 Fair DARTS (ECCV 2020) 、 RobustDARTS (ICLR 2020) 和 Smooth DARTS (ICML 2020)。

Fair DARTS 觀察到大量跳躍連接的存在,並着重分析了其可能的產生原因。文章認爲,跳躍連接在可微分的優化過程中,存在競爭環境下的不公平優勢(Unfair Advantage),導致跳躍連接容易在競爭中勝出。因此,FairDARTS 提出放寬競爭環境(Softmax 加和)爲合作環境(Sigmoid 加和),使得不公平優勢帶來的影響失效。最終選取算子方式也與 DARTS 不同,通過採取閾值截斷,比如選取結構權重高於 0.8 的算子,此時跳躍連接可以和其他算子同時出現,但這樣等同於增大了搜索空間:原先的子網中,兩個節點之間最終只選取一個。

RobustDARTS(簡稱 R-DARTS) 通過計算 Hessian 特徵根來判斷優化過程是否出現崩塌,文章認爲,損失函數地貌(Loss Landscape)存在尖銳的局部最優點(Sharp Local Minima,Figure 5a 右側點),離散化過程(α* 到 α<sup>disc</sup>)會導致從優化較好的尖銳點偏移到優化較差的地方,從而導致最終模型性能下降。R-DARTS 發現這個過程和 Hessian 特徵根關係密切 (Figure 5b)。因此可認爲,Hessian 特徵根變化幅度過大時優化應該停止,或者通過正則化手段來避免 Hessian 特徵根產生大幅變化。

Smooth DARTS (簡作 SDARTS)遵循了 R-DARTS 的判斷依據,採取基於擾動的正則化方法,對 Hessian 特徵根進行了隱式的約束。具體來講,SDARTS 對結構權重給予了一定程度的隨機擾動,使得超網具有更好的抗干擾性,同時對損失函數地貌有平滑作用。

DARTS-

跳躍連接的工作機制分析

我們首先從跳躍連接的工作機制進行分析性能崩塌現象。ResNet <sup>[11]</sup> 中引入了跳躍連接,從而使得反向傳播時,網絡的淺層總包含對深層的梯度,因此可以緩解梯度消失的現象。如下式(i ,j,k 表示層數,X 爲輸入,W 爲權重,f 爲計算單元)。

爲了理清跳躍連接對殘差網絡性能的影響,我們在 ResNet 上做了一組驗證性試驗,即對跳躍連接加上可學習的結構權重參數 β,此時我們的梯度計算則變爲下式:

三次實驗分別初始化 β 爲 {0, 0.5, 1.0},我們發現 β 總能快速增長到 1 附近(Figure 2)來增大深層梯度向淺層的傳遞,進而緩解梯度消失的現象。

在 DARTS 中,跳躍連接跟 ResNet 類似,當具有可學習參數時,其結構參數也具有這種趨勢,從而促進超網的訓練。但正如 Fair DARTS [7] 提到的,同時帶來的問題就是對其他算子來講跳躍連接存在不公平優勢。

解決崩塌的辦法:增加輔助跳躍連接

根據上述的分析,DARTS- 指出跳躍連接(下圖 Figure 1 中 Skip)存在雙重作用:

  • 作爲可選算子本身,參與構建子網。
  • 與其他算子形成殘差結構,從而產生對超網優化產生促進作用。

第一個作用是預期其要發揮的作用,從而與其他算子公平競爭。第二個作用是跳躍連接具有不公平優勢的原因,促進了優化,但干擾了我們對最終搜索結果的推斷。

爲了將第二個作用剝離出來,我們提出額外增加一條跳躍連接(Auxiliary Skip),並使其結構權重 β 從 1 衰減到 0(簡便起見,使用線性衰減),這樣可以使得超網和子網保持結構上的一致性。Figure 1 (b)圖示出了一個子結構中兩個節點間的連接情況。

除了增加的輔助跳躍連接,DARTS- 優化過程和 DARTS 大同小異。首先根據 Figure 1 (b)構建超網,選取一種 β 衰減策略,然後採取交替迭代優化超網權重 w 和結構權重 α,具體見下面的算法描述(Algorithm 1)。

在本方法中,我們去掉了用指示信號(Indicator)發現性能崩塌的做法,比如 R-DARTS 中的特徵根,從而消除了 DARTS 的性能崩塌,因此命名爲 DARTS-。另外根據 PR-DARTS <sup>[12]</sup> 的收斂理論來分析,輔助跳躍連接具有平衡算子間競爭的作用,且當 β 衰減後,算子間的公平競爭依然保持。

分析和驗證

Hessian 特徵根變化趨勢

在 R-DARTS 以及 DARTS 採用的多個搜索空間下,DARTS- 發現了子網性能增長(Figure 4b)但 Hessian 特徵根變化幅度過大(Figure 4a)的情形,這個結果成爲了 R-DARTS 所提出原則的反例,即採用 R-DARTS 判定準則,我們會漏掉一些好的模型。這也說明了 DARTS- 可以帶來不同於 R-DARTS 的模型結構。

驗證集準確率地貌

驗證集準確率的地貌可以一定程度上說明模型的優化過程難易。DARTS (Figure 3a)在最優解附近範圍的地貌相對陡峭,等高線比較疏密不均,而 DARTS- 則表現得舒緩平滑,等高線更爲均勻。另外更爲光滑的地貌也不容易出現尖銳的局部最優點,一定程度也減少了離散化偏差。

實驗結果

模型結構

Figure 9 給出了我們在 DARTS 搜索空間 S0 和 Robust DARTS 搜索空間 S1-S4 得到的網絡結構。Figure 10 是在 MobileNetV2 的搜索空間下 ImageNet 數據集上進行直接搜索的結果。

分類任務結果

在標準分類數據集 CIFAR-10 和 ImageNet 上 DARTS- 均取得了業界領先的結果,如下表所示:

在 RobustDARTS 提出的檢驗魯棒性的多個搜索空間 S1-S4 中,DARTS- 搜索得到的模型性能優於 R-DARTS 和 SDARTS。

NAS 算法評測

NAS-Bench-201[10] 是用於衡量 NAS 算法的評測基準工具之一,DARTS- 也取得了優於其他 NAS 算法的結果,而且最好結果基本逼近了基準中最好的模型。

遷移能力

DARTS-A 作爲主幹網在 COCO 數據集目標檢測任務上也優於之前 NAS 模型的性能,mAP 達到了 32.5%。

綜合來看,DARTS- 方法繼承了DARTS 的高效率,且在標準數據集、NAS 基準評測、R-DARTS 搜索空間中證明了其魯棒性和有效性,在檢測任務中也證明了其領域遷移的能力,從而印證了搜索方法本身的優越性,解決了當前神經網絡架構搜索中的一些難題,將會對 NAS 研究和應用產生積極的推動作用。

總結及展望

本次美團在 ICLR 2021被收錄的文章 DARTS-,重新了梳理 DARTS 搜索結果不夠魯棒的原因,分析了跳躍連接的雙重作用,並提出了增加帶衰減係數的輔助跳躍連接來對其進行分離的方法,使得內層原生的跳躍連接只表現其作爲可選操作的功能。我們同時對 R-DARTS 所依賴的特徵根進行深入分析,發現了其作爲性能崩塌標誌會出現反例的情形。未來 DARTS- 作爲高效、魯棒且通用的搜索方法,期望在其他領域任務和落地中得到更多的拓展和應用。關於文章的更多細節,請參考原文。實驗代碼已經在 GitHub開源。

AutoML 技術可以適用於計算機視覺、語音、NLP、搜索推薦等領域,視覺智能中心 AutoML 算法團隊旨在通過 AutoML 技術賦能公司業務、加速算法落地。目前該論文已經申請了專利,本文算法也集成到美團自動化視覺平臺系統中,加速自動化模型生產和迭代。除了視覺場景外,我們後續將探索在搜索推薦、無人車、優選、語音等業務場景中的應用。

作者簡介

祥祥、曉星、張勃、曉林等,均來自美團視覺智能中心。

參考文獻

  1. Learning Transferable Architectures for Scalable Image Recognition, https://arxiv.org/abs/1707.07012.
  2. NAS-FPN: Learning scalable feature pyramid architecture for object detection, https://arxiv.org/abs/1904.07392.
  3. Auto-deeplab: Hierarchical neural architecture search for semantic image segmentation, https://arxiv.org/abs/1901.02985.
  4. DARTS-: Robustly Stepping out of Performance Collapse Without Indicators, https://openreview.net/forum?id=KLH36ELmwIB.
  5. DARTS: Differentiable Architecture Search, https://arxiv.org/pdf/1806.09055.pdf.
  6. Progressive Differentiable Architecture Search: Bridging the Depth Gap between Search and Evaluation, https://arxiv.org/pdf/1904.12760.
  7. Fair DARTS: Eliminating Unfair Advantages in Differentiable Architecture Search, https://arxiv.org/pdf/1911.12126.pdf.
  8. Understanding and Robustifying Differentiable Architecture Search,https://openreview.net/pdf?id=H1gDNyrKDS.
  9. Stabilizing Differentiable Architecture Search via Perturbation-based Regularization, https://arxiv.org/abs/2002.05283.
  10. NAS-Bench-201: Extending the Scope of Reproducible Neural Architecture Search ,https://openreview.net/forum?id=HJxyZkBKDr.
  11. Deep Residual Learning for Image Recognition, https://arxiv.org/abs/1512.03385.
  12. Theory-inspired path-regularized differential network architecture search,https://arxiv.org/abs/2006.16537.

閱讀美團技術團隊更多技術文章合集

前端 | 算法 | 後端 | 數據 | 安全 | 運維 | iOS | Android | 測試

| 在公衆號菜單欄對話框回覆【2020年貨】、【2019年貨】、【2018年貨】、【2017年貨】等關鍵詞,可查看美團技術團隊歷年技術文章合集。

| 本文系美團技術團隊出品,著作權歸屬美團。歡迎出於分享和交流等非商業目的轉載或使用本文內容,敬請註明“內容轉載自美團技術團隊”。本文未經許可,不得進行商業性轉載或者使用。任何商用行爲,請發送郵件至[email protected]申請授權。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章