Neuroewolucja - Neuroevolution

Neuroevolution lub neuro-ewolucja , jest formą sztucznej inteligencji , który używa algorytmów ewolucyjnych do generowania sztucznych sieci neuronowych (SSN), parametrów, topologia i zasad. Jest najczęściej stosowany w sztucznym życiu , ogólnych grach i robotyce ewolucyjnej . Główną korzyścią jest to, że neuroewolucja może być stosowana w szerszym zakresie niż algorytmy nadzorowanego uczenia się , które wymagają programu nauczania poprawnych par wejście-wyjście. W przeciwieństwie do neuroewolucji wymaga jedynie miary wydajności sieci w zadaniu. Na przykład wynik gry (tj. To, czy jeden gracz wygrał, czy przegrał) można łatwo zmierzyć bez podawania oznaczonych przykładów pożądanych strategii. Neuroewolucja jest powszechnie stosowana jako część paradygmatu uczenia się ze wzmocnieniem i można ją porównać z konwencjonalnymi technikami głębokiego uczenia, które wykorzystują zejście gradientowe w sieci neuronowej o stałej topologii.

funkcje

Zdefiniowano wiele algorytmów neuroewolucji . Jedną z powszechnych różnic jest między algorytmami, które zmieniają tylko siłę wag połączeń dla stałej topologii sieci (czasami nazywanej konwencjonalną neuroewolucją), w przeciwieństwie do algorytmów, które zmieniają zarówno topologię sieci, jak i jej wagi (zwane TWEANNs, dla topologii i wagi) Ewoluujące algorytmy sztucznej sieci neuronowej).

Oddzielnie można wyróżnić metody, które rozwijają strukturę SSN równolegle do jej parametrów (te wykorzystujące standardowe algorytmy ewolucyjne) i te, które rozwijają je oddzielnie (za pomocą algorytmów memetycznych ).

Porównanie z opadaniem gradientowym

Większość sieci neuronowych używa raczej gradientu niż neuroewolucji. Jednak około 2017 roku badacze z firmy Uber stwierdzili, że odkryli, że proste algorytmy neuroewolucji strukturalnej są konkurencyjne w porównaniu z zaawansowanymi, nowoczesnymi algorytmami głębokiego uczenia się opartymi na gradiencie, częściowo dlatego, że prawdopodobieństwo utknięcia neuroewolucji w lokalnych minimach jest mniejsze. W czasopiśmie Science dziennikarz Matthew Hutson spekulował, że część przyczyny powodzenia neuroewolucji tam, gdzie wcześniej zawiodła, wynika ze zwiększonej mocy obliczeniowej dostępnej w 2010 roku.

Kodowanie bezpośrednie i pośrednie

Algorytmy ewolucyjne działają na populacji genotypów (zwanych również genomami ). W neuroewolucji genotyp jest mapowany na fenotyp sieci neuronowej, który jest oceniany w ramach jakiegoś zadania 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 bezpośrednio i wyraźnie określone w genotypie. Natomiast w schematach kodowania 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ń;
  • mapowanie przestrzeni poszukiwań (genomu) do domeny problemowej.

Taksonomia systemów embriogennych do kodowania pośredniego

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

Stanley i Miikkulainen proponują taksonomię systemów embriogennych, 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 embriogenny:

  • Los komórki (neuronu) : końcowe cechy i rola komórki w dojrzałym fenotypie. Ten wymiar zlicza liczbę metod używanych do określenia losu komórki.
  • Kierowanie : metoda, za pomocą której połączenia są kierowane z komórek źródłowych do komórek docelowych. Obejmuje to celowanie specyficzne (źródło i cel są wyraźnie określone) do kierowania względnego (np. Na podstawie lokalizacji komórek względem siebie).
  • Heterochronia : czas i kolejność wydarzeń podczas embriogenezy. Zlicza mechanizmy zmiany czasu zdarzeń.
  • Kanalizacja : jak odporny jest genom na mutacje (kruchość). Obejmuje wymagania od precyzyjnych instrukcji genotypowych do wysokiej tolerancji na nieprecyzyjną mutację.
  • Kompleksowość : zdolność systemu (w tym algorytmu ewolucyjnego i mapowania genotypu do fenotypu) do umożliwienia kompleksowania genomu (a tym samym fenotypu) w czasie. Rozpoczyna się od dopuszczania tylko genomów o stałej wielkości do dopuszczania genomów o bardzo zmiennej długości.

Przykłady

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

metoda Kodowanie Algorytm ewolucyjny Aspekty ewoluowały
Ewolucja neurogenetyczna E.Ronald, 1994 Bezpośredni Algorytm genetyczny Wagi sieci
Kodowanie komórkowe (CE), F. Gruau, 1994 Pośredni, embriogenny (drzewo gramatyczne wykorzystujące wyrażenia S ) Programowanie genetyczne Struktura i parametry (symultaniczne, kompleksowanie)
GNARL autorstwa Angeline i wsp., 1994 Bezpośredni Programowanie ewolucyjne Struktura i parametry (symultaniczne, kompleksowanie)
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żoność i uproszczenie)
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ę między różnymi topologiami, chroni innowacje poprzez specjację. Struktura i parametry
Oparta na Hypercube NeuroEvolution of Augmenting Topologies (HyperNEAT) autorstwa Stanleya, D'Ambrosio, Gauci, 2008 Pośredni, nieembriogenny (wzorce przestrzenne generowane przez sieć tworzącą wzorce kompozycyjne (CPPN) w hipersześcianie są interpretowane jako wzorce połączeń w przestrzeni o niższych wymiarach) Algorytm genetyczny . Algorytm NEAT (powyżej) służy do ewolucji CPPN. Parametry, konstrukcja ustalona (funkcjonalnie w pełni połączona)
Evolvable Substrate Hypercube based NeuroEvolution of Augmenting Topologies (ES-HyperNEAT) autorstwa Risi, Stanley 2012 Pośredni, nieembriogenny (wzorce przestrzenne generowane przez sieć tworzącą wzorce kompozycyjne (CPPN) w hipersześcianie są interpretowane jako wzorce połączeń 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) przez Kassahun and Sommer, 2005 / Siebel and Sommer, 2007 Bezpośrednie i pośrednie, potencjalnie embriogenne (wspólne kodowanie genetyczne) Programowanie ewolucyjne / strategie ewolucji Struktura i parametry (osobno, złożoność)
Interactively Constrained Neuro-Evolution (ICONE) autorstwa Rempis, 2012 Bezpośredni, zawiera maski ograniczeń, aby ograniczyć wyszukiwanie do określonej topologii / rozmaitości parametrów. Algorytm ewolucyjny . Używa masek z ograniczeniami, aby radykalnie zmniejszyć przestrzeń wyszukiwania poprzez wykorzystanie wiedzy o domenie . Struktura i parametry (osobno, złożoność, interaktywne)
Sieć neuronowa Deus Ex (DXNN) autorstwa Gene Sher, 2012 Bezpośredni / pośredni obejmuje ograniczenia, strojenie lokalne i umożliwia ewolucję integracji nowych czujników i siłowników. Algorytm memetyczny . Zmienia strukturę i parametry sieci w różnych skalach czasowych. Struktura i parametry (osobno, złożoność, interaktywne)
Zróżnicowana widmowa architektura Unified Neuroevolution (SUNA) autorstwa Danilo Vasconcellos Vargas, Junichi Murata ( Pobierz kod ) Direct, wprowadza ujednoliconą reprezentację neuronową (reprezentację integrującą większość funkcji sieci neuronowych z literatury). Algorytm genetyczny z mechanizmem zachowania różnorodności zwanym różnorodnością widmową, który dobrze skaluje się z rozmiarem chromosomu, jest niezależny od problemu i bardziej skupia się na uzyskaniu różnorodności zachowań / podejść na wysokim poziomie. Aby osiągnąć tę różnorodność, wprowadza się i stosuje koncepcję widma chromosomowego wraz z populacją nowatorskich map . Struktura i parametry (mieszane, złożoność i uproszczenie)
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 niestandardowych algorytmów wraz ze specyfikacją dowolnych ograniczeń. Ewolucyjne aspekty obejmują model neuronowy i pozwalają m.in. na ewolucję morfologii i doboru płciowego.
Adaptacja macierzy kowariancji z algorytmem adaptacyjnej siatki sortowanej hiperobjętości (CMA-HAGA) autorstwa Shahina Rostami i innych., Bezpośredni zawiera cechę atawizmu, która umożliwia zniknięcie cech i ponowne pojawienie się w różnych pokoleniach. Wielocelowa strategia ewolucji z artykulacją preferencji ( sterowanie komputerowe ) Struktura, wagi i uprzedzenia.

Zobacz też

Bibliografia

Linki zewnętrzne