還為構建神經網路發愁?穀歌大腦的自動架構搜索簡直如虎添翼 | ICLR 2017
雷鋒網AI科技評論按:4月24日-26日,ICLR 2017於法國土倫舉辦。雷鋒網AI科技評論編輯赴前線帶來該會議的一線報導。期間,雷鋒網也將圍繞會議議程及論文介紹展開一系列的覆蓋和專題報導,敬請期待。
神經網路是功能強大而又靈活的模型,在圖像,語音以及自然語言理解等學習任務上有良好的效果。儘管神經網路很成功,但設計一個好的神經網路仍然十分困難。為了能夠使設計神經網路變得簡單,穀歌大腦團隊發表了一篇名為《Neural architecture search with reinforcement learning》的文章,該文章使用迴圈網路來生成神經網路中的模型描述,並用強化學習訓練這個RNN,以最大限度的提高驗證集中生成的架構的準確性。
該論文的作者之一Quoc V. Le是機器學習大牛吳恩達先生在斯坦福大學時期的博士生,而雷鋒網瞭解到,該論文將會在今天的 ICLR會議上作為第四個Contributed talk進行討論。
以下為雷鋒網AI科技評論據論文內容進行的部分編譯。
論文摘要
過去幾年中,許多深度神經網路在語音辨識,圖像識別,機器翻譯等富有挑戰性的任務中取得極大的成功。伴隨著神經網路的發展,研究人員的重點從特徵設計轉移到了架構設計,比如從SIFT和HOG演算法,轉移到了AlexNet,VGGNet,GoogleNet,以及ResNet等網路架構設計中。儘管這些方法似乎變得更簡單了,但設計網路架構仍然需要大量的專業知識並耗費大量時間。
穀歌大腦團隊提出了神經架構搜索(Neural Architecture Search),使用基於梯度的方法以找到最優的架構,過程如上圖。由於神經網路的結構可以由特定的變長字串指代,因此可以使用迴圈神經網路(控制器)生成該字串。使用真實資料訓練由字串指代的網路(“子網路”),並在驗證集上得到一個準確率。之後使用強化學習訓練RNN,將準確率作為reward信號,即可以計算策略梯度,以便更新控制器。因此,在下一個反覆運算週期,控制器有更大的可能會生成一個能夠得到更高準確率的架構。換種說法,控制器能夠學習如何改善它的搜索。
該論文的結果展示了神經架構搜索能夠設計出很好的模型,在CIFAR-10資料集上的圖像識別,神經架構搜索能夠找到一個新穎的卷積網路模型,該模型比目前人工設計的最好的模型更好,在測試集上得到了3.84的錯誤率,同時速度是目前最好的人工模型的1.2倍。在Penn Treebank資料集的語言模型中,神經架構搜索設計出的模型比先前RNN和LSTM架構更好,困惑度(perplexity)為62.4,比目前最好的人工方法提高了3.6.
使用迴圈神經網路生成模型描述
使用控制器生成神經網路架構的超參數,為了靈活性,控制器選擇為迴圈神經網路。下圖為預測只具有卷積層的前饋神經網路,控制器將生成的超參數看作一系列符號。
在實驗中,如果網路的層數超過一定值,則生成架構會停止。該值遵循一定的策略,並隨著訓練過程增加。一旦控制器RNN完成了架構的生成,就開始構建並訓練具有該架構的神經網路。在網路收斂之後,記錄網路在驗證集中的準確率,並對控制器RNN的參數進行優化,以使控制器所提出的架構的預期驗證準確率最大化。
使用強化學習進行訓練
控制器預測的模型描述可以被看作設計子網路的一系列action。在訓練子網路收斂之後,該子網路會在保留資料集上得到一個準確度R。使用準確度R作為reward信號,並使用強化學習訓練控制器。
實驗結果
CIFAR-10資料集上的卷積架構學習
搜索空間為卷積結構,使用了非線性層以及批歸一化(batch normalization)。對於每個卷積層,控制器需要在[1,3,5,7]中選擇濾波器的寬度和高度,在[24,36,48,64]中選擇濾波器數量。
RNN控制器為兩層LSTM,每層有35個隱藏單元。使用學習率為0.0006的ADAM優化器訓練。控制器權值在-0.08到0.08之間平均初始化。並且進行分散式訓練,使用了800個GPU同時訓練800個網路。當RNN控制器確定了一個架構之後,子網路就被構建,並訓練50個週期。在控制器訓練過程中,控制器每確定1600個網路架構,網路的深度就增加2,初始的網路深度為6。
在控制器訓練了12800個架構之後,得到了最高的驗證集準確率,與其他方法的準確率對比見下圖:
Penn Treebank資料集上迴圈網路架構學習
訓練過程與CIFAR-10實驗基本相同,最終結果如下:
總結:該論文提供了一種使用RNN構建神經網路模型的方法。通過使用迴圈神經網路作為控制器,該方法可以靈活地在不同的結構空間中搜索。該方法在一些具有挑戰性的資料集上有著很好的性能,也為自動構建高品質神經網路架構提供了一個新的研究方向。
ICLR評論
ICLR委員會最終決定
評價:
該篇論文是提交給會議的論文中最好的幾篇之一。評委們都很欣賞該想法,並認為實驗設計得嚴密,有趣,引人注意。尤其令人感興趣的是實驗結果表明生成模型的性能比目前廣泛使用的模型更好(例如LSTM)。
決定:
接受(作為Oral文章)
評委評論:
打分:
9分:所有接受論文中的Top 15%,強烈推薦
評價:
該論文探索了自動架構搜索領域的一個重要部分。儘管從技術上看,目前計算能力仍然緊張,但是隨著未來技術的進步,這種權衡會變得更好。
該論文覆蓋了標準的視覺和文字任務,並在許多資料集上進行了測試,展示了在標準RNN和CNN搜索空間之外仍然有改進的餘地。儘管我們希望這個方法能夠應用到更多的資料集上,但是現在已經能夠充分的展示出該方法不僅能與人工設計的架構不相上下,甚至還能有所超越。這也意味著將一種方法應用到一個特定的資料集上,已經不需要在每個步驟上都手動進行設置了。
該論文是一篇課題有趣,實驗結果良好的一篇文章。我強烈推薦接受。
評委評論:
打分:
9分:所有接受論文中的Top 15%,強烈推薦
評價:
該論文提供了一種基於actor-critic架構的神經網路結構搜索。該方法將DNN看作一種可變長度序列,並使用強化學習來尋找目標架構,作為一個actor。在強化學習的背景下,節點選擇是一個action,架構的誤差作為reward。一個雙層自回歸LSTM作為控制器和critic。該方法在兩個較難的問題上進行實驗,並與人工創建的多種架構進行對比。
這是一個非常激動人心的文章。人工選擇架構是很困難的,並且很難知道最優的結果跟手工設計的網路之間相距多遠。該方法很新穎。作者很詳細的闡述了細節,也指出了需要進行的改進的地方。測試的資料很好的展示了該方法的能力。能夠看到生成架構和人工架構之間的區別很有趣。文章寫得很清晰易懂。相關方法的覆蓋面和對比都很詳細。
如果能夠知道訓練所需要的時間,以及不同時間/資源比例所訓練處模型的品質等資料就更好了。總之,這是一個極好而有趣的文章。
一
個很好的文章:
打分:
9分:所有接受文章的Top 15%,強烈推薦
評價:
該文章提出了使用強化學習和迴圈神經網路來針對特定任務設計網路架構的方法。這篇文章的想法很有前景,並且在兩個資料集上的實驗結果表明了這個方法很扎實。
文章的優點:
使用RNN來生成網路的描述,使用RL訓練RNN,這個想法很有趣且很有前景。
生成的模型與人工設計的很相似,這也表明了人類的專家指示和生成網路架構是相容的。
文章的缺點:
網路的訓練時間過長,即使使用了大量的計算資源。
實驗並沒有提供生成架構的泛化能力。如果能夠看到生成架構在其他相似但不同的資料集上的表現就更好了。
總之,我相信這是一篇很好的文章。但是仍需要更多的實驗來展示它相較於人工設計模型的潛在優勢。
想要深入瞭解該方法的請閱讀原論文:
ICLR 2017
穀歌大腦團隊也在Tensorflow在GitHub的倉庫中開源了代碼:
github