Neuroewolucja

Neuroewolucja lub neuroewolucja to forma sztucznej inteligencji , która wykorzystuje algorytmy ewolucyjne do generowania sztucznych sieci neuronowych (ANN), parametrów i reguł. Jest najczęściej stosowany w sztucznym życiu , ogólnych grach i robotyce ewolucyjnej . Główną korzyścią jest to, że neuroewolucję można zastosować w szerszym zakresie niż algorytmy uczenia nadzorowanego , które wymagają programu nauczania poprawnych par wejście-wyjście. W przeciwieństwie do tego neuroewolucja wymaga jedynie pomiaru wydajności sieci w zadaniu. Na przykład wynik gry (tj. czy jeden gracz wygrał, czy przegrał) można łatwo zmierzyć bez podawania przykładowych pożądanych strategii. Neuroewolucja jest powszechnie stosowana jako część uczenia się przez wzmacnianie i można ją skontrastować z konwencjonalnymi technikami głębokiego uczenia, które wykorzystują opadanie gradientu w sieci neuronowej o stałej topologii.

Cechy

Zdefiniowano wiele algorytmów neuroewolucji. Jedno wspólne rozróżnienie dotyczy algorytmów, które rozwijają tylko siłę połączeń wag dla stałej topologii sieci (czasami nazywane konwencjonalną neuroewolucją), w przeciwieństwie do algorytmów, które rozwijają zarówno topologię sieci, jak i jej wagi (zwane TWEANN, od Topology and Weight Ewolucja algorytmów sztucznej sieci neuronowej).

Odrębnie można wyróżnić metody rozwijające strukturę SSN równolegle do jej parametrów (wykorzystujące standardowe algorytmy ewolucyjne) oraz metody rozwijające je oddzielnie (poprzez algorytmy memetyczne ).

Porównanie ze spadkiem gradientowym

Większość sieci neuronowych wykorzystuje opadanie gradientu zamiast neuroewolucji. Jednak około 2017 roku naukowcy z Uber stwierdzili, że odkryli, że proste algorytmy neuroewolucji strukturalnej są konkurencyjne w stosunku do wyrafinowanych, nowoczesnych algorytmów głębokiego uczenia się , będących standardami w branży , po części dlatego, że stwierdzono mniejsze prawdopodobieństwo utknięcia neuroewolucji w lokalnych minimach. W Science dziennikarz Matthew Hutson spekulował, że jednym z powodów, dla których neuroewolucja odnosi sukcesy tam, gdzie wcześniej zawodziła, jest zwiększona moc obliczeniowa dostępna w 2010 roku.

Można wykazać, że istnieje zgodność między neuroewolucją a zejściem gradientowym.

Kodowanie bezpośrednie i pośrednie

Algorytmy ewolucyjne operują na populacji genotypów (zwanych także genomami ). W neuroewolucji genotyp jest odwzorowywany na fenotyp sieci neuronowej , który jest oceniany w jakimś zadaniu w celu określenia jego przydatności .

W schematach bezpośredniego kodowania genotyp jest bezpośrednio odwzorowywany na fenotyp. Oznacza to, że każdy neuron i połączenie w sieci neuronowej jest określone bezpośrednio i jawnie w genotypie. Natomiast w pośredniego genotyp określa pośrednio, w jaki sposób ta sieć powinna być generowana.

Kodowania pośrednie są często używane do osiągnięcia kilku celów:

  • modułowość i inne prawidłowości;
  • kompresja fenotypu do mniejszego genotypu, zapewniająca mniejszą przestrzeń poszukiwań;
  • odwzorowanie przestrzeni poszukiwań (genomu) na domenę problemową.

Taksonomia systemów embriogenicznych do kodowania pośredniego

Tradycyjnie kodowanie pośrednie, które wykorzystuje sztuczną embriogenezę (znaną również jako sztuczny rozwój ), zostało podzielone na kategorie według podejścia gramatycznego i podejścia opartego na chemii komórkowej . Ten pierwszy ewoluuje zestawy reguł w postaci gramatycznych systemów przepisywania. Ten ostatni próbuje naśladować, jak struktury fizyczne pojawiają się w biologii poprzez ekspresję genów. Pośrednie systemy kodowania często wykorzystują aspekty obu podejść.

Stanley i Miikkulainen proponują taksonomię systemów embriogenicznych, która ma odzwierciedlać ich podstawowe właściwości. Taksonomia identyfikuje pięć ciągłych wymiarów, wzdłuż których można umieścić dowolny system embriogeniczny:

  • Los komórki (neuronu) : ostateczna charakterystyka i rola komórki w dojrzałym fenotypie. Wymiar ten zlicza liczbę metod stosowanych do określenia losu komórki.
  • Kierowanie : metoda kierowania połączeń z komórek źródłowych do komórek docelowych. Zakres ten waha się od określonego kierowania (źródło i cel są wyraźnie identyfikowane) do względnego kierowania (np. na podstawie lokalizacji komórek względem siebie).
  • Heterochronia : czas i kolejność wydarzeń podczas embriogenezy. Zlicza liczbę mechanizmów zmiany czasu zdarzeń.
  • Kanalizacja : jak tolerancyjny jest genom na mutacje (kruchość). Zakres od wymagającego dokładnych instrukcji genotypowych do wysokiej tolerancji na nieprecyzyjne mutacje.
  • Złożoność : zdolność systemu (w tym algorytm ewolucyjny i mapowanie genotypu do fenotypu) do umożliwienia złożoności genomu (a tym samym fenotypu) w czasie. Wacha się od dopuszczania tylko genomów o stałej wielkości do zezwalania na genomy o bardzo zmiennej długości.

Przykłady

Przykłady metod neuroewolucji (te z bezpośrednim kodowaniem są z konieczności nieembriogenne):

metoda Kodowanie Algorytm ewolucyjny Aspekty ewoluowały
Ewolucja neurogenetyczna autorstwa E. Ronalda, 1994 Bezpośredni Algorytm genetyczny Wagi sieciowe
Kodowanie komórkowe (CE) autorstwa F. Gruau, 1994 Pośrednie, embriogeniczne (drzewo gramatyczne przy użyciu wyrażeń S ) Programowanie genetyczne Struktura i parametry (symultaniczne, złożone)
GNARL autorstwa Angeline i in., 1994 Bezpośredni Programowanie ewolucyjne Struktura i parametry (symultaniczne, złożone)
EPNet autorstwa Yao i Liu, 1997 Bezpośredni Programowanie ewolucyjne (w połączeniu z propagacją wsteczną i symulowanym wyżarzaniem ) Struktura i parametry (mieszane, złożone i uproszczone)
NeuroEvolution of Augmenting Topologies (NEAT) autorstwa Stanleya i Miikkulainena, 2002 Bezpośredni Algorytm genetyczny . Śledzi geny z oznaczeniami historycznymi, aby umożliwić krzyżowanie się różnych topologii, chroni innowacje poprzez specjację. Struktura i parametry
NeuroEvolution of Augmenting Topologies (HyperNEAT) oparta na hipersześcianie, autor: Stanley, D'Ambrosio, Gauci, 2008 Pośrednie, nieembriogenne (wzorce przestrzenne generowane przez sieć tworzącą wzorce kompozycyjne (CPPN) w hipersześcianie są interpretowane jako wzorce łączności w przestrzeni o niższych wymiarach) Algorytm genetyczny . Algorytm NEAT (powyżej) służy do ewolucji CPPN. Parametry, struktura ustalona (funkcjonalnie w pełni połączona)
Evolvable Substrate Hypercube-based NeuroEvolution of Augmenting Topologies (ES-HyperNEAT) autorstwa Risi, Stanley 2012 Pośrednie, nieembriogenne (wzorce przestrzenne generowane przez sieć tworzącą wzorce kompozycyjne (CPPN) w hipersześcianie są interpretowane jako wzorce łączności w przestrzeni o niższych wymiarach) Algorytm genetyczny . Algorytm NEAT (powyżej) służy do ewolucji CPPN. Parametry i struktura sieci
Ewolucyjne pozyskiwanie topologii neuronowych (EANT/EANT2) Kassahun i Sommer, 2005 / Siebel i Sommer, 2007 Bezpośrednie i pośrednie, potencjalnie embriogenne (wspólne kodowanie genetyczne) Programowanie ewolucyjne / Strategie ewolucyjne Struktura i parametry (osobno, złożoność)
Interaktywnie ograniczona neuroewolucja (ICONE), Rempis, 2012 Bezpośredni, zawiera maski ograniczeń w celu ograniczenia wyszukiwania do określonych rozmaitości topologii/parametrów. Algorytm ewolucyjny . Używa masek ograniczeń, aby radykalnie zredukować przestrzeń wyszukiwania poprzez wykorzystanie wiedzy o domenie . Struktura i parametry (osobno, złożoność, interakcja)
Sieć neuronowa Deus Ex (DXNN) autorstwa Gene'a Shera, 2012 Bezpośredni/pośredni, obejmuje ograniczenia, lokalne strojenie i umożliwia ewolucję w celu integracji nowych czujników i elementów wykonawczych. Algorytm memetyczny . Ewoluuje strukturę i parametry sieci w różnych skalach czasowych. Struktura i parametry (osobno, złożoność, interakcja)
Zróżnicowana widmowo zunifikowana architektura neuroewolucji (SUNA) — Danilo Vasconcellos Vargas, Junichi Murata ( Kod do pobrania ) Direct, wprowadza Unified Neural Representation (reprezentację integrującą większość cech sieci neuronowych z literatury). Algorytm genetyczny z mechanizmem zachowania różnorodności o nazwie Spectrum-diversity, który dobrze skaluje się z rozmiarem chromosomu, jest niezależny od problemu i koncentruje się bardziej na uzyskaniu różnorodności zachowań / podejść na wysokim poziomie. Aby osiągnąć tę różnorodność, wprowadzono koncepcję widma chromosomów, która jest używana wraz z Nową populacją na mapie. Struktura i parametry (mieszane, złożone i uproszczone)
Modular Agent-Based Evolver (MABE) autorstwa Clifforda Bohma, Arenda Hintze i innych. ( Pobierz kod ) Bezpośrednie lub pośrednie kodowanie sieci Markowa , sieci neuronowych, programowania genetycznego i innych dowolnie konfigurowalnych kontrolerów. Zapewnia algorytmy ewolucyjne, algorytmy programowania genetycznego i umożliwia tworzenie algorytmów niestandardowych wraz ze specyfikacją dowolnych ograniczeń. Ewoluowalne aspekty obejmują model neuronowy i pozwalają między innymi na ewolucję morfologii i doboru płciowego.
Adaptacja macierzy kowariancji z algorytmem siatki adaptacyjnej posortowanej w hiperobjętości (CMA-HAGA) autorstwa Shahina Rostamiego i innych., Direct zawiera funkcję atawizmu , która umożliwia znikanie i ponowne pojawianie się cech w różnych pokoleniach. Wielocelowa strategia ewolucji z artykulacją preferencji ( sterowanie obliczeniowe ) Struktura, wagi i odchylenia.

Zobacz też

Linki zewnętrzne