谷歌大腦AutoML最新進展:不斷進化的阿米巴網路

量子位發表於2018-03-16
原作 Esteban Real
Root 編譯自 Google Research Blog
量子位 出品 | 公眾號 QbitAI

自然界用了5億年時間。

才把神經系統從最原始的雛形——阿米巴(Amoeba)變形蟲分化出可對外界環境刺激做出響應的內漿,進化到現在的高度複雜的人腦。

如今我們人腦,相對目前階段的機器來說,可以輕而易舉完成各種複雜的任務。

而機器的演算法模型要做到同樣表現(能力範圍還非常侷限),必須得靠大量的在AI領域裡深耕多年的專家才行。

像認貓、識圖、辨別基因突變、或者是診斷疾病這些專項的任務,每一個有效的模型的搭建和除錯都必須重度依賴AI專家的經驗。

有沒有什麼方法,訓練出一個據外界環境的變化,像阿米巴變形蟲那樣即時調整出最優的生存策略,不斷自我進化獲取最優結果的演算法呢?

自進化的AmoebaNet

還真的有。

谷歌大腦今日就在研究部落格更新,他們已經研究出了一種擁有很強的自我進化能力的神經網路,AmoebaNet。

這個工作的研究基礎是2002年Stanley和Miikkulainen的神經進化拓撲學。而其他研究機構,OpenAI,Uber實驗室,還有DeepMind他們也有在研究自進化的演算法。

谷歌本身有強大的算力優勢。所以谷歌大腦團隊在琢磨,除了採用強化學習這種方法,怎麼樣才能能讓影像分類器的迭代速度加快。

迭代速度快還不夠,出來的效果也必須好,最好還不需要重度依賴專家。畢竟現在問題那麼多,AI專家根本不夠用。

快、好、省。這就是谷歌大腦要AmoebaNet滿足的三個點。

做到快、好、省的思考路徑

2017年ICML(國際機器學習大會),谷歌大腦發表了一篇論文Large-Scale Evolution of Image Classifiers。這個工作採用了非常簡單的神經網路,以及簡單的初始設定,讓演算法自己去進化出網路架構。當時這個演算法的效果就已經可以媲美人工手調的模型了。

這項工作出來之後,大家還是挺激動的。因為這意味著越來越多的AI應用可以一定程度上減少模型人工搭建除錯的壓力。

這下,對沒有時間進階成一個AI專家的使用者來說,也能獲得一個效果越來越好的模型了。

谷歌大腦思考的下一個問題是,人工手調和自我進化結合的模型,效果會不會比單獨的要好?

(人機結合療效好?)

所以,谷歌大腦最近的一篇論文Regularized Evolution for Image Classifier Architecture Search就開始採用更為複雜些的網路以及優化過的初始設定,還用上了谷歌最新的TPUv2晶片。

這一次,谷歌大腦把最高配的硬體,AI專家的經驗,以及自我進化的演算法全砌上,就看在CIFAR-10和ImageNet上跑的效果怎麼樣了。

先看演算法自我迭代的過程&效果

下圖出自谷歌大腦的第一篇論文,每一個點代表用CIFAR-10訓練後得到的神經網路。

640?wx_fmt=png

 神經網路進化的實驗過程。四張表代表了不同時期進化得到的神經網路架構,最右的是精確性表現最好的神經網路架構。前面三個都是最好的架構的前身。

剛開始,整個神經網路群都沒有隱藏層,組成架構都是上千個一樣的簡單種子模型。

一開始用的種子模型(這一步還沒有結合AI專家的經驗),每次自我迭代之後,評估神經網路的分類表現。

把表現最好的,也就是分類結果最準確的神經網路挑出來,當作母代模型,用於下一次迭代。

然後在母代模型的基礎上,做微調,進化生成更多的子代模型,歸進整個神經網路群中(相當於進化生物學裡的種群的概念)

表現不是最好的模型就沒有變異進化的機會。

谷歌大腦第一篇論文的工作涉及到的變異都很簡單。

比方說,隨機移除一個卷積層,或者在隨意兩層之間加一個連線,或者是改變學習的速率等等。

該工作的結果可以看出來自我進化演算法的巨大潛力,雖然搜尋空間的質量可能麻麻地(dei)。

舉個例子。

如果把其中一個種子模型改成Inception-ResNet分類器的話,那麼可能會得到一個錯誤的結論:現在這個演算法表現還不錯,得到一個比較滿意的結果了。

但是這樣操作的話,我們就把這次的變異操作硬編碼了(把這次行為固定下來了,以後不好改),這樣的話就變成以最終結果數值為導向,而不是終極效果目標為導向了。

把其他可能性滅掉後,就達不到進化的目的了。

在這個工作裡,谷歌大腦把人工操作的部分壓縮到最小範圍,包含對ReLUs和批標準化層的干預。

再看人機結合後的模型效果

在上一次工作之後,谷歌大腦想減少模型進化過程中的試錯成本。採用2017年Zoph的類inception模組,有效地把搜尋空間縮小,並固定了神經網路的架構,其中網路上節點的模組是可以替換掉的。

640?wx_fmt=png

 2017年Zoph引入的類inception模組。

最左邊的那個圖,指的是整個神經網路的外部架構,輸入的資料從底部往上處理。

最右邊的圖,是神經網路節點上的模組內部框架。

整個網路的目標是產出精確性最高的輸出結果。

人機結合後模型的變異,是隨機重連輸出,或者隨機替換模組。最後進化出來的模型是高質量的。

不同方法得到的模型效果對比

640?wx_fmt=png

 自進化、強化學習、隨機搜尋產生的模型對比。

從圖可以看出,在訓練的早期,自我進化的模型用最少的算力就獲得了最好的效果。

另外,自我進化模型很重要的一個特徵是,最舊的、很久沒獲得變異機會的模型會被棄掉。這樣整個神經網路群的進化速度會越來越快。更多細節可以參考論文。

最後,附阿米巴網路AmoebaNet論文地址:
https://arxiv.org/abs/1802.01548

& 編譯來源:
https://research.googleblog.com/2018/03/using-evolutionary-automl-to-discover.html

你可能感興趣

別翻牆了,谷歌機器學習速成課25講視訊全集在此

谷歌開源語義影像分割模型DeepLab-v3+ | 附程式碼

首個72量子位元的量子計算機問世,谷歌出品

破解AI大腦黑盒邁出新一步!谷歌現在更懂機器,還開源了研究工具

DIY發現新行星操作指南 | 谷歌開源了行星發現程式碼

綠幕通通扔掉 ੧ᐛ੭ | 谷歌AI實時「摳」背景

加入社群

量子位AI社群15群開始招募啦,歡迎對AI感興趣的同學,加小助手微信qbitbot6入群;


此外,量子位專業細分群(自動駕駛、CV、NLP、機器學習等)正在招募,面向正在從事相關領域的工程師及研究人員。


進群請加小助手微訊號qbitbot6,並務必備註相應群的關鍵詞~通過稽核後我們將邀請進群。(專業群稽核較嚴,敬請諒解)

誠摯招聘

量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話介面,回覆“招聘”兩個字。

640?wx_fmt=jpeg

量子位 QbitAI · 頭條號簽約作者

վ'ᴗ' ի 追蹤AI技術和產品新動態



相關文章