雖然大多數流行和成功的模型架構都是由人工專家設計的,但這并不意味著我們已經探索了整個網絡架構空間并確定了最佳選擇。如果我們采用一種系統的、自動的方式來學習高性能模型體系結構,那么我們將更有可能找到最佳的解決方案。
自動學習和演化網絡拓撲并不是一個新想法(Stanley & Miikkulainen, 2002)。近年來,Zoph & Le 2017和Baker等人在2017年的開創性工作吸引了神經架構搜索(NAS)領域的大量關注,為更好、更快、更經濟的NAS方法帶來了許多有趣的想法。
當我開始研究NAS時,我發現Elsken等人2019年的這項調查非常有幫助。它們將NAS描述為一個由三個主要成分組成的系統,簡潔明了,也被其他NAS論文廣泛采用。
搜索空間: NAS搜索空間定義了一組操作(例如卷積、全連接、池化)以及如何將操作連接起來形成有效的網絡架構。搜索空間的設計通常涉及人類的專業知識,以及不可避免的人類偏見。
搜索算法: NAS搜索算法對網絡體系結構候選對象進行采樣。它接受子模型性能指標作為獎勵(例如,高精度,低延遲),并優化生成高性能架構候選。
評估策略: 我們需要測量、估計或預測提出的大量子模型的性能,以獲得反饋,供搜索算法學習。候選評估的過程可能非常昂貴,許多新的方法被提出來節省時間或計算資源。
深度學習在許多領域都取得了重大突破和進展。這是因為深度學習具有強大的自動表示能力。實踐證明,網絡結構的設計對數據的特征表示和最終的性能至關重要。為了獲得良好的數據特征表示,研究人員設計了各種復雜的網絡結構。然而,網絡架構的設計在很大程度上依賴于研究人員的先驗知識和經驗。因此,一個自然的想法是盡量減少人為的干預,讓算法自動設計網絡的架構。因此,這需要更深入到強大的智慧。
近年來,大量相關的神經結構搜索算法(NAS)已經出現。他們對NAS算法進行了各種改進,相關研究工作復雜而豐富。為了減少初學者進行NAS相關研究的難度,對NAS進行全面系統的調查是必不可少的。之前的相關調查開始主要從NAS的基本組成部分: 搜索空間、搜索策略和評估策略對現有工作進行分類。這種分類方法比較直觀,但是讀者很難把握中間的挑戰和標志性作品。因此,在本次調查中,我們提供了一個新的視角:首先概述最早的NAS算法的特點,總結這些早期NAS算法存在的問題,然后為后續的相關研究工作提供解決方案。并對這些作品進行了詳細而全面的分析、比較和總結。最后,提出了今后可能的研究方向。
概述
深度學習已經在機器翻譯[1-3]、圖像識別[4,6,7]和目標檢測[8-10]等許多領域展示了強大的學習能力。這主要是因為深度學習對非結構化數據具有強大的自動特征提取功能。深度學習已經將傳統的手工設計特征[13,14]轉變為自動提取[4,29,30]。這使得研究人員可以專注于神經結構的設計[11,12,19]。但是神經結構的設計很大程度上依賴于研究者的先驗知識和經驗,這使得初學者很難根據自己的實際需要對網絡結構進行合理的修改。此外,人類現有的先驗知識和固定的思維范式可能會在一定程度上限制新的網絡架構的發現。
因此,神經架構搜索(NAS)應運而生。NAS旨在通過使用有限的計算資源,以盡可能少的人工干預的自動化方式設計具有最佳性能的網絡架構。NAS- RL[11]和MetaQNN[12]的工作被認為是NAS的開創性工作。他們使用強化學習(RL)方法得到的網絡架構在圖像分類任務上達到了SOTA分類精度。說明自動化網絡架構設計思想是可行的。隨后,大規模演化[15]的工作再次驗證了這一想法的可行性,即利用演化學習來獲得類似的結果。然而,它們在各自的方法中消耗了數百天的GPU時間,甚至更多的計算資源。如此龐大的計算量對于普通研究者來說幾乎是災難性的。因此,如何減少計算量,加速網絡架構的搜索[18-20,48,49,52,84,105]就出現了大量的工作。與NAS的提高搜索效率,NAS也迅速應用領域的目標檢測(65、75、111、118),語義分割(63、64、120),對抗學習[53],建筑規模(114、122、124),多目標優化(39、115、125),platform-aware(28日34、103、117),數據增加(121、123)等等。另外,如何在性能和效率之間取得平衡也是需要考慮的問題[116,119]。盡管NAS相關的研究已經非常豐富,但是比較和復制NAS方法仍然很困難[127]。由于不同的NAS方法在搜索空間、超參數技巧等方面存在很多差異,一些工作也致力于為流行的NAS方法提供一個統一的評估平臺[78,126]。
隨著NAS相關研究的不斷深入和快速發展,一些之前被研究者所接受的方法被新的研究證明是不完善的。很快就有了改進的解決方案。例如,早期的NAS在架構搜索階段從無到有地訓練每個候選網絡架構,導致計算量激增[11,12]。ENAS[19]提出采用參數共享策略來加快架構搜索的進程。該策略避免了從頭訓練每個子網,但強制所有子網共享權值,從而大大減少了從大量候選網絡中獲得性能最佳子網的時間。由于ENAS在搜索效率上的優勢,權值共享策略很快得到了大量研究者的認可[23,53,54]。不久,新的研究發現,廣泛接受的權重分配策略很可能導致候選架構[24]的排名不準確。這將使NAS難以從大量候選架構中選擇最優的網絡架構,從而進一步降低最終搜索的網絡架構的性能。隨后DNA[21]將NAS的大搜索空間模塊化成塊,充分訓練候選架構以減少權值共享帶來的表示移位問題。此外,GDAS-NSAS[25]提出了一種基于新的搜索架構選擇(NSAS)損失函數來解決超網絡訓練過程中由于權值共享而導致的多模型遺忘問題。
在快速發展的NAS研究領域中,類似的研究線索十分普遍,基于挑戰和解決方案對NAS研究進行全面、系統的調研是非常有用的。以往的相關綜述主要根據NAS的基本組成部分: 搜索空間、搜索策略和評估策略對現有工作進行分類[26,27]。這種分類方法比較直觀,但不利于讀者捕捉研究線索。因此,在本次綜述查中,我們將首先總結早期NAS方法的特點和面臨的挑戰。基于這些挑戰,我們對現有研究進行了總結和分類,以便讀者能夠從挑戰和解決方案的角度進行一個全面和系統的概述。最后,我們將比較現有的研究成果,并提出未來可能的研究方向和一些想法。
對抗攻擊的最新進展揭示了現代深層神經網絡的內在弱點。從那時起,人們就致力于通過專門的學習算法和損失函數來增強深度網絡的魯棒性。在這項工作中,我們從體系結構的角度研究了網絡體系結構的模式,這些模式對對抗攻擊具有彈性。為了獲得本研究所需的大量網絡,我們采用單次神經結構搜索,對一個大網絡進行一次訓練,然后對采樣的子網絡進行細化。采樣的結構及其實現的精度為我們的研究提供了豐富的基礎。我們的“健壯架構Odyssey”揭示了幾個有價值的觀察結果:1)緊密連接的模式提高了健壯性;2)在計算預算下,直接連接邊加入卷積運算是有效的;3)求解過程流(FSP)矩陣是網絡魯棒性的良好指標。基于這些觀察,我們發現了一系列健壯的體系結構(RobNets)。在各種數據集上,包括CIFAR、SVHN、Tiny-ImageNet和ImageNet,與其他廣泛使用的體系結構相比,RobNets具有更好的健壯性性能。值得注意的是,在白盒和黑箱攻擊下,即使參數數更少,RobNets也能顯著提高魯棒精度(~5%的絕對增益)。
AutoML: A Survey of the State-of-the-Art
深度學習已經滲透到我們生活的方方面面,給我們帶來了極大的便利。然而,針對某一特定任務構建高質量的深度學習系統的過程不僅耗時,而且需要大量的資源和人力,阻礙了深度學習在產業界和學術界的發展。為了緩解這一問題,越來越多的研究項目關注于自動化機器學習(AutoML)。在本文中,我們提供了一個全面的和最新的研究,在最先進的汽車。首先,根據機器學習的特點,詳細介紹了自動化技術。在此基礎上,總結了神經結構搜索(NAS)的研究現狀,這是目前自動化領域研究的熱點之一。我們還將NAS算法生成的模型與人工設計的模型進行了比較。最后,提出了有待進一步研究的幾個問題。