OSMIČKA / MĚSÍČNÍK MĚSTSKÉ ČÁSTI PRAHA 8 / srpen 2018
www.praha8.cz
vyjadřování jako: když je
hodnota vstupu taková, udělej
toto, jinak udělej něco jiného.
Když jsem začínal, tak jsem
programoval v jazyce Fortran na
děrné štítky – a když jsem někde
zapomněl středník, byl to den
zdržení. Dnes je to pár vteřin.“
...a jako pedagog za katedrou Matematicko-fyzikální fakulty.
opět k autonomním autům –
Google dříve testoval svoje vozy
v Kalifornii. Tam je pořád hezké
počasí a vše probíhalo báječně.
Najednou začalo pršet a program nevěděl, co má dělat.
Změnily se totiž podmínky,
na které algoritmus vůbec nebyl
připravený.“
Funguje lidský mozek jako
počítač, resp. počítač jako lidský
mozek?
„Mozek má obrovské množství
neuronových spojů a my si
myslíme, že se to dá matematicky vyjádřit. Popis toho, jak
funguje jeden neuron, je,
řekněme, středoškolská úroveň
matematiky – neuron má nějaké
vstupy, přikládá jim nějaké váhy,
odborně se jim říká synaptické
váhy a spojům synapse,
a spočítá svůj výstup. Učení
spočívá v tom, že se tyto váhy
upravují podle toho, co se daný
neuron má naučit. Složitost to
získá až tím, že se spojí spousta
neuronů dohromady, které
vytvoří neuronovou síť.“
Co dokáže jeden neuron?
„Nic moc. Představte si, že
neuron má dva vstupy a tohle
(ukazuje na stolek s čokoládovými a žlutými sušenkami) je jeho
vstupní prostor. Neuron mi
dokáže nakreslit čáru a něco
oddělit. Bude mi odpovídat,
tohle je nula a tohle jednička, a já
si řeknu fajn, mám rozpoznávač
čokoládových sušenek. Když
jsou neuronů tisíce a v několika
vrstvách, najednou dokáže
z obrázku rozpoznat například
písmena.“
To přece nemůže být žádný
problém.
„Pro lidský mozek ne. Ale pro
počítač ano. Když něco vyfotím,
vidím na záběru spoustu detailů,
že po silnici mezi poli s kvetoucími slunečnicemi jede auto,
v dálce jsou hory a na nebi
mráčky. Pro počítač je to jen
shluk pixelů. Až specializovaný
software vám dokáže přečíst
písmena. Toho využívají už teď
například kamery u dálnice,
které přečtou vaši SPZ a upozorní vás, že jedete příliš rychle. Říká
se tomu optické rozpoznávání
znaků a je to veliký úspěch
strojového učení, nebo chcete-li
umělé inteligence. A za tím je
právě umělá neuronová síť.“
Kvůli programátorovým
chybám padají aplikace
ve vašem telefonu,
ale někdy i letadla.
Jak se to počítač naučí?
„Většina takového učení je
takzvané učení s učitelem. To
znamená, že počítači připravíme
obrovské množství příkladů,
kterými dokážeme říct, jak má
odpovědět. Na spoustě obrázků
bude písmeno A v nejrůznějších
podobách a my mu to A vždycky
ukážeme. A tím ten software
naučíme to A rozeznávat.“
Když ale uděláte v zadávání
programu chybu, tak se stane co?
„Dneska se programuje ve
vyšších programovacích
jazycích, ke kterým existují
překladače, které naše zadání
převádějí do systému nul
a jedniček, strojového kódu,
který pak počítač vykonává.
Programátor to píše zhruba
stejně jako ve wordu a používá
Takže pozice čárky je stejně
důležitá jako v běžném psaném
textu? Příklad: Věta „Jezte, děti.“
má zcela jiný význam s čárkou než
bez čárky.
„Přesně. Programátor píše svůj
program, pak zmáčkne zelenou
šipku, program to přeloží
a případně řekne – tady vám
něco chybí. Syntaktické chyby
jsou tedy jednoduché na
odhalení, software má svou
vlastní velmi přísnou gramatiku.
Horší jsou logické chyby, když
programátor opomene nějakou
možnost, anebo naučí model
umělé inteligence něco špatně.
Kvůli takovým chybám vám pak
padají aplikace ve vašem
telefonu, ale někdy i letadla.“
A dokáže umělá inteligence sama
sebe někam posunout?
„To je hluboká otázka. My máme
dva přístupy k umělé inteligenci
a neznáme, co je nejlepší řešení.
Tradičnější přístup už z 50. let se
nazývá „shora“ a trošku to
odpovídá programování.
Snažíme se popsat naše znalosti
pravidly a vztahy mezi nimi, aby
tomu ten druhý, a také počítač
rozuměl. Třeba popsat rodinu
– ta jako celek sestává z lidí, kteří
mají mezi sebou nějaké vztahy.
Že Lenka má za manžela Karla
a mají děti Karlíka, Pepíka
a Aničku. A když to dobře
popíšu, tak umělé inteligenci
můžu zadat: Karlík a Pepík, jaký
je mezi nimi vztah? A ona
odpoví, že jsou bráchové.
Algoritmy používají matematickou logiku a umí uvažovat
v rámci tvrzení pravda – nepravda. Nefunguje to tak dobře
u otázek typu: Jak to děláte, že
řídíte auto? Člověk by odpověděl, že udržuje nějakou rychlost,
točí volantem, ale počítač
s neurčitými informacemi moc
pracovat neumí.“
Vybrat z nějaké množiny jen velké
lidi by neuměl?
„Kdo je velký? V Holandsku jsou
velcí lidé dvoumetroví, v Japonsku jsou jako velcí braní dejme
tomu metr osmdesát a výš.
Každý z nás těm pojmům rozumí
a běžně je používá, ale jsou
neurčité a algoritmus s přístupem shora s nimi neumí dost
15
dobře pracovat, i když existují
metody jako fuzzy logika, které
se o to snaží. Naopak výhodou
přístupu shora je exaktnost.
Firma IBM udělala program
Watson, který načetl do
strukturovaných databází
všechny dosažitelné encyklopedie a vyhrál v americké znalostní soutěži Jeopardy, obdobě
našeho Riskuj, dnes pomáhá
lékařům například při diagnostice nádorů.“
A ten druhý přístup?
„To je metoda zdola, aby se to
nepletlo. Inspirujeme se tu
přírodou – typickým představitelem jsou umělé neuronové sítě.
Stejně jako novorozenec i nová
neuronová síť nic neumí, je jen
náhodně inicializovaná. A stejně
jako malé dítě se vše musí naučit
– třeba zvířata. Já jsem učitel
a ukazuji systému tisíce obrázků
psů a koček v nejrůznějších
podobách… Síť mi odpovídá
jednička pejsek, nula kočička.
Když je to špatně, síť si na
základě své chyby upraví
synapse tak, aby příště to bylo
lépe. Toto učení samozřejmě
trvá hodiny a hodiny.“
Takže je to učení na základě
zkušenosti?
„Když se učíte malou násobilku,
nejdřív vůbec nevíte, co to je, ale
po nějaké době vám docvakne
systém a pak už dokážete
odvodit další vztahy a odpovědět i na složitější příklady. Tomu
se říká systém generalizace.
Když učíme systém rozpoznávat
kočičku, věříme, že na základě
desetitisíců obrázků kočiček pak
rozpozná podle charakteristických znaků i kočičku, kterou ve
skutečnosti nikdy neviděl.
Problém je v tom, že je to pro nás
tak trochu černá skříňka, uvnitř
které jsou statisíce neuronů,
a my už nevíme, proč reagují
zrovna takhle. Algoritmus učení
chápeme, matematicky víme, co
se děje, ale úloha je už tak
složitá, obsahuje miliony čísel
a do těch milionů už nikdo
pořádně nevidí.“
Třeba tam běhají nějací permoníci
a přehazují bity vidlemi?
(smích) „Přesně tohle o tom ví
i odborník, akorát se to snažil
zakamuflovat do učených slov.“
Vladimír Slabý
celý rozhovor
najdete na
www.praha8.cz