Nature新子刊Machine intelligence中有一篇12頁的綜述,匯總介紹了神經(jīng)進化這一前沿的研究方向在神經(jīng)網(wǎng)絡中的眾多應用。本文用5分鐘概述該文的主要觀點,對于不了解神經(jīng)進化的讀者,本文將先帶你認識神經(jīng)進化說的是什么?你不需要太多的背景知識,也能讀懂本文。
人工的神經(jīng)網(wǎng)絡是依靠梯度的反向傳播來進行優(yōu)化的,而在生物界中,神經(jīng)網(wǎng)絡中并沒有指出優(yōu)化方向的梯度,感知從下而上正向傳播,之后相近的刺激帶來共同激活的神經(jīng)元,再用這些連接來對新事物編碼及預測,而一切都依賴于進化機制。所謂神經(jīng)進化,就是用遺傳算法來進行神經(jīng)網(wǎng)絡的結構生成,參數(shù)更新及整體的效率優(yōu)化。其基本的循環(huán)是突變-》選擇-》繁衍-》再突變。
下圖來自莫煩Python的視頻,其中對比了兩種神經(jīng)進化的策略,一種是不固定網(wǎng)絡的結構,通過神經(jīng)網(wǎng)絡間的交叉配對形成下一代的網(wǎng)絡,另一組是固定結構,每一代網(wǎng)絡中通過引入突變改變連接的強度,最終倆者都通過進化的優(yōu)勝劣汰來實現(xiàn)神經(jīng)網(wǎng)絡的最優(yōu)化。
不同于傳統(tǒng)的隨機梯度下降,是基于對現(xiàn)在錯誤來源的外推決定下一步進化的方向,即使引入了隨機性,也只是在原有方向上引入高斯誤差,是一種事后的彌補,而神經(jīng)進化是通過在下一代中引入在算法空間中性質完全不同的點,之后根據(jù)適應度在這些點之間進行內推,雖然速度慢,但是可以更大規(guī)模的并行處理,且能夠更好的避免陷入局部最優(yōu)。
神經(jīng)進化不止在監(jiān)督學習中應用廣泛,在深度強化學習中也有廣泛的應用。Uber開發(fā)的開源工具Visual Inspector for Neuroevolution(VINE),可以用于神經(jīng)演化的交互式數(shù)據(jù)可視化工具。而下文的作者之一也來自Uber的AI實驗室。
在結束背景介紹之后,進入這篇論文本身的介紹。作者首先指出了神經(jīng)進化相比神經(jīng)網(wǎng)絡的幾個獨特的能力,包括通過學習找到合適的網(wǎng)絡組成部分(例如激活函數(shù)),以及網(wǎng)絡的超參數(shù)(有幾層,每層有多少神經(jīng)元)以及用于的學習策略本身。不同于AutoML的自動化調參,神經(jīng)進化始終在搜索答案中保持著一個多樣的解法“種群”,而且由于神經(jīng)進化的研究和傳統(tǒng)的神經(jīng)網(wǎng)絡并沒有多少交集,因此倆者之間的匯總更容易擦出火花。
最初的神經(jīng)進化關注小規(guī)模網(wǎng)絡的拓撲結構的演化,最初的進化算法僅僅是通過(神經(jīng)元)連接矩陣間的權重加上隨機突變來展開,之后受到基因間調控網(wǎng)絡的啟發(fā),對網(wǎng)絡結構展開了間接的編碼。隨著引入在倆個網(wǎng)絡結構中的雜交(crossover),神經(jīng)進化可以探索更為復雜的網(wǎng)絡結構,但需要面對如何避免讓新生成的網(wǎng)絡結構由于缺少足夠的時間進行局部優(yōu)化而無法發(fā)揮出其最優(yōu)的性能,該方向上最顯著的成果是NeuroEvolution of Augmenting Topologies (NEAT)算法,該算法的成果包括模擬機器人行走的控制程序,下圖分別是使用遺傳算法和進化策略訓練模擬機器人走路(來自UberAI實驗室Mujoco 人)
在強化學習領域,natural evolutionary strategy可以在 Atari 游戲機上和Deep Q learning有相近的表現(xiàn),而且這些算法的并行潛力使得這些算法在有足夠計算資源時,可以用更快的時間完成訓練,盡管神經(jīng)進化需要的總的計算資源要多一些。神經(jīng)進化在強化學習中的成功說明了神經(jīng)進化方法可以用在現(xiàn)實中的復雜問題上。
Lehman將神經(jīng)進化和梯度結合了起來。該方法的靈感來自是通過梯度去選擇出那些不那么危險的突變。由于強化學習中評估一個策略的適應度需要花費的比評估網(wǎng)絡本身要花費更多的資源,前者需要運行游戲或者模擬環(huán)境數(shù)回合,才能看到收益,而后者只需要去將網(wǎng)絡中的錯誤項前向傳播幾步即可。神經(jīng)進化中對策略(policy)加以隨機的突變,部分突變不會影響策略的性能,但少部分會讓該策略徹底失效。通過對狀態(tài)和行為歸檔記錄,可以通過梯度信息對變異的大小進行縮放,從而避免突變后的策略對于當前的狀態(tài)過于激進或保守,從而使得在深度超過100層的網(wǎng)絡上可以使用神經(jīng)進化的策略。
神經(jīng)進化可以模擬真實進化中對多樣性和新奇策略的偏好,在要優(yōu)化的目標中對全新的策略給予獎勵,從而避免陷入局部最優(yōu),或者以策略種群的多樣性為優(yōu)化主要目標。在強化學習中,一個策略要想和其他策略不同,需要具有不同的基礎能力,從而使策略種群多樣性為優(yōu)化目標好于人為設定的損失函數(shù)。
總結:神經(jīng)進化在meta learning,多任務學習中都可以和現(xiàn)有方法結合。正如卷積操作就是一種編碼信息的方式,神經(jīng)進化還可以找到更好的對信息進行間接編碼(Indirect coding)的方法以及通過進化策略重現(xiàn)出類似LSTM的網(wǎng)絡結構。強化學習中的自我對弈可以看成是神經(jīng)進化的一種,而對策略多樣性的偏好也鼓勵了模型對新策略的探索。最后,在通向通用人工智能的路上,神經(jīng)進化通過構建開放目地的(open-endedness)的系統(tǒng),讓策略不帶有先驗目地的探索,模擬自然界的進化,最終得到一個足夠普適的智能系統(tǒng)。
-
神經(jīng)網(wǎng)絡
+關注
關注
42文章
4814瀏覽量
103648 -
梯度
+關注
關注
0文章
30瀏覽量
10495 -
強化學習
+關注
關注
4文章
269瀏覽量
11604
發(fā)布評論請先 登錄
驅動下一代E/E架構的神經(jīng)脈絡進化—10BASE-T1S

BP神經(jīng)網(wǎng)絡與卷積神經(jīng)網(wǎng)絡的比較
BP神經(jīng)網(wǎng)絡的優(yōu)缺點分析
什么是BP神經(jīng)網(wǎng)絡的反向傳播算法
BP神經(jīng)網(wǎng)絡與深度學習的關系
BP神經(jīng)網(wǎng)絡的基本原理
人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構方法

卷積神經(jīng)網(wǎng)絡與傳統(tǒng)神經(jīng)網(wǎng)絡的比較
RNN模型與傳統(tǒng)神經(jīng)網(wǎng)絡的區(qū)別
LSTM神經(jīng)網(wǎng)絡的結構與工作機制
Moku人工神經(jīng)網(wǎng)絡101

評論