Samoreprodukující se neuronové sítě

Na rozdíl od genetického programování zde máme před sebou trochu jiný úkol. Neuronová síť se má sama učit svůj úkol a současně se reprodukovat.
Vědci z Columbia University popsali svůj přístup na webu ArXiv (první autor Oscar Chang). V evolučních programovacích technikách software prostě řeší daný úkol a vnější program pak s tímto softwarem manipuluje – kříží kódy mezi sebou, podrobuje je mutacím, řadí podle úspěšnosti a pak vytváří další generaci populace. Zde ale toto vše je úkolem samotné neuronové sítě.

Autoři výzkumu přirovnávají svůj přístup k programům zvaným quines – to jsou zdrojové kódy, které na výstupu musí dokázat vyprodukovat zase samy sebe (typicky se vytisknout; myšleno tedy bez pomoci textového editoru, pouze z prostředí příslušného programovacího jazyka – vlastně je zajímavé, že takové programy vůbec mohou existovat). Reprezentací neuronové sítě není ovšem zdrojový kód, ale sada jednotlivých relativních vah, které vyjadřují míru propojení mezi uzly.

V rámci výzkumu se experimentovalo s poměrně malými sítěmi, které se učily rozpoznávat obraz a současně se měly reprodukovat. Ukázalo se, že se tím schopnost zlepšovat se v plnění daného úkol zpomaluje. Obě funkčnosti jdou proti sobě (trade-off), asi jako v přírodě organismus také může volit buď rozmnožování, nebo zvyšování své životaschopnosti či určité dovednosti.

Zdroj: The Register

Exit mobile version