Christoph Kirsch: Většina lidí nerozumí technologiím. To je děsivé

Informatice propadl ještě dřív, než byla cool, a vydal se za ní po Evropě až do Silicon Valley. A loni nastoupil na Fakultu informačních technologií ČVUT v Praze. Seznamte se s profesorem Christophem Kirschem, který chce učit programování pořádně.

Christoph Kirsch

Vždy jste věděl, že chcete být programátorem?
Začal jsem programovat, když mi bylo asi čtrnáct. Táta mi koupil můj první počítač, byl to ZX81 Sinclair s jedním kilobajtem paměti. Programy jste museli ukládat na kazety. To bylo něco. Pamatuji si, že jsem byl překvapen, jak nemilosrdný zážitek to je, když počítači zadáváte pokyny. Musíte mu vysvětlit každý detail, který chcete provést. Bavíte se s nemyslícím bezduchým strojem. Nutí vás to přemýšlet o problému neobvyklým způsobem. Jak řekl Steve Jobs, je dobré se naučit programovat, i když neplánujete stát se programátorem. Pomůže vám to myslet jinak.

Takže jste začal programovat dávno před tím, než šlo o masový obor?
Ano, bylo to v roce 1982. Pak jsem šel na univerzitu a získal titul z informatiky, což zhruba odpovídá magisterskému titulu. Poté jsem získal doktorát na Institutu Maxe Plancka, kde jsem se mimo jiné setkal se svým budoucím šéfem. Hledal jsem post-doc pozici ve Spojených státech, tak jsem se zeptal tohoto hostujícího akademika z Ameriky. Říkal, že promluví s několika lidmi, ale druhý den mi sám nabídl místo.

Do Silicon Valley jste přišel v devadesátých letech, což bylo opravdu vzrušujícího období.
Pamatuji si, že jsme se tam všichni docela znali. Díky mému šéfovi jsme používali Google, když to ještě byla jen jedna služba mezi mnoha dalšími. Ale bylo jasné, že tenhle vyhledávač uspěje.

Uvažoval jste někdy o tom, že opustíte akademickou obec a půjdete do startupu?
Vlastně mě to nikdy nenapadlo. Vždycky jsem chtěl pracovat na univerzitě, ačkoli jsme si mohl vydělat více peněz jinde. Ale o to mi nikdy nešlo.

Kdy jste začal učit? Během doktorského studia?
Zvláštností doktorského studia na Institutu Maxe Plancka je, že nemusíte učit. Ale když jsem se přestěhoval do Berkeley, musel jsem získat pedagogické zkušenosti. Do té doby jsem byl jen asistentem přednášejícího, ale najednou jsem musel učit jeden předmět. Na začátku to nebyla legrace. Jako vědec byste měli publikovat svůj výzkum. Náš tým byl velmi produktivní, pracovali jsme opravdu tvrdě, a učení mi připadalo spíš jako rušivý element. Je to vlastně velmi typický jev – za učení se vám ovšem nedostane žádného uznání. Dnes, o patnáct let později, mě učení jako profesora velmi baví. Ale trvalo to dvacet let, než jsem se naučil dobře učit. Čím triviálnější předmět vyučujete, tím více zkušeností potřebujete k tomu, abyste ho správně učili. V Berkeley přednášejí úvodní předměty jen ti nejváženější a nejzkušenější profesoři. Je to strašně těžká věc mluvit ke dvěma stům lidí, kteří nemají o dané látce ani páru. Můžete nadělat hodně chyb.

„Informatika není jen o počítačích nebo programování. Je o povaze a podstatě informací.“

Máte v rukávu nějaké triky, kterými objasňujete klíčové koncepty?
Zásadní je zcela pochopit látku. Nelze jí jen tak nějak rozumět, musíte ji prožít. Pak můžete teprve odučit skvělý úvodní předmět. Jen porozumění však nestačí – musíte být schopen materiál prezentovat. Musíte být dobrý řečník, což jsem já dlouho nebyl. Bál jsem se mluvit před lidmi, ale nakonec jsem si to zamiloval. Také jsem začal pracovat na vlastní učebnici. Mám ji v plánu dokončit během několika příštích let. Bude zahrnovat vše, co vím o tématu počítačové vědy. Existuje mnoho dobrých knih pro programátory, ale je to, jako by byly napsány pouze pro lidi, kteří již umí programovat. Informatika není jen o počítačích nebo programování. Je o povaze a podstatě informací. Existují informatici, kteří neprogramují a místo toho se zaměřují na velmi abstraktní koncepty.

Programujete už třicet let. Pamatujete, jak se strojové učení dostalo na výsluní?
V šedesátých letech přišla první vlna umělé inteligence, a to díky Marvinu Minskymu a jeho kolegům z MIT. Když jsem byl doktorand, nacházeli jsme se v něčem, co bych nazval druhou vlnou AI. Šlo především o matematickou logiku, kdy se lidé snažili vytvořit uvažující programy pomocí logiky a statistiky. To bylo i téma mojí doktorské práce. Ale tato vlna vyšuměla už předtím, co jsem se přestěhoval do Berkeley.

Proč myslíte, že byla druhá vlna neúspěšná?
Možná že počítače tehdy nebyly dost rychlé. Nyní je v těch původních nápadech nový život, ale spíše se uplatňují na jednoduché, matematické úrovni. Rozhodovací programy, které dnes vidíme, jsou založeny na mnohem jednodušších pravidlech a tato jednodušší logika jim umožňuje extrémní úspěšnost při řešení opravdu těžkých specifických problémů, jako je kontrola správnosti hardwarového procesoru.

A co současná vlna AI, tedy strojového učení a neuronových sítí?
Neuronové sítě byly v devadesátých letech v plenkách a lidé se jim tak trochu smáli. Ale teď jsou nejnovější vlnou umělé inteligence. Je to úplně jiné paradigma, ne na základě matematického dokazování, že něco platí. Používají se statistické metody, což je zcela jiná technika a způsob uvažování. Neuronové sítě jsou dobré, pokud máte dobrá data. Když máte špatná data, pak nebudou fungovat.

Jakých mylných představ o AI si nejčastěji všímáte?
Lidé podceňují obtížnost toho úkolu vytvořit něco, co je skutečně inteligentní. A podceňují to o několik řádů. Považuji za nepravděpodobné, že se dožiji skutečně umělé obecné inteligence. Její složitost je prostě ohromující.

„U úzké umělé inteligence nastanou stejné problémy jako u jiných neinteligentních technologií. Pro příklad: umístění malé nálepky na značku STOP může způsobit, že samořídící auto tuto ceduli zcela ignoruje. Jak můžete vůbec dokázat, že je tento druh technologie spolehlivý?“ – Christoph Kirsch

Ale určitě existují specifické algoritmy hlubokého učení, které mohou vyřešit konkrétní problémy, aniž by předstíraly, že jsou inteligentní.
Ano. Ale nastanou u nich stejné problémy jako u jiných neinteligentních technologií, především se zabezpečením a se spolehlivostí. Lidé se do nich nabourají a donutí tyto AI systémy dojít ke směšným závěrům. Pro příklad: umístění malé nálepky na značku STOP může způsobit, že samořídící auto tuto ceduli zcela ignoruje, i když každý člověk pořád jasně vidí, že je to stopka. Zajistit, aby byly tyto systémy spolehlivé a bezpečné, bude nesmírně obtížné. Jak můžete vůbec dokázat, že je tento druh technologie spolehlivý?

Ten důkaz mohou být lidé, kteří je používají? Třeba překladové systémy postavené na hlubokých neuronových sítích vykazují slibné výsledky a dělají méně chyb než předchozí systémy. 
Lidé často říkají, že AI systémy nemusí být stoprocentně spolehlivé, ale musí být spolehlivější než člověk. To se snadněji řekne, než udělá. Vezměte si řízení auta: je opravdu velice těžké vytvořit vozidlo, které se samo bude řídit lépe, než kdyby ho řídil průměrný lidský řidič. Mezinárodní společnosti do tohoto výzkumu dávají miliardy dolarů a všechny selhávají.

Říkám si, že kdyby se nám něco takového podařilo v dalších pěti letech, nedokážu si představit, kam bychom mohli pokročit za dalších pět let.
Kdo kdy žil v Silicon Valley, chápe, jak se rodí takové humbuky. To místo má neuvěřitelně nabuzenou atmosféru. Je tu tolik energie, že je to až šílené. V Evropě takové město není. Ale problém je samozřejmě v tom, že každá bublina jednou skončí. Silicon Valley je na to docela zvyklé, vždycky bude nějaká další věc. Myslím, že nadšení kolem AI se nakonec přesaturuje a odezní. Strojové učení bude schopné dělat zajímavé věci – a to bude tak všechno. A lidi zas přeskočí na jinou vlnu zájmu.

Mám pocit, že tohle „hyped-up“ myšlení v Silicon Valley jim pomáhá zkoušet spoustu různých věcí.
Ano, to platí. Ale Evropané často berou Američany příliš vážně. Ve skutečnosti to tak úplně nemyslí.

Co tedy v této souvislosti může Česká republika nabídnout výzkumníkům informatiky? Jak může konkurovat Silicon Valley?
Devizou města, jako je Praha, je jeho krásná bohatá historie. Silicon Valley nic takového nemá. Pokud jste žili na jih od San Francisca, životní styl tam je úplně jiný. Jste jen dělník, kolečko ve stroji. Musíte pracovat jako blázen a konkurence je naprosto brutální. Když uděláte chybu, končíte. San Francisco je skvělé město, ale Silicon Valley není San Francisco. Je to místo práce, tvrdé práce. Někteří lidé se rozhodnou žít v San Franciscu, aby unikli té atmosféře, ale pak musí každý den dojíždět v neuvěřitelném provozu a se špatnou veřejnou dopravou. Něco takového si lidé v Evropě umí jen stěží představit. Praha a mnoho dalších velkých evropských měst nabízí zcela jinou atmosféru, kterou lze využít k přilákání talentovaných lidí.

Co si z toho může odnést Praha?
Chtěl bych, aby lidé v Praze vytvořili instituci, kde spolu mohou lidé spolupracovat na zajímavých projektech a zároveň si užívat město se vším všudy. Ale aby to fungovalo, musíte přivést skvělé lidi – a to je tradiční problém. Velcí vědci se zeptají: „Kdo už tam je?“ Takže potřebujete peníze a potřebujete slavné lidi, kteří se toho ujmou a mohou zvýšit kredit institucí. Pak přijdou další skvělí lidé.

„Praha nabízí zcela jinou atmosféru než Silicon Valley. Toho je třeba využít k přilákání talentovaných lidí.“

Když jsem vyrůstal, počítače byly napřed kuriozitou, pak nutností a dnes si bez nich neumíme představit život. Co by měl rodič naučit své děti, aby je připravil na tento nový svět?
Pokud jde o děti a počítače, přirovnávám to k tomu, co se děti učí ve škole o matematice. Děti se učí základní aritmetiku, a to nejen proto, aby byly schopny dělat později pokročilou matematiku, ale také aby získaly základní intuici o číslech. To je neuvěřitelně užitečná dovednost, která vám pomůže fungovat v moderní společnosti. Měli bychom udělat něco podobného s informatikou. Všechny školou povinné děti by měly znát základy informatiky. Jsou to přirozené koncepty, ale ve většině zemí se nevyučují na školách. Někdy mají kurz o tom, jak používat Microsoft Word nebo něco podobně trapného. To je šílené. Státy jsou neuvěřitelně opatrné, aby nedaly žádnému subjektu kontrolu nad učebními osnovami, ale pak umožní korporaci přístup k dětem a nechají je zvyknout si na jejich software.

Jaké to má důsledky?
Spousta jevů, které dnes vidíme ve společnosti – vše, co vidíme na internetu, na sociálních médiích – všechno to souvisí s tím, že lidé nerozumí technologiím. Je to jako když se lidé báli aut. Společnost není schopna správně zacházet s technologiemi. Spousta lidí má mylné představy o tom, co to počítač opravdu je. Počítač sám o sobě nemá mysl, je to jen stroj. Lidé své pocity promítají do technologií. A když teď na počítače začínáme mluvit, bude se to dít ještě častěji. Lidé nechápou, jak bylo vše, co vidí na obrazovce, někým ovlivněno. Je to taková iluze. Je to zvláštní – a upřímně řečeno, je to děsivé. Vzdělávání je tedy pro udržitelnou společnost nesmírně důležité.

Je něco, co by rodiče měli učit své děti o počítačích?
To je složitá věc, technologie se rychle vyvíjí. Materiály jsou k dispozici, ale nejsou široce používány. Lidé by měli tlačit na politiky. Musí volit ty, kteří tento problém berou vážně.

Proč je pro některé lidi tak těžké pochopit programování?
Mám na to metaforu. Představte si slovník, který vysvětluje český jazyk pomocí českého jazyka. To je trochu podivné, že? Jak se děti učí jazyk pomocí jazyka? V informatice tomu říkáme autoreference. Při psaní programů používáte programovací jazyk a můžete v tom jazyce napsat kompilátor, který vezme váš program a přeloží jej do strojového kódu. Kompilátor tedy vlastně určuje význam toho daného jazyka. Vytváříte tedy význam jazyka pomocí toho jazyka samého. Význam tedy nakonec pochází z fyzického počítače, který spouští kód. Nejprve to vypadá jako paradox, ale ve skutečnosti je to zdroj krásných věcí, které můžete udělat. Aby to pak všechno fungovalo, jsou na to poměrně netriviální postupy. Učím o tom celé předměty a je to úžasné.

Christoph Kirsch profile

Christoph Kirsch

FIT ČVUT

Christopher Kirsch je profesorem na katedře počítačových věd Salcburské univerzity v Rakousku. Na Sárské univerzitě získal titul dr. Ing., v roce 1999 pak PhD. na Institutu Maxe Plancka pro informatiku v německém Saarbrückenu.

V letech 1999 až 2004 pracoval jako postdoktorand na katedře elektrotechniky a počítačových věd Kalifornské univerzity v Berkeley. Od roku 2020 vede výzkumný projekt EU na Fakultě informačních technologií ČVUT v Praze.

Těžiště jeho výzkumných zájmů leží v souběžném programování, správě paměti, virtualizaci a formálním ověřování. Podílel se na vynálezu embedded programovacích jazyků a systémů, jako jsou Giotto, HTL a Embedded Machine.

Nedávno participoval také na návrhu vysoce výkonné, vícejádrové škálovatelné souběžné datové struktury a systémů pro správy paměti.