機器學習全靠調(diào)參?這個思路已經(jīng)過時了。
谷歌大腦團隊發(fā)布了一項新研究:只靠神經(jīng)網(wǎng)絡架構搜索出的網(wǎng)絡,不訓練,不調(diào)參,就能直接執(zhí)行任務。這樣的網(wǎng)絡叫做WANN,權重不可知神經(jīng)網(wǎng)絡。它在MNIST數(shù)字分類任務上,未經(jīng)訓練和權重調(diào)整,就達到了92%的準確率,和訓練后的線性分類器表現(xiàn)相當。除了監(jiān)督學習,WANN還能勝任許多強化學習任務。
團隊成員之一的大佬David Ha,把成果發(fā)上了推特,已經(jīng)獲得了1300多贊:
那么,先來看看效果吧。
谷歌大腦用WANN處理了3種強化學習任務。(給每一組神經(jīng)元,共享同一個權重。)
第一項任務,Cart-Pole Swing-Up。
這是經(jīng)典的控制任務,一條滑軌,一臺小車,車上一根桿子。小車在滑軌的范圍里跑,要把桿子從自然下垂的狀態(tài)搖上來,保持在直立的位置不掉下來。(這個任務比單純的Cart-Pole要難一些:Cart-Pole桿子的初始位置就是向上直立,不需要小車把它搖上來,只要保持就可以。)
難度體現(xiàn)在,沒有辦法用線性控制器 (Linear Controller) 來解決。每一個時間步的獎勵,都是基于小車到滑軌一頭的距離,以及桿子擺動的角度。
WANN的最佳網(wǎng)絡 (Champion Network) 長這樣:
它在沒有訓練的狀態(tài)下,已經(jīng)表現(xiàn)優(yōu)異:
表現(xiàn)最好的共享權重,給了團隊十分滿意的結果:只用幾次擺動便達到了平衡狀態(tài)。
第二項任務,Bipedal Waker-v2。
一只兩足“生物”,要在隨機生成的道路上往前走,越過凸起,跨過陷坑。獎勵多少,就看它從出發(fā)到掛掉走了多長的路,以及電機扭矩的成本(為了鼓勵高效運動) 。每條腿的運動,都是由一個髖關節(jié)、和一個膝關節(jié)來控制的。有24個輸入,會指導它的運動:包括“激光雷達”探測的前方地形數(shù)據(jù),本體感受到的關節(jié)運動速度等等。比起第一項任務中的低維輸入,這里可能的網(wǎng)絡連接就更多樣了。所以,需要WANN對從輸入到輸出的布線方式,有所選擇。這個高維任務,WANN也優(yōu)質完成了。
你看,這是搜索出的最佳架構,比剛才的低維任務復雜了許多:
它在-1.5的權重下奔跑,長這樣:
第三項任務,CarRacing-v0。
這是一個自上而下的 (Top-Down) 、像素環(huán)境里的賽車游戲。一輛車,由三個連續(xù)命令來控制:油門、轉向、制動。目標是在規(guī)定的時間里,經(jīng)過盡可能多的磚塊。賽道是隨機生成的。研究人員把解釋每個像素 (Pixel Interpretation) 的工作交給了一個預訓練的變分自編碼器 (VAE) ,它可以把像素表征壓縮到16個潛在維度。這16維就是網(wǎng)絡輸入的維度。學到的特征是用來檢測WANN學習抽象關聯(lián) (Abstract Associations) 的能力,而不是編碼不同輸入之間顯式的幾何關系。
這是WANN最佳網(wǎng)絡,在-1.4共享權重下、未經(jīng)訓練的賽車成果:
雖然路走得有些蜿蜒,但很少偏離跑到。而把最佳網(wǎng)絡微調(diào)一下,不用訓練,便更加順滑了:
總結一下,在簡單程度和模塊化程度上,第二、三項任務都表現(xiàn)得優(yōu)秀,兩足控制器只用了25個可能輸入中的17個,忽略了許多LIDAR傳感器和膝關節(jié)的速度。
WANN架構不止能在不訓練單個權重的情況下完成任務,而且只用了210個網(wǎng)絡連接(Connections) ,比當前State-of-the-Art模型用到的2804個連接,少了一個數(shù)量級。做完強化學習,團隊又瞄準了MNIST,把WANN拓展到了監(jiān)督學習的分類任務上。一個普通的網(wǎng)絡,在參數(shù)隨機初始化的情況下,MNIST上面的準確率可能只有10%左右。
而新方法搜索到的網(wǎng)絡架構WANN,用隨機權重去跑,準確率已經(jīng)超過了80%;如果像剛剛提到的那樣,喂給它多個權值的合集,準確率就達到了91.6%。
對比一下,經(jīng)過微調(diào)的權重,帶來的準確率是91.9%,訓練過的權重,可以帶來94.2%的準確率。再對比一下,擁有幾千個權重的線性分類器:
也只是和WANN完全沒訓練、沒微調(diào)、僅僅喂食了一些隨機權重時的準確率相當。論文里強調(diào),MINST手寫數(shù)字分類是高維分類任務。WANN表現(xiàn)得非常出色。并且沒有哪個權值,顯得比其他值更優(yōu)秀,大家表現(xiàn)得十分均衡:所以隨機權重是可行的。
不過,每個不同的權重形成的不同網(wǎng)絡,有各自擅長分辨的數(shù)字,所以可以把一個擁有多個權值的WANN,用作一個自給自足的合集 (Self-Contained Ensemble) 。
實現(xiàn)原理
不訓練權重參數(shù)獲得極高準確度,WANN是如何做到的呢?神經(jīng)網(wǎng)絡不僅有權重偏置這些參數(shù),網(wǎng)絡的拓撲結構、激活函數(shù)的選擇都會影響最終結果。

谷歌大腦的研究人員在論文開頭就提出質疑:神經(jīng)網(wǎng)絡的權重參數(shù)與其架構相比有多重要?在沒有學習任何權重參數(shù)的情況下,神經(jīng)網(wǎng)絡架構可以在多大程度上影響給定任務的解決方案。
為此,研究人員提出了一種神經(jīng)網(wǎng)絡架構的搜索方法,無需訓練權重找到執(zhí)行強化學習任務的最小神經(jīng)網(wǎng)絡架構。谷歌研究人員還把這種方法用在監(jiān)督學習領域,僅使用隨機權重,就能在MNIST上實現(xiàn)就比隨機猜測高得多的準確率。
論文從架構搜索、貝葉斯神經(jīng)網(wǎng)絡、算法信息論、網(wǎng)絡剪枝、神經(jīng)科學這些理論中獲得啟發(fā)。為了生成WANN,必須將權重對網(wǎng)絡的影響最小化,用權重隨機采樣可以保證最終的網(wǎng)絡是架構優(yōu)化的產(chǎn)物,但是在高維空間進行權重隨機采樣的難度太大。研究人員采取了“簡單粗暴”的方法,對所有權重強制進行權重共享(weight-sharing),讓權重值的數(shù)量減少到一個。這種高效的近似可以推動對更好架構的搜索。
操作步驟
解決了權重初始化的問題,接下來的問題就是如何收搜索權重不可知神經(jīng)網(wǎng)絡。它分為四個步驟:
1、創(chuàng)建初始的最小神經(jīng)網(wǎng)絡拓撲群。
2、通過多個rollout評估每個網(wǎng)絡,并對每個rollout分配不同的共享權重值。
3、根據(jù)性能和復雜程度對網(wǎng)絡進行排序。
4、根據(jù)排名最高的網(wǎng)絡拓撲來創(chuàng)建新的群,通過競爭結果進行概率性的選擇。
然后,算法從第2步開始重復,在連續(xù)迭代中,產(chǎn)生復雜度逐漸增加的權重不可知拓撲(weight agnostic topologies )。
拓撲搜索
用于搜索神經(jīng)網(wǎng)絡拓撲的操作受到神經(jīng)進化算法(NEAT)的啟發(fā)。在NEAT中,拓撲和權重值同時優(yōu)化,研究人員忽略權重,只進行拓撲搜索操作。

上圖展示了網(wǎng)絡拓撲空間搜索的具體操作:
一開始網(wǎng)絡上是最左側的最小拓撲結構,僅有部分輸入和輸出是相連的。
然后,網(wǎng)絡按以下三種方式進行更改:
1、插入節(jié)點:拆分現(xiàn)有連接插入新節(jié)點。
2、添加連接:連接兩個之前未連接的節(jié)點,添加新連接。
3、更改激活函數(shù):重新分配隱藏節(jié)點的激活函數(shù)。
圖的最右側展示了權重在[2,2]取值范圍內(nèi)可能的激活函數(shù),如線性函數(shù)、階躍函數(shù)、正弦余弦函數(shù)、ReLU等等。
權重依然重要
WANN與傳統(tǒng)的固定拓撲網(wǎng)絡相比,可以使用單個的隨機共享權重也能獲得更好的結果。
雖然WANN在多項任務中取得了最佳結果,但WANN并不完全獨立于權重值,當隨機分配單個權重值時,有時也會失敗。WANN通過編碼輸入和輸出之間的關系起作用,雖然權重的大小的重要性并不高,但它們的一致性,尤其是符號的一致性才是關鍵。
隨機共享權重的另一個好處是,調(diào)整單個參數(shù)的影響變得不重要,無需使用基于梯度的方法。強化學習任務中的結果讓作者考慮推廣WANN方法的應用范圍。他們又測試了WANN在圖像分類基礎任務MNIST上的表現(xiàn),結果在權重接近0時效果不佳。

有Reddit網(wǎng)友質疑WANN的結果,對于隨機權重接近于0的情況,該網(wǎng)絡的性能并不好,先強化學習實驗中的具體表現(xiàn)就是,小車會跑出限定范圍。

對此,作者給出解釋,在權重趨于0的情況下,網(wǎng)絡的輸出也會趨于0,所以后期的優(yōu)化很難達到較好的性能。
-
谷歌
+關注
關注
27文章
6257瀏覽量
111949 -
神經(jīng)網(wǎng)絡
+關注
關注
42文章
4840瀏覽量
108147 -
機器學習
+關注
關注
67文章
8561瀏覽量
137208
原文標題:谷歌發(fā)布顛覆性研究:不訓練不調(diào)參,AI自動構建超強網(wǎng)絡!
文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
神經(jīng)網(wǎng)絡的初步認識
自動駕駛中常提的卷積神經(jīng)網(wǎng)絡是個啥?
CNN卷積神經(jīng)網(wǎng)絡設計原理及在MCU200T上仿真測試
NMSIS神經(jīng)網(wǎng)絡庫使用介紹
構建CNN網(wǎng)絡模型并優(yōu)化的一般化建議
在Ubuntu20.04系統(tǒng)中訓練神經(jīng)網(wǎng)絡模型的一些經(jīng)驗
CICC2033神經(jīng)網(wǎng)絡部署相關操作
液態(tài)神經(jīng)網(wǎng)絡(LNN):時間連續(xù)性與動態(tài)適應性的神經(jīng)網(wǎng)絡
【「AI芯片:科技探索與AGI愿景」閱讀體驗】+神經(jīng)形態(tài)計算、類腦芯片
神經(jīng)網(wǎng)絡的并行計算與加速技術
如何在機器視覺中部署深度學習神經(jīng)網(wǎng)絡
無刷電機小波神經(jīng)網(wǎng)絡轉子位置檢測方法的研究
神經(jīng)網(wǎng)絡專家系統(tǒng)在電機故障診斷中的應用
神經(jīng)網(wǎng)絡RAS在異步電機轉速估計中的仿真研究
基于FPGA搭建神經(jīng)網(wǎng)絡的步驟解析
機器學習全靠調(diào)參?谷歌大腦新研究:神經(jīng)網(wǎng)絡構建超強網(wǎng)絡
評論