作者 | 第四範式編輯 | 賈偉
論文地址:https://arxiv.org/abs/1905.13577
代碼:https://github.com/xujinfan/NASP-codes
神經架構搜索(NAS)因其比手工構建的架構更能識別出更好的架構而備受關注。近年來,可微分的搜索方法因可以在數天內獲得高性能的NAS而成為研究熱點。然而,由於超級網的建設,其仍然面臨著巨大的計算成本和性能低下的問題。
在本文中,我們提出了一種基於近端疊代(NASP)的高效NAS方法。與以往的工作不同,NASP將搜索過程重新定義為具有離散約束的優化問題和模型複雜度的正則化器。由於新的目標是難以解決的,我們進一步提出了一種高效的算法,由近端啟發法進行優化。通過這種方式,NASP不僅比現有的可微分的搜索方法速度快,而且還可以找到更好的體系結構並平衡模型複雜度。
最終,通過不同任務的大量實驗表明,NASP在測試精度和計算效率上均能獲得更好的性能,在發現更好的模型結構的同時,速度比DARTS等現有技術快10倍以上。此外,NASP消除了操作之間的關聯性。
此外,在WWW 2020的論文」 Efficient Neural Interaction Functions Search for Collaborative Filtering」中,我們將NASP算法應用到了推薦系統領域,歡迎關註:
視頻:https://www.tuijianxitong.cn/cn/school/video/26
PPT:https://www.tuijianxitong.cn/cn/school/openclass/27
論文:https://arxiv.org/pdf/1906.12091
代碼:https://github.com/quanmingyao/SIF
背景介紹
深度網絡已經應用到許多應用中,其中,適當的體系結構對於確保良好的性能至關重要。近年來,NAS因可以找到參數更少、性能更好的網絡成為了關注和研究的熱點,該方法可取代設計架構的人類專家。NASNet是這方面的先驅性工作,它將卷積神經網絡(CNN)的設計為一個多步驟決策問題,並用強化學習來解決。
然而,由於搜索空間離散且巨大,NASNet需要數百個GPU耗費一個月的時間,才能獲得一個令人滿意的網絡結構。後來,通過觀察網絡從小到大的良好傳輸性,NASNetA)提議將網絡分割成塊,並在塊或單元內進行搜索。然後,識別出的單元被用作構建塊來組裝大型網絡。這種兩階段的搜索策略極大地減小了搜索空間的大小,從而使進化算法、貪心算法、強化學習等搜索算法顯著加速。
儘管減少了搜索空間,但搜索空間仍然是離散的,通常很難有效搜索。最近的研究集中在如何將搜索空間從離散的變為可微分。這種思想的優點在於可微空間可以計算梯度信息,從而加快優化算法的收斂速度。該思想已經衍生出了各種技術,例如DARTS平滑了Softmax的設計選擇,並訓練了一組網絡;SNAS通過平滑抽樣方案加強強化學習。NAO使用自動編碼器將搜索空間映射到新的可微空間。
在所有這些工作中(Table 1),最為出色的是DARTS [1],因為它結合了可微分以及小搜索空間兩者的優點,實現了單元內的快速梯度下降。然而,其搜索效率和識別體系結構的性能仍然不夠令人滿意。由於它在搜索過程中保持超級網,從計算的角度來看,所有操作都需要在梯度下降過程中向前和向後傳播,而只選擇一個操作。從性能的角度來看,操作通常是相互關聯的。例如,7x7的卷積濾波器可以作為特例覆蓋3x3的濾波器。當更新網絡權值時,由DARTS構造的ensemble可能會導致發現劣質的體系結構。此外,DARTS未完成,即最終的結構需要在搜索後重新確定。這會導致搜索的體系結構和最終體系結構之間存在偏差,並可能導致最終體系結構的性能下降。
本次工作的方法
在此次工作中,第四範式提出了基於臨近疊代算子算法(Proximal gradient Algorithm [2])的NAS方法(NASP),以提高現有的可微搜索方法的效率和性能。
我們給出了一個新的NAS問題的公式和優化算法,它允許在可微空間中搜索,同時保持離散的結構。這樣,NASP就不再需要訓練一個超級網,從而加快搜索速度,從而產生更優的網絡結構。
該工作的貢獻在於:
1、除了以往NAS普遍討論的搜索空間、完備性和模型複雜度之外,該工作確定了一個全新且重要的一個因素,即NAS對體系結構的約束;
2、我們將NAS描述為一個約束優化問題,保持空間可微,但強制架構在搜索過程中是離散的,即在反向梯度傳播的時候儘量維持少量激活的操作。這有助於提高搜索效率並在訓練過程中分離不同的操作。正則化器也被引入到新目標中,從而控制網絡結構的大小;
3、由於這種離散約束難以優化,且無法應用簡單的DARTS自適應。因此,第四範式提出了一種由近端疊代衍生的新優化算法,並且消除了DARTS所需的昂貴二階近似,為保證算法的收斂性,我們更進一步進行了理論分析。
4、最後,在設計CNN和RNN架構時,使用各種基準數據集進行了實驗。與最先進的方法相比,提出的NASP不僅速度快(比DARTS快10倍以上),而且可以發現更好的模型結構。實驗結果表明,NASP在測試精度和計算效率上均能獲得更好的性能。
具體算法如下:
在第三步中,我們利用臨近疊代算子產生離散結構;再在第四步中更新連續的結構參數(單步梯度下降,無二階近似);最後,我們在離散的網絡結構下,更新網絡權重。
實驗結果
該工作利用搜索CNN和RNN結構來進行實驗。此次試驗使用CIFAR-10、ImageNet、PTB、WT2等四個數據集。
CNN的架構搜索(在CIFAR-10上搜索單元)
在CIFAR-10上搜索架構相同,卷積單元由N=7個節點組成,通過對單元進行8次疊加獲得網絡;在搜索過程中,我們訓練了一個由8個單元疊加的50個周期的小網絡。這裡考慮兩個不同的搜索空間。第一個與DARTS相同,包含7個操作。第二個更大,包含12個操作。
與最新的NAS方法相比,在相同的空間(7次操作)中,NASP的性能與DARTS(二階)相當,比DARTS(一階)好得多。在更大的空間(12個操作)中,NASP仍然比DARTS快很多,測試誤差比其他方法更低很多。
在以上實驗中,研究人員對模型複雜度進行了正則化,我們設置了的η=0。結果顯示,模型尺寸隨著η的增大而變小。
為了探索實驗中搜索到的單元在ImageNet上的遷移能力,我們將搜索到的單元堆疊了14次。值得注意的是,NASP可以用最先進的方法實現競爭性測試誤差。
RNN的架構搜索(在PTB上搜索單元)
根據DARTS的設置,遞歸單元由N=12個節點組成;第一個中間節點通過線性變換兩個輸入節點,將結果相加,然後通過tanh激活函數得到;第一個中間節點的結果應為由激活函數轉換而成。在搜索過程中,我們訓練了一個序列長度為35的50個階段的小網絡。為了評估在PTB上搜索到單元的性能,使用所發現的單元對單層遞歸網絡進行最多8000個階段的訓練,直到與批處理大小64收斂。實驗結果顯示,DARTS的二階比一階慢得多,NASP不僅比DARTS快得多,而且可以達到與其他最先進的方法相當的測試性能。
模型簡化測試
1、對比DARTS
實驗給出了更新網絡參數(即w)和架構(即A)的詳細比較。在相同的搜索時間內, NASP可以獲得更高的精度,且NASP在相同的精度下花費更少的時間。這進一步驗證了NASP比DARTS效率更高。
2、與同期工作比較
實驗中也加入了與同期工作的比較。ASAP 與BayesNAS 將NAS作為一個網絡修剪問題,該工作刪除了在搜索過程中無效的操作。ASNG和GDAS都對搜索空間進行隨機鬆弛,區別在於ASNG使用自然梯度下降進行優化,而GDAS使用Gumbel-Max技巧進行梯度下降。
此次實驗將NASP與這些工作進行比較,實驗表明,NASP更有效,可在CNN任務上提供更好的性能。此外,NASP還可以應用於RNN。
參考資料:
[1]. Liu, H.; Simonyan, K.; and Yang, Y. DARTS: Differentiable architecture search. In ICLR 2019
[2]. Parikh, N., and Boyd, S. Proximal algorithms. Foundations and Trends in Optimization 2013
AAAI 2020 報導:
-
新型冠狀病毒疫情下,AAAI2020 還去開會嗎?
-
美國拒絕入境,AAAI2020現場參會告吹,論文如何分享?
-
AAAI 最佳論文公布
-
AAAI 2020正式開幕,37%錄用論文來自中國,連續三年制霸榜首
AAAI 2020 論文集:
- AAAI 2020 論文解讀會 @ 望京(附PPT下載)
- AAAI 2020上的NLP有哪些研究風向?
- 微軟 6 篇精選 AAAI 2020 論文
AAAI 2020 論文解讀系列:
01. [中科院自動化所] 通過識別和翻譯交互打造更優的語音翻譯模型
02. [中科院自動化所] 全新視角,探究「目標檢測」與「實例分割」的互惠關係
03. [北理工] 新角度看雙線性池化,冗餘、突發性問題本質源於哪裡?
04. [復旦大學] 利用場景圖針對圖像序列進行故事生成
05. [騰訊 AI Lab] 2100場王者榮耀,1v1勝率99.8%,騰訊絕悟 AI 技術解讀
06. [復旦大學] 多任務學習,如何設計一個更好的參數共享機制?
07. [清華大學] 話到嘴邊卻忘了?這個模型能幫你 | 多通道反向詞典模型
08. [北航等] DualVD:一種視覺對話新框架
09. [清華大學] 藉助BabelNet構建多語言義原知識庫
10. [微軟亞研] 溝壑易填:端到端語音翻譯中預訓練和微調的銜接方法
11. [微軟亞研] 時間可以是二維的嗎?基於二維時間圖的視頻內容片段檢測
12. [清華大學] 用於少次關係學習的神經網絡雪球機制
13. [中科院自動化所] 通過解糾纏模型探測語義和語法的大腦表征機制
14. [中科院自動化所] 多模態基準指導的生成式多模態自動文摘
15. [南京大學] 利用多頭注意力機制生成多樣性翻譯
16. [UCSB 王威廉組] 零樣本學習,來擴充知識圖譜(視頻解讀)
17. [上海交大] 基於圖像查詢的視頻檢索,代碼已開源!
18. [奧盧大學] 基於 NAS 的 GCN 網絡設計(視頻解讀)
19. [中科大] 智能教育系統中的神經認知診斷,從數據中學習交互函數
20. [北京大學] 圖卷積中的多階段自監督學習算法
21. [清華大學] 全新模型,對話生成更流暢、更具個性化(視頻解讀,附PPT)
22. [華南理工] 面向文本識別的去耦注意力網絡
23. [自動化所] 基於對抗視覺特徵殘差的零樣本學習方法
24. [計算所] 引入評估模塊,提升機器翻譯流暢度和忠實度(已開源)
25. [北大&上交大] 姿態輔助下的多相機協作實現主動目標追蹤
26. [快手] 重新審視圖像美學評估 & 尋找精彩片段聚焦點
27. [計算所&微信AI] 改進訓練目標,提升非自回歸模型翻譯質量(已開源)
28. [中科院&雲從科技]:雙視圖分類,利用多個弱標籤提高分類性能
29. [中山大學] 基於樹狀結構策略的漸進強化學習
30. [東北大學] 基於聯合表示的神經機器翻譯(視頻解讀)
31. [計算所]引入評估模塊,提升機器翻譯流暢度和忠實度(視頻解讀)
32. [清華大學]用於少次關係學習的神經網絡雪球機制(視頻解讀)
33. [計算所]非自回歸機器翻譯,基於n元組的訓練目標(視頻解讀)
34. [清華大學] 司法考試數據集(視頻解讀,附下載連結)
35. [自動化所] 弱監督語義分割(視頻解讀)
36. [自動化所] 稀疏二值神經網絡,不需要任何技巧,取得SOTA精度(視頻解讀)
37. [華科&阿里] 從邊界到文本—一種任意形狀文本的檢測方法
38. [上交大&雲從科技] DCMN+ 模型:破解「閱讀理解」難題,獲全球領先成績
45. [商湯] 新弱監督目標檢測框架
46. [天津大學] DIoU和CIoU:IoU在目標檢測中的正確打開方式
47. [牛津大學] 利用注意力機制,實現最優相機定位(視頻解讀)