用戶:ET4Eva/Neuroevolution

神經進化 Neuro-evolution,是一種人工智能,它使用進化算法來生成人工神經網絡(ANN)、參數、拓撲和規則。[1] 它最常用於人工生命、一般遊戲和進化機械人技術。[2] 主要的好處是,神經進化可以比監督式學習算法更廣泛地應用,後者需要一個正確的輸入輸出對的大綱。 相比之下,神經進化只需要測量一個網絡在一項任務中的表現。 例如,一個遊戲的結果(比如一個玩家是贏了還是輸了)可以很容易地衡量,而不需要提供被標記為所需策略的例子。 神經進化可以和傳統的深度學習技術相比,後者在具有固定拓撲結構的神經網絡上使用梯度下降法。

功能

編輯

許多神經進化算法已經被定義。 一個共同的區別在於只進化固定網絡拓撲(有時稱為傳統神經進化)的連接權重的強度,而不是那些進化網絡拓撲結構和權重的算法(稱為 TWEANNs,用於拓撲和權重演化的人工神經網絡算法)。

與其參數並行演化的方法(應用標準進化算法的方法)和單獨演化的方法(通過 memetic 算法)之間可以有一個單獨的區別。[3]

與梯度下降法的比較

編輯

大多數神經網絡使用梯度下降法,而不是神經進化。 然而,大約2017年,Uber 的研究人員表示,他們發現簡單的結構性神經進化算法與先進的現代工業標準梯度下降深度學習算法相競爭,部分原因是神經進化被發現不太可能被困在當地的極簡中。 在《科學》雜誌上,記者馬修 · 赫特森推測,神經進化之所以能夠在以前失敗的領域取得成功,部分原因在於2010年代增加了可用的計算能力。[4]

直接和間接編碼

編輯

進化算法對個基因型(也稱為基因組)進行計算。 在神經進化過程中,一個基因型被映射到一個神經網絡表型上,這個表型在一些任務中被評估以獲得它的適應性。

在直接編碼方案中,基因型直接映射到表型。 也就是說,神經網絡中的每個神經元和連接在基因型中被直接而明確地指定。 相反,在間接編碼方案中,基因型間接地指定了網絡應該如何生成。[5]

間接編碼通常用於實現幾個目標:[5][6][7][8][9]

  • 模塊化和其他規則;
  • 將表型壓縮為較小的基因型,提供較小的搜索空間;
  • 將搜索空間(基因組)映射到問題域。

間接編碼胚胎發生系統的分類

編輯

傳統上使用人工胚胎發育的間接編碼(也稱為人工發育)已經按照語法方法和細胞化學方法進行分類。[10] 前者以語法重寫系統的形式演化了一系列規則。 後者試圖通過基因表達來模擬生物學中物理結構的出現。 間接編碼系統經常使用這兩種方法的各個方面。

Stanley 和 Miikkulainen 提出了一種胚性系統的分類方法,旨在反映它們潛在的特性。[10] 分類法確定了五個連續的維度,沿着這些維度可以放置任何胚胎體系:

  • 細胞(神經元)的命運: 最終的特點和作用的細胞在成熟表型。 該維度計算用於確定單元命運的方法的數量。
  • 目標: 將連接從源細胞導向目標細胞的方法。 這個範圍從特定的目標(源和目標明確標識)到相對目標(例如基於單元之間的相對位置)。
  • 異養: 胚胎發育過程中發生的事件的時間和順序。 計算用於更改事件時間的機制的數量。
  • 可分化: 基因組對突變的容忍程度(脆性)。 從要求精確的基因型指令到高度容忍不精確的突變。
  • 復化: 系統(包括進化算法和基因型到表型的映射)隨着時間的推移允許基因組的復化(表型)。 從允許只有固定大小的基因組到允許高度可變長度的基因組的範圍。

例子

編輯

神經進化方法的例子(那些直接編碼的方法必然是非胚胎性的) :

方法 編碼 進化算法 方方面面的發展
神經遺傳進化》 ,e · 羅納德,1994[11] 直接 遺傳算法 網絡權重
細胞編碼(CE)作者: f. Gruau,1994年[7] 間接的,胚胎狀的(使用 s 表達式的語法樹) 基因編程 結構及參數(同步,復化)
作者: Angeline 等人,1994[12] 直接 進化編程 結構及參數(同步,復化)
姚和劉,1997[13] 直接 進化規劃(結合反向傳播和模擬退火) 結構和參數(混合、復化和簡化)
2002年 Stanley 和 miikulainen 增強拓撲的神經進化[14][15] 直接 遺傳算法。 追蹤具有歷史標記的基因,以允許不同拓撲之間的交叉,通過專業保護創新。 結構和參數
基於超立方體的神經進化增強拓撲(HyperNEAT)作者: Stanley,D'Ambrosio,Gauci,2008[6] 間接的、非胚胎性的(由超立方體內的組合產生模式網絡產生的空間模式被解釋為低維空間中的連接模式) 遺傳算法。 整潔算法(上圖)用於 CPPN 的演化。 參數,結構固定(功能完全連接)
增強拓撲的可演化基底超立方體神經進化(ES-HyperNEAT)作者: Risi,Stanley,2012[9] 間接的,非胚性的(空間模式生成網絡(組合模式生成網絡)超立方體被解釋為連接模式在一個較低的維度空間) 遺傳算法。 整潔算法(上圖)用於 CPPN 的演化。 參數和網絡結構
神經拓撲的進化習得(eant / eant2)作者: Kassahun and Sommer,2005 / Siebel and Sommer,2007[16][17] 直接和間接的,潛在胚胎性(共同遺傳編碼)[5] 進化編程 / 進化策略 結構和參數(分別,復化)
Interactiveconstrained Neuro-Evolution (ICONE)作者: Rempis,2012[18] 直接,包括約束口罩,以限制搜索到特定的拓撲 / 參數流形。 進化算法。 通過利用領域知識,使用約束掩碼大大減少了搜索空間。 結構和參數(分別,復化,交互式)
神經網絡(DXNN) ,Gene Sher,2012[19] 直接 / 間接,包括約束,局部調節,並允許演化集成新的傳感器和驅動器。 模因算法。 在不同的時間尺度上演化網絡結構和參數。 結構和參數(分別,復化,交互式)
光譜多樣化的統一神經進化建築(SUNA) ,作者: Danilo Vasconcellos Vargas,Junichi Murata (下載代碼)[20] 直接,介紹了統一的神經網絡表示法(表示法融合了大多數文獻中的神經網絡特徵)。 遺傳算法具有多樣性保護機制,稱為頻譜多樣性,與染色體大小相當,是問題獨立的,更注重獲得高水平行為 / 方法的多樣性。 為了實現這種多樣性,引入了染色體光譜的概念,並與 Novelty Map 種群一起使用。 結構及參數(混合、復化和簡化)
模塊化基於代理的 Evolver (MABE)的克利福德博姆,阿倫欣茨,等人。[21] (下載密碼) 直接或間接編碼馬爾科夫網絡、神經網絡、遺傳編程和其他任意自定義控制器的編碼。 提供進化算法,遺傳編程算法,並允許定製算法,以及任意約束的規範。 進化方面包括神經模型,並允許形態學進化和性選擇等。
協方差矩陣自適應的超容量排序自適應網格算法(CMA-HAGA)[22][23] 直接的,包括一個 atavism 功能,使特徵消失和重新出現在不同的世代。 具有偏好清晰度的多目標進化策略 結構、權重和偏見。
  • 自動機器學習(AutoML)
  • 進化計算
  • 使用超容量排序自適應網格算法(CMA-HAGA)進行協方差矩陣自適應
  • 增強拓撲的神經進化
  • 人類的起源
  • Hyperneat (生成版的 NEAT)
  • 超淨(一個決定參數和網絡結構的 NEAT 生成版本)
  • 神經拓撲的進化獲取(eant / eant2)
  • 光譜多樣統一神經進化體系結構(SUNA)

參考文獻

編輯
  1. ^ Stanley, Kenneth O. Neuroevolution: A different kind of deep learning. O'Reilly Media. 2017-07-13 [2017-09-04] (英語). 
  2. ^ Risi, Sebastian; Togelius, Julian. Neuroevolution in Games: State of the Art and Open Challenges (PDF). IEEE Transactions on Computational Intelligence and AI in Games. 2017. 
  3. ^ Togelius, Julian; Schaul, Tom; Schmidhuber, Jurgen; Gomez, Faustino, Countering poisonous inputs with memetic neuroevolution (PDF), Parallel Problem Solving from Nature, 2008 
  4. ^ Artificial intelligence can ‘evolve’ to solve problems. Science | AAAS. 10 January 2018 [7 February 2018] (英語). 
  5. ^ 5.0 5.1 5.2 Kassahun, Yohannes; Sommer, Gerald; Edgington, Mark; Metzen, Jan Hendrik; Kirchner, Frank, Common genetic encoding for both direct and indirect encodings of networks, Genetic and Evolutionary Computation Conference, ACM Press: 1029–1036, 2007 
  6. ^ 6.0 6.1 Gauci, Stanley, Generating Large-Scale Neural Networks Through Discovering Geometric Regularities (PDF), Genetic and Evolutionary Computation Conference, New York, NY: ACM, 2007 
  7. ^ 7.0 7.1 Gruau, Frédéric; I, L'universite Claude Bernard-lyon; Doctorat, Of A. Diplome De; Demongeot, M. Jacques; Cosnard, Examinators M. Michel; Mazoyer, M. Jacques; Peretto, M. Pierre; Whitley, M. Darell. Neural Network Synthesis Using Cellular Encoding And The Genetic Algorithm.. 1994. 
  8. ^ Clune, J.; Stanley, Kenneth O.; Pennock, R. T.; Ofria, C. On the Performance of Indirect Encoding Across the Continuum of Regularity. IEEE Transactions on Evolutionary Computation. June 2011, 15 (3): 346–367. ISSN 1089-778X. doi:10.1109/TEVC.2010.2104157. 
  9. ^ 9.0 9.1 Risi, Sebastian; Stanley, Kenneth O. An Enhanced Hypercube-Based Encoding for Evolving the Placement, Density and Connectivity of Neurons (PDF). Artificial Life journal (Cambridge, Massachusetts: MIT Press). 2012. 
  10. ^ 10.0 10.1 Stanley, Kenneth O.; Miikkulainen, Risto. A Taxonomy for Artificial Embryogeny (PDF). The MIT Press Journals. 2003. 
  11. ^ Ronald, Edmund; Schoenauer, March, Genetic Lander: An experiment in accurate neuro-genetic control, PPSN III 1994 Parallel Programming Solving from Nature 
  12. ^ Angeline, Peter J.; Saunders, Gregory M.; Pollack, Jordan B. An evolutionary algorithm that constructs recurrent neural networks (PDF). IEEE Transactions on Neural Networks. 1994, (5). 
  13. ^ Yao, Xin; Liu, Yong. A new evolutionary system for evolving artificial neural networks (PDF). IEEE Transactions on Neural Networks. May 1997, 8 (3). 
  14. ^ Stanley, Kenneth O. Real-Time Neuroevolution in the NERO Video Game (PDF). December 2005. 
  15. ^ Stanley, Kenneth O.; Miikkulainen, Risto. Evolving Neural Networks through Augmenting Topologies (PDF). Evolutionary Computation (MIT Press). 2002, 10 (2). 
  16. ^ Kassahun, Yohannes; Sommer, Gerald, Efficient reinforcement learning through evolutionary acquisition of neural topologies (PDF), 13th European Symposium on Artificial Neural Networks, Bruges, Belgium, April 2005 
  17. ^ Siebel, Nils T.; Sommer, Gerald. Evolutionary reinforcement learning of artificial neural networks (PDF). International Journal of Hybrid Intelligent Systems. October 2007, 4 (3). (原始內容 (PDF)存檔於2008-09-05). 
  18. ^ Rempis,, Christian W. Evolving Complex Neuro-Controllers with Interactively Constrained Neuro-Evolution. Osnabrück University. October 2012. 
  19. ^ Sher, Gene I. Handbook of Neuroevolution Through Erlang. Springer Verlag. November 2012. 
  20. ^ Vargas, Danilo Vasconcellos; Murata, Junichi. Spectrum-Diverse Neuroevolution With Unified Neural Models. IEEE Transactions on Neural Networks and Learning Systems. 
  21. ^ Edlund, Jeffrey; Chaumont, Nicolas; Hintze, Arend; Koch, Christof; Tononi, Giulio; Adami, Christoph. Integrated Information Increases with Fitness in the Evolution of Animats. PLOS Computational Biology. 
  22. ^ Rostami, Shahin; Neri, Ferrante. A fast hypervolume driven selection mechanism for many-objective optimisation problems. Swarm and Evolutionary Computation. 2017-06-01, 34 (Supplement C): 50–67. doi:10.1016/j.swevo.2016.12.002. 
  23. ^ Multi-objective evolution of artificial neural networks in multi-class medical diagnosis problems with class imbalance - IEEE Conference Publication. ieeexplore.ieee.org. [2017-11-28] (美國英語). 

外部連結

編輯
  • Evolution 101: Neuroevolution | BEACON. beacon-center.org. [2018-01-14] (美國英語). 
  • NNRG Areas - Neuroevolution. nn.cs.utexas.edu. University of Texas. [2018-01-14].  / ref (有關整潔及應用的可供下載的文件)
  • SharpNEAT Neuroevolution Framework. sharpneat.sourceforge.net. [2018-01-14] (英語).  成熟的開源神經進化項目在 c # / 。淨額。
  • ANNEvolve是一個開源人工智能研究項目(可下載的原始碼在 c 和 Python 中,附帶一個教程和雜項文字和插圖
  • Nils T Siebel - EANT2 - Evolutionary Reinforcement Learning of Neural Networks. www.siebel-research.de. [2018-01-14].  / ref 關於進化學習與 eant / eant2]的網頁(關於 eant / eant2與機械人學習應用程式的信息和文章)
  • 書呆子工具箱。 神經動力學和進化機械人開發工具包。 一個免費的,開放源碼軟件收集神經控制和神經進化的各種實驗。 包括一個腳本模擬器,幾個神經進化算法(如。 Icone) ,集群支持,視覺網絡設計和分析工具。
  • CorticalComputer (Gene). GitHub. [2018-01-14].  Dxnn 神經進化系統原始碼。
  • ES-HyperNEAT Users Page. eplex.cs.ucf.edu. [2018-01-14] (英語).