Umělé inteligenci, respektive strojovému učení, se poslední dobou často vytýká, že nikdo přesně neví, na základě čeho se systém vlastně rozhoduje. Jenže – není v tom naopak jeho hlavní přednost?
Vůbec se nechci pouštět do filozofických úvah o tom, co je skutečná umělá inteligence a čemu se dnes jen tak říká. Snad tedy lépe mluvit o strojovém učení: máme systém vyškolený na základě vstupních dat tak, aby maximalizoval nějakou hodnotu, může to dělat lépe nebo hůře.
Co na tom chcete přesně vysvětlovat? Příklad: máme před sebou šachistu. Z toho, jak ze vstupů dojde k výsledku, se odvozuje jeho úspěšnost/síla. Ve skutečnosti šachista jistě nějak popíše, na základě jakých obecných principů postupuje – kdyby to tak nebylo, šachy by se člověk nemohl vůbec učit/trénovat. Na druhé straně se ale výsledná síla hráče odvozuje ne ze znalosti nějakých obecných principů. K tomu, jaký tah je v dané pozici nejsilnější, docházejí různí hráči i v případě shody na základě různého typu úvah, někdo více počítá, někdo spíše zvažuje obecná schémata, někdo se nechá vést automatem v hlavě (a maximálně pak už předem udělané rozhodnutí může nějak zkoušet zpětně racionalizovat – to je další potíž, protože veškeré výklady mohou být ve skutečnosti až zdůvodněním ex post).
Velice kvalitní šachový program, který se šachy navíc naučil sám, bez lidské asistence, vyvinul Google, respektive jeho firma DeepMind. Mezi vstupem a výstupem funguje v příslušné neuronové síti kdovíkolik abstraktních vrstev. Nejspíš dnes nikdo nerozumí tomu, jaké zde existují struktury, z hlediska herní síly na tom ovšem ani nezáleží. Je to prostě stejné jako v lidském mozku. (To celé jen pro příklad, kritici tvrdí, že za silou programu AlphaZero stojí hlavně konkrétní hardware, tenzorové procesory nebo dokonce konkrétní podmínky zápasu s jinými šachovými programy atd.).
Pojďme tedy v úvaze dále: prodáváte-li zboží, roli jistě hraje, jak je v supermarketu rozmístíte. Chcete-li dosáhnout maximálního prodeje, každého jistě napadne, že podle dne v týdnu, denní doby nebo teploty se různé věci budou prodávat různě. Nicméně jaká konkrétně bude ona funkce více proměnných a především abstraktní struktury, které si systém vytvoří, to už může být pro člověka docela nepochopitelné. Ale v tom je nikoliv problém, ale naopak síla strojového učení; kdyby to bylo jednoduché a jednoduše vysvětlitelné, lidé by na to už dávno přišli sami.
Strojové učení je obdobou všemožných evolučních algoritmů a genetického programování. Nějaké zákonitosti jsme dokázali odhalit a logicky vysvětlit (často ale zase i ex post a logicky by někdo vysvětlil i jiné, třeba dokonce i opačné výsledky). Jenže mnohá skutečně cenná pravidla mají spíše povahu matematických heuristik, které fungují, aniž kdo ví proč. Kritériem je právě ono fungování: stačí si přečíst třeba knihy N. Taleba (Černá labuť a další) nebo M. Ridleyho (Evoluce všeho a jiné). Jaký přesně bude matematický vztah mezi inflací a cenou nemovitostí? Jaký bude vztah mezi prodejem cibule a česneku a venkovní teplotou a umístěním chleba na druhém konci prodejny? Jak ovlivní cena rýže cenu akcií Applu, když oboje je evidentním důsledkem dalších skrytých proměnných, podobně jako v neuronové síti? Lidskou logiku v tom příliš nehledejme (protože nějakou logiku dokážeme najít v libovolném vztahu), kritériem prostě je, zda určitý předpis funguje a dokáže být úspěšný i nadále.
Ještě snad v této souvislosti stojí za to zmínit již starou a klasickou knihu Douglase Hofstadtera „Gödel, Escher, Bach“. Autor zde dochází k závěru, že umělou inteligenci (teď se tím myslí něco jiného než program na optimalizaci prodeje cibule, tedy „skutečně myslící stroje“) dokážeme sice sestrojit, ale právě jen různým skládáním a metodou pokus-omyl. Nezjistíme z toho, jaká je třeba podstata naší vlastní inteligence.
Shrnuto, kritériem pro kvalitu samoučícího se systému je právě jeho úspěšnost. Řešit integrály se také naučíte nejspíš tak, že jich hromadu úspěšně vyřešíte.
Otázkou pak spíše zůstává, proč tento jednoduchý princip zpochybňovat, proč by kritéria rozhodování umělé inteligence měla být nějak laicky srozumitelná (pak by na ně přece nebyly potřeba tak složité a výpočetně náročné systémy). AlphaZero hraje šachy tak dobře právě proto, že si vytváří své vlastní abstrakce založené na dlouhé zkušenosti s příslušným procesem. Jiný program bude lepší nebo horší, ale bez ohledu na to, jak nám bude připadat srozumitelný.
K programu optimalizujícímu prodej cibule lze ex-post dodat řadu výkladů a logických zdůvodnění nebo si třeba i zaplatit audit genderové korektnosti, jenže to o budoucí úspěšnosti programu neřekne vůbec nic; AI, alespoň ta současná, je prostě software. Požadovat třeba záruku, že funguje „etickým způsobem“, je jako požadovat totéž od využívání MS Office.
Představa, že „nikdo neví, co se ta síť vlastně naučila a jak to že
dává takové výsledky jaké dává“, je poměrně populárně-naivní. Řekněme
tradovaný mýtus pro širší veřejnost. Realita je taková, že jak se
postupně rozvíjejí topologie sítí / přenosové funkce neuronů / učící
algoritmy apod., zároveň stoupá pochopení vědců a „inženýrů“, kteří
ty sítě staví, a zlepšují se i vizualizační pomůcky a algoritmy pro
„zpětné vyorání“ naučených znalostí pro prezentaci badateli či
zvědavému uživateli, který by rád pochopil „proč“ a „jak“ a „co“
(=nestačí mu výsledek). Samozřejmě pochopit výstup takové
„vizualizace naučených věcí“ bohužel do značné míry předpokládá, že
znáte základní principy funkce (umělých) neuronových sítí – takže
snaha o zpřístupnění takových výstupů laikům má své pochopitelné
mantinely.
Docela dobrý souhrn (byť tři roky starý) je k nalezení zde:
https://pdfs.semanticschola…
f8ac.pdf
Jestli se tenzorové počty chroupou na CPU, GPU nebo neuromorfním
křemíku, to je záležitost hodně nízké úrovně a s algoritmy a
topologií sítě to souvisí relativně volně. Jistěže větší výpočetní
výkon umožňuje dosáhnout většího rozlišení nebo větší „hloubky“ učení
nebo rychlejší reakce apod.
Pravda je, že dnes moderní „deep“ sítě (viz Zeiler a spol. =
rozpoznávání věcí v obraze, viz Kurzweilovo povídání o LSTM) jsou
pořád jenom poměrně hloupé a jednoúčelové klasifikátory. Že je jejich
mnohovrstevná topologie (principy a výhody takového uspořádání) těžko
uchopitelná pro laika, to je bohužel spíš problém úrovně vzdělání
dotyčného laika.
Zároveň je třeba říci, že tzv. „obecná umělá inteligence“ (GAI,
general artificial intelligence) je samozřejmě jiný kalibr a zatím
spíš těžce prenatální než v plenkách, osobně očekávám další vývoj
jednak „hrubé hloubky“, jednak (možná spíš) pokročilých topologií,
řekněme rekurzivních a v historickém ohlédnutí neortodoxních. Nebo
jinak: posun o úroveň výš v hierarchii organizace / architektuře ANN.
Mozek savců bude zcela jistě vydatnou inspirací. Pokud takové systémy
GAI máme postavit, resp. trochu jim stvořitelsky dopomoci (protože
vyvinout takový systém prostou hrubou evolucí genetickým algoritmem
by bylo možná hooodně nadlouho), opět budou badatelé v principu
rozumět, o co se topologicky/architektonicky snaží, co ten systém
zhruba dělá, a budou si do něj roubovat „instrumentaci“ pro
zviditelnění, co se uvnitř děje. U dostatečně pokročilé GAI lze
očekávat ladící pomůcky ve stylu „sděl pět nejdůležitějších naučených
asociací na další mémy, které nejvíce přispěly k této tvé
dedukci/akci“. A tehdy teprve skutečně povstane kategorie
akademických badatelů, původně vystudovaných v etice, psychologii,
teologii apod., kteří do svého životopisu přikříží AI a postaví na
tom kariéru… a našim vnoučatům to v té době nebude ani připadat
obscénní.
Ono je trochu otázkou, zda GAI je cílem. Už dnešní „hloupé
klasifikátory“, které stojí v pozadí velkých vyhledávačů a nejméně
jednoho slavného vícejazyčného překladače, mají zcela jistě ohromnou
kapacitu paměti, zpracování synonym, zřejmě i uvažují kontext
tazatele apod. Odhadem ta kapacita naučených mémů a vztahů je už teď
super-human level (a stejně tak průchodnost paralelního zpracování
odpovědí na položené dotazy). Přesto se tyto klasifikátory a
překladače chovají jako „knihovna naučených vědomostí“ = přinejlepším
jako „asociativní aspekt neokortexu“, odřízlého od zbytku savčího
mozku (od funkcí pudových, autonomních rozhodovacích, autonomně
učících). Prostě architektura „podvozku“ je udělaná jinak a je to tak
schválně, protože plní zcela jinou funkci. Naštěstí pro nás.
Ono přece pro počítač dávno není problém, dosáhnout „superhuman
performance“ v nějaké dílčí oblasti – a přebytek výkonu dnešního
křemíku se projeví zejména v případě, že jsou data zpracovávána
„primitivní formální logikou“, přímou algoritmizací, tzn. pokud se
nesnažíme plýtvat výkonem na emulaci biologických nervových uzlin. V
případě vyhledávačů se jedná o třídění vztahových dat. Osobně jsem
hodně zvědavý na případné hybridy mezi ANN-based inferenčním enginem
s přístupem k „algoritmické“ vztahové paměti… zda by šlo tímto
směrem něco optimalizovat. Ono popravdě zpracování vztahových dat
pomocí ANN se tomuto uspořádání už dost blíží… Nebo mít k
„ANN-based umělému mozku“ přilepený „algoritmický akcelerátor dedukcí
v rovině symbolické matematiky a logiky“. Dost už toho sci-fi…
Z druhé strany (od bilogických neurověd) postupuje také značné
badatelské úsilí. Asi nejviditelnější je Human Brain Project
sponzorovaný EU:
https://www.humanbrainproje…
Jasně, k postavení umělého mozku mají ještě hrozně daleko, ale já se
tajně domnívám, že to není ani tak o hrubé síle, jako především o
získávání znalostí. Znalostí, jak fungují dílčí oblasti v biologickém
mozku, zlepšování mapovacích metod apod. Zlepšování pochopení, jak to
dělá příroda. Počínaje tím, jak moc je náš model fungování neuronu
zjednodušený oproti biologické realitě. (Zaznamenal jsem domněnky, že
synapse není jedna analogová váha a jedna vstupní hodnota, ale spíš
paralelní vícežilový kabel, a potažmo že vnitřní zpracování v jediném
neuronu je také o něco složitější) atd. Obloukem zakončím k tématu
komentovaného článku: na webu HBP vidím několik čerstvých článků
ohledně detailního mapování mozku = ohledně „zjišťování, jak ta
záhadná neuronová síť vlastně funguje“.
autor: František Ryšánek, přidal Pavel Houser
(ručně překopírováno ze systému Disqus)