微軟提出Petridish,完美解決問題的神經網絡?

全文共2531字,預計學習時長

8分鐘

微軟提出Petridish,完美解決問題的神經網絡?

來源:www.lovehhy.net


神經架構搜索(NAS)是當前深度學習最熱門的話題之一。


微軟提出Petridish,完美解決問題的神經網絡?

什麼是NAS方法呢?


從概念上講,NAS方法專注於為給定問題和數據集找到合適的神經網絡體系結構。不妨將這個方法理解為使機器學習架構本身成為機器來學習問題。近年來,NAS技術的數量激增,並且正在更多主流的深度學習框架和平臺得到應用。但是,第一代NAS模型在經歷神經網絡域名變更時遇到了許多困難。因此,尋找新的NAS技術極有可能會繼續推動該領域的深層次創新。


微軟提出Petridish,完美解決問題的神經網絡?

來源:www.raincent.com


最近,微軟研究院推出了Petridish,一種優化神經網絡結構選擇的NAS算法。


之所以開發NAS,是因為神經網絡的設計過程相當消耗資源。在當前的深度學習生態系統中,藉助於知名的,性能一流的網絡,數據集可能與之前已被證實的網絡所遇到的完全不同,幾乎沒什麼保證。在許多情況下,NAS方法通常需要數百天才能找到好的架構,並且效果幾乎很難比隨機搜索好。機器學習中還有一個類似於NAS技術挑戰的問題:特徵選擇。


就像NAS方法一樣,特徵選擇算法需要為給定特定數據集的模型提取相關特徵。顯然,選擇特徵比神經網絡體系結構要簡單得多,但是特徵選擇技術的許多原理為Petridish團隊提供了靈感。


微軟提出Petridish,完美解決問題的神經網絡?

獲取經驗的方式:NAS的簡要歷史


鑑於NAS方法最近的熱度,許多人可能認為NAS是一門新興學科。


毫無疑問,自2016年以來,隨著谷歌發表了有關強化學習的著名NAS論文,NAS經歷了復興。但是,其起源可以追溯20世紀80年代末。NAS最早的論文之一是1988年的《用於識別問題的自組織神經網絡》。從那時開始,這個領域新增了不少出版物,來概述這項有趣的技術,但是直到Google推動NAS,才引起了主流機器學習社區的關注。如果您對NAS方法的發佈歷史感興趣,AutoMLFreiburg-Hannover網站將提供迄今為止最完整的彙編之一。


微軟提出Petridish,完美解決問題的神經網絡?

NAS的兩種類型:前向搜索與後向搜索


探索NAS空間時,有兩種基本的技術類型:前向搜索和後向搜索。後向搜索方法是實現NAS方法的最常用方法。從概念上講,向後搜索NAS方法從一個超級圖譜開始,該圖是所有可能架構的結合,並學會通過梯度下降或強化學習逐步降低不必要的邊緣的權重。儘管此類方法極大地減少了NAS的搜索時間,但其在需要人域知識來創建人名圖譜的情況下具有侷限性。


前向搜索NAS方法試圖將神經網絡體系結構從小型擴展到大型。這種方法類似於深度學習模型中特徵選擇算法的許多原理。與後向搜索不同,前向搜索不需要預先指定有限的搜索空間,因此在從現有模型中進行熱啟動以及進行終身學習時,前向搜索更加通用並且更易於使用。


微軟提出Petridish,完美解決問題的神經網絡?

微軟提出Petridish,完美解決問題的神經網絡?

Petridish


Petridish是一種基於特徵選擇和梯度增強技術的前向搜索NAS方法。該算法的工作原理是創建一個模型庫作為其搜索輸出,然後合併停止前進和停止漸變層,以更有效地識別有利於構建該庫的候選對象,並使用異步訓練。


Petridish算法可以分為三個基本階段:


· 階段0:Petridish從某些父模型開始,這是一個人工編寫的微小模型,具有一層或兩層,或者已經由領域專家在數據集中找到。

· 階段1:Petridish使用停止漸變和停止前進圖層將候選圖層連接到父模型,並對其進行部分訓練。候選層可以是搜索空間中的任何操作包。使用停止梯度層和停止向前層可以在不影響模型的正向激活和反向梯度的情況下累積相對於候選對象的梯度。如果沒有停止梯度層和停止向前層,將很難確定哪些候選層對父模型的性能有所貢獻,並且如果您想查看它們各自的貢獻,則會需要單獨的培訓,從而增加了成本。

· 階段2:如果發現一個或一組特定的候選者對模型有利,則將停止梯度和停止前進層以及其他候選者移除,然後訓練模型收斂。訓練結果被添加到散點圖中,自然而然地產生了帕累託邊界的估計。

微軟提出Petridish,完美解決問題的神經網絡?


帕雷託(Pareto)邊界的合併是對Petridish的補充,它使研究人員可以更輕鬆地確定實現特定任務最佳性能組合的體系結構。帕雷託邊界的估計使我們更容易看到準確性,FLOPS,內存,延遲和其他條件之間的折衷。在下圖中,沿著帕雷託邊界(紅線)的模型構成了搜索輸出,這是一個模型庫,研究人員和工程師可以從中選擇。


微軟提出Petridish,完美解決問題的神經網絡?


微軟研究院在不同的NAS基準測試中評估了Petridish。具體而言,使用CIFAR-10數據集對Petridish進行了圖像分類模型測試,然後將結果傳輸到ImageNet。在CIFAR-10上,Petridish的平均測試錯誤率為2.75±0.21%,最佳結果為2.51%,僅在流行的單元格搜索空間上使用3.2M參數和5天的GPU搜索時間即可獲得最佳測試結果。將CIFAR-10上找到的模型轉移到ImageNet時,Petridish僅在宏搜索空間上使用4.3M參數即可達到28.7±0.15%的top-1測試錯誤,最佳結果為28.5%。初始測試能夠勝過現有的NAS方法,同時保持可行的計算成本水平。


微軟提出Petridish,完美解決問題的神經網絡?


Petridish是NAS技術快速發展的生態系統中有趣的補充。Petridis依賴於前向搜索模型這一事實使它更加迷人,因為大多數流行的NAS方法都依賴於向後搜索技術。微軟已經將NAS模型作為其Azure ML平臺的一部分,因此有趣的是Petridish成為了該堆棧的一部分。


如果你還想了解更多有關NAS方法的問題,歡迎給小芯留言喲~小芯後續給大家安排上~

微軟提出Petridish,完美解決問題的神經網絡?

我們一起分享AI學習與發展的乾貨


分享到:


相關文章: