komentář
Deep learning
O technologii a hloubce myšlenky strojového učení Jan Hanáček
Moderní doba přináší spoustu moderních výzev. Ať už jednotlivec, nebo firma, všichni se musejí učit novým věcem, přizpůsobovat se a reagovat na svět okolo. Máloco má dnes jednoduché řešení, a tak ani ono učení nemůže být jen povrchní. Deep learning, pro které používá čeština doslovný překlad „hluboké učení“, je technologickou reakcí na čím dál složitější systém a strukturu světa kolem nás. Deep learning je subdisciplína a přístup, který se kolem vývoje neurálních sítí začal objevovat už v osmdesátých letech předešlého století, ale vypracování definitivní metodologie a prvních skutečných aplikací jsme se dočkali teprve nedávno, kolem roku 2010. Dřív fascinující zprávy z vývoje strojové inteligence, kdy se AI sama naučila rozpoznávat lidskou rukou napsané číslice, jsou dnes už k smíchu. Úžas vyvolá spíš rychlost, s jakou se v tomto odvětví dostavuje pokrok, a také to, jak neskutečně široké možnosti aplikací hluboké učení dovoluje. K tomu, abychom si vysvětlili, co vlastně deep learning je, použijeme pro představu osvědčený a celkem instinktivní příklad. Dejme tomu, že chceme umělou inteligenci naučit rozpoznávat fotografie zvířat. Naprogramovat „napevno“ AI k tomu, aby rozlišila všechny zvířecí druhy, nemá příliš smysl. Je jich mnoho a je to neefektivní. Na druhou stranu, pokud AI napovíme, že kočky mají ocas a kožich, zatímco žáby nic z toho nemají, pouze manuálně katalogizujeme a počítač se nic skutečně neučí. Co takhle, aby na tohle všechno přišel sám? Deep learning je proces, komplexní algoritmus, během něhož si AI sama určí, které objekty a tvary jsou na jednotlivých zvířecích fotografiích podobné, a rozloží si je na menší prvky, například křivky. Ty pak variuje a podobné typy hledá ve strukturách ostatních fotek. Jestliže lidský faktor vůbec vstoupí do hry, pak až v konečné fázi, kdy přiřadí roztříděným setům fotografií jména zvířat, která jsou na nich zachycena. AI by potom měla rozpoznat jakoukoliv fotku se slonem, aniž by jí někdo řekl, jak takový slon vůbec vypadá. A software pro rozpoznávání lidských tváří nebo hlasu funguje v podstatě stejně.
Hluboké učení není nový koncept
Mechanismus učení se pomocí analýzy a následného rozkládání složitých úkolů na jednodušší elementy je našemu myšlení docela
22
Reseller Magazine
vlastní. Není náhodou, že neuronové sítě, které hluboké učení využívají, mají s lidským mozkem až nápadně podobnou strukturu. Fungují jako systém logických spojení. Představte si mentální mapu vytvořenou z uzlů, které binární informaci propustí jedním, nebo druhým směrem. Z těchto spojení jsou složeny vrstvy, kde výstup jedné z nich je zároveň vstupem do vrstvy další. Čím složitější problém před námi stojí, tím více se u něj zapotíme, a u sítě je třeba více neuronových vrstev pro jeho zvládnutí. Dnešní sítě jsou spojením tisíců takových vrstev. Mluví se o hloubce modelu, v anglofonním světě se používá zkratka CAP (Credit Assignment Path), vyjadřující počet nodů, kterými musí primitivní informace projít od vstupu až k výstupu. Dodnes není stanoveno, kolik vrstev musí síť obsahovat, aby se dalo říci, že využívá principy hlubokého učení. Čím hlubší systém je, tím hlubší je analýza, kterou provádí, a tím abstraktnější jsou data, na která se vstupní informace rozkládají. Učení se ale není proces, který by měl jistý konec. Stejně jako u lidí, i AI v tomto ohledu nebude nikdy plně samostatná a dokonale naučená. Každý výsledek analýzy má jen probabilní charakter a i umělá inteligence sem tam udělá chybu a za slona označí na obrázku jezevčíka. Čím složitější nějaký systém je, tím je náchylnější k chybám. Právě proto složité neurální sítě dozoruje někdo jiný. Hovoří se o takzvaném „supervised learningu“, učení se s učitelem, který dohlíží na proces analýzy a výstupní data používá ke zpětnému testování sítě. Pokud uvažujete, že takovou práci nemohou dělat lidé, máte pravdu. Neuronové sítě zpravidla dozorují a učí jiné neuronové sítě.
Když zdokonalování vede k chybám
A v tom tkví jeden z největších problémů a omezení současných sítí a deep learningu jako takového. Kapacita lidského myšlení je přirozeně omezená, rozkládat a analyzovat
umíme jen v malé míře a ze všeho toho učení na nás často padne únava. Ne tak na umělou inteligenci. Výpočetní výkon moderních sítí je doslova dramatický a síť se neunaví. Vždy vezme své výstupní hodnoty a použije je jako vstup při testování a tak dál a zase. V procesu neustálého učení pak přijde moment, kdy začne nacházet příliš mnoho shodných prvků napříč svou databází. Jinými slovy, začne některé jezevčíky označovat za slony, protože jejich barevné schéma srsti nebo linie uší je shodná s určitým jedincem slona indického z podhledu. Tento princip, v angličtině označovaný jako „overfitting“, je dán tím, že AI nemá cit pro to, aby rozhodla, kdy má učení přestat. Sama o sobě nedokáže říci, kdy už ve zdokonalování svých definic přehání a překračuje únosnou hranici. Výsledkem je nárůst chybovosti. Řešením je pak nasazení další kontrolní sítě, ale tím se zvyšuje už tak obrovská náročnost na výpočetní výkon a systém se stane složitějším, a tedy zase o něco více náchylným k chybám. V tomto ohledu to musí být člověk, který síti nastaví maximální hodnoty, a tedy rozvrhne hranice, mezi kterými se počítač při svém učení může pohybovat.
Člověk a stroj poznávají svět
Ostatně, v této myšlence je obsaženo i to, co od našeho vlastního myšlení strojovou inteligenci nejvíce odlišuje. Lidský mozek, jakkoliv omezený, má úžasnou vlastnost seberegulace, plasticity, která mu dovoluje zpracovávat informace, které jsou mu na první pohled nesmyslné. Umí velmi kreativně nacházet nové cesty, jak přistupovat k tomu či onomu problému. Díky tomu vymyslel principy matematiky. Také je v jeho povaze si ony cesty ulehčovat. Proto vytvořil neuronové sítě, kterým dal do vínku myslet stejným způsobem, kterým přemýšlí on sám. Jenže tyto sítě onu plasticitu nesdílejí. Jejich myšlení a učení se není kreativní, a čím lépe obstávají v analytice, tím hůře si pak vedou v syntéze. Jestliže se lidské učení dá charakterizovat jako dynamické a založené na nacházení analogií a významů, pak je to strojové definováno statikou a symbolikou. Je přísně logické a binární. Třebaže se na jiných stránkách tohoto časopisu dočtete o úžasných možnostech a využití umělé inteligence, je třeba mít na paměti, že její vývoj je stále na začátku, a tak se s trochou nadsázky dá říct, že svět je pro AI pořád stejně složitý jako pro lidi. Co nás už nyní spojuje, je schopnost poučit se ze svých chyb. listopad 2019 | www.rmol.cz