Nebezpečná umělá inteligence od OpenAI?

Americká nezisková společnost OpenAI před několika dny na svém blogu zveřejnila článek, ve kterém píše o tom, že vyvinula nový jazykový model, který je tak dobrý, že raději nezveřejní ani natrénovaný model, ani zdrojové kódy. Pro řadu médií (včetně některých seriózních českých) takové zprávy fungují jako červený hadr na býka a okamžitě tak začaly vznikat články o tom, že byla vyvinutá průlomová umělá inteligence, která je tak nebezpečná, že se musí držet pod pokličkou. Rád bych uvedl věci na pravou míru.

V první řadě je třeba přiznat, že OpenAI se v článku nedopustila žádného faulu a důvody, kvůli kterým nechtějí zveřejnit zdrojové kódy, znějí rozumně. Je však evidentní, že autoři dobře tušili, jak budou média reagovat a jde tak z jejich strany o promyšlený marketingový tah. O tom svědčí i poslední věta článku, která končí slovy „we’re hiring“.

A s čím tedy vědci z OpenAI přišli? Byl vytvořen zřejmě velmi dobrý jazykový model. Jazykovým modelem se rozumí nástroj, který na základě libovolné posloupnosti slov umí určit pravděpodobnosti možných slov, která by mohla následovat. Pro příklad uveďme posloupnost dvou slov

máma mele

Úkolem jazykového modelu je doplnit následující slovo posloupnosti. To může být teoreticky jakékoliv slovo, ale jistě každý tuší, že některá slova budou pravděpodobnější než jiná. Pravděpodobnosti následujících slov mohou vypadat například následovně:


slovo
pravděpodobnost
maso 0,6
kávu0,1
koření0,1
Emu0,01
Ostatní slova0,19

Pokud díky jazykovému modelu známe pravděpodobnosti následujících slov, můžeme je vyžít pro generování úplně nových textů. Postup je následující:

  1. První slovo zvolíme sami, nebo ho vybere nějakým náhodným způsobem.
  2. Pravděpodobnosti pro následující slovo nám už určuje jazykový model. Slovo tedy vybereme náhodně s ohledem na tyto pravděpodobnosti. Je možné si to představit tak, že vezmeme hrací kostku, která nemá 6 stěn, ale tolik stěn, kolik různých slov máme k dispozici. Na každou stěnu takové kostky vlepíme závaží, jehož hmotnost bude odpovídat pravděpodobnosti daného slova.
  3. Onou hrací kostkou si hodíme a zapíšeme si slovo, které nám padlo. Tím nám vznikne posloupnost o jedno slovo delší. Na jejím základě podle jazykového modelu upravíme pravděpodobnosti pro následující slovo a celý postup opakujeme od bodu 2.

Klíčem k úspěchu a k vytvoření smysluplné posloupnosti slov je tedy kvalitní jazykový model. Na to existují už lety prověřené postupy. Nejprve potřebujeme dostatečně velkou kolekci textových souborů, která slouží jako vzorové texty. V oboru strojového učení se takovému datovému souboru říká trénovací data. Pokud se v těchto trénovacích datech bude po slovech máma mele vyskytovat maso častěji, než jiná slova, budeme chtít, aby jazykový model posloupnosti máma mele maso přiřadil velkou pravděpodobnost.

Na druhou stranu ale nechceme, ale si jazykový model jen zapamatoval časté posloupnosti. Chceme, aby byl schopný zobecňovat i na posloupnosti, které se v trénovacích datech nevyskytly. K tomu slouží algoritmy strojového učení.

Podle článku OpenAI byly pro strojové učení použity „staré známé“ algoritmy (velmi podobné například tomu, který byl sloužit pro generování básní), jen trénovací data a kapacita paměti modelu byla o mnoho řádů větší než dříve. To bylo umožněno díky velmi výkonné výpočetní infrastruktuře, která běžným smrtelníkům mimo špičková AI centra není dostupná.

V čem tedy spočívá nebezpečí takového modelu? V žádném případě se nejedná o nějakou formu samostatně uvažující umělé inteligence. Stále jsou to jen náhodné procesy a statistiky počítané z trénovacích dat. Díky jejich složitosti je však možné generovat texty, které jsou velice podobné textům psaným lidmi. Zneužít je lze například pro strojové generování fake news nebo komentářů v diskuzích. S pomocí těchto přístupů je možné vygenerovat libovolné množství různorodého textu, které nebude stát víc než trochu elektrické energie.

Přitom texty nemusí být jen bezduchým blábolením. Zaměření textů je vždy dáno trénovacími daty. Pokud se pro trénování použijí ideově zabarvené propagandistické texty, výsledek bude k nerozeznání od lidmi psaného obsahu na některých fake news serverech.

Sami autoři článku píší, že replikace jejich výsledků nebude velký problém. Přestože byly zveřejněny pouze zdrojové kódy menšího modelu, použité principy jsou ve vědecké komunitě dobře známy a jeho rozšíření je pro znalého člověka snadné. Jediným zásadním omezením je obrovská výpočetní náročnost. Ta se však týká jen procesu vytváření modelu. Jakmile model někdo vytvoří a zveřejní, jeho použití už je velmi snadné i s využitím řádově menšího výpočetního výkonu. Navíc z Moorova zákona víme, že výpočetní výkon počítačů roste v čase přibližně exponenciálně a nebude tedy trvat dlouho, než si takový generátor bude moci každý z nás natrénovat na svém mobilu.

Ze strany OpenAI tedy o žádný velký průlom nejde. Navíc by bylo naivní si myslet, že už se takovýmito generovanými texty náš mediální prosto dávno neplní. Jen se tím autoři těchto generátorů textů veřejně nechlubí.

Je singularita blízko?

Dnes proběhlo poslední kolo mediálně ostře sledovaného poměřování schopností člověka a stroje. Počítačový program AlphaGo firmy DeepMind ve hře Go definitivně potvrdil své vítězství a porazil tak dosavadního mistra světa Lee Sedola s výsledným skóre 4:1. Go se od šachu nebo jiných her, ve kterých stroje porazily člověka už dávno, liší v obrovské velikosti prostoru herních možností. Tento prostor není možné procházet celý a hledat globálně optimální tah, namísto toho je potřeba využít jakési strojové intuice, která vychází pouze z lokálních znalostí. Intuice, kterou jsme doposud přisuzovali pouze lidem, se v souvislosti s AlphaGo v popularizačních textech zmiňuje poměrně často. Může se tedy zdát, že se přiblížila doba, kdy nás počítače svojí inteligencí překonají.

Vítězství stroje nad šampiónem v Go je bezpochyby významný úspěch vývojářů DeepMind, ale je singularita skutečně blízko? Nemyslím si.

Singularita

Pojem singularita v kontextu umělé inteligence zavedl matematik Stanislaw Ulam v polovině dvacátého století. Jedná se o hypotetickou událost, kdy univerzální umělá inteligence dosáhne úrovně člověka a svojí schopností vylepšovat sebe sama nás začne rychle překonávat. Nemalé množství lidí věří, že se tato chvíle velice rychle blíží.

Jedním z nejznámějších popularizátorů singularity je Ray Kurzweil, který se proslavil především jako autor knihy The Singularity Is Near: When Humans Transcend Biology. Hlavním argumentem pro blížící se singularitu je dosavadní exponenciální růst různých forem technologického pokroku. Tato myšlenka je rozšířením takzvaného Moorova zákona, podle kterého se počet tranzistorů umístěných na počítačový čip zdvojnásobuje zhruba každé dva roky. Jedním z příkladů rozšíření je exponenciální růst výpočetní rychlosti počítačů, ilustrovaný na obrázku 1.

Exponenciální růst výpočetní rychlosti

Obrázek 1: Exponenciální růst výpočetní rychlosti. Zdroj: https://en.wikipedia.org/wiki/The_Singularity_Is_Near

Je ale exponenciální růst výpočetní rychlosti a dalších technologických ukazatelů dostatečným předpokladem k dosažení umělé inteligence, překonávající ve všech ohledech intelekt člověka?

Úspěchy umělých neuronových sítí

Není pochyb o tom, že existuje celá řada oblastí, ve kterých stroje nad lidmi výrazně vynikají. Už od dob prvních počítacích strojů to jsou úlohy, vyžadující mechanické opakování rutinních postupů. V posledních letech však slaví stroje úspěchy i v oblastech, které byly doposud pouze doménou člověka. Jmenujme například rozpoznání obsahu obrázku, kde současný nejlepší algoritmus dosahuje chybovosti 4,58 % (chybovost člověka se údajně pohybuje někde kolem 5 %), algoritmy pro řízení aut a dronů, projekt DeepDream firmy Google, vytvářející psychedelické obrazy, v úvodu zmíněný program AlphaGo, nebo třeba systém, který je schopný psát básně.

Všechny tyto úlohy mají dvě společné vlastnosti. První z nich je vysoká dimenzionalita problému – u algoritmů pro zpracování obrazu je to množství vstupních pixelů, které nedávají velký smysl jednotlivě, ale je třeba se na ně dívat jako na celek, u hry Go je to obrovské množství možných herních scénářů, u generování textů souvisí vysoká dimenzionalita s množstvím různých kombinací slov, které mohou mít pokaždé úplně jiný význam. Druhým jednotícím prvkem je fakt, že současných fascinujících výsledků bylo dosaženo pomocí hlubokých neuronových sítí.

Umělé neuronové sítě však známe již několik desítek let, je tedy legitimní pokládat otázku, co náhlý posun umožnilo. V první řadě je důležité si uvědomit, že se zmíněné úlohy v principu neliší od jiných úloh strojového učení, které už dlouhé roky považujeme za uspokojivě vyřešené. Nikdo se dnes nepozastavuje nad tím, že e-mailový server dokáže s velkou úspěšností správně rozpoznat spam, nebo nad tím, že cílená reklama na internetu velice přesně reflektuje nikde explicitně nespecifikované zájmy uživatele. Rozpoznávač obrázků není nic složitějšího než klasifikátor s komplexní vnitřní strukturou. Strojový generátor básní je svým způsobem také klasifikátor, jenž se na základě předchozího textu snaží predikovat jeho nejpravděpodobnější pokračování.

Systémy řízení dronů nebo algoritmus AlphaGo se od předchozích příkladů liší v tom, že v sobě zahrnují zpětnou vazbu od okolního prostředí, na základě které jsou schopny se dále zlepšovat. Pokud dron provede nějakou akci, kvůli které začne neočekávaně ztrácet výšku, je to pro něj jednoznačná zpráva o provedení chybného manévru, ze které se může poučit. Podobně algoritmus AlphaGo sehrál několik milionů her sám proti sobě, díky čemuž se dokázal naučit lépe odlišovat dobré strategie od horších. Tomuto způsobu učení se říká reinforcement learning a zdaleka nejde o žádný nový vynález natož o něco principiálně odlišného od neuronových sítí s jinou formou zpětné vazby.

Když opomeneme několik inženýrských triků urychlujících trénování, úspěch hlubokých neuronovým sítí v poslední době je způsoben pouze obrovským nárůstem výpočetního výkonu, který sítím v rozumném čase umožňuje vytvářet velmi složité vnitřní struktury a efektivně pracovat s daty vysoké dimenzionality. To však samo o sobě není všespásné.

Budoucnost umělé inteligence

V tuto chvíli umíme strojově efektivně řešit některé jednotlivé problémy, které se na první pohled zdají být složité, ale principálně příliš obtížné nejsou. Pokud bychom chtěli, aby se stroje vyrovnaly lidem ve všem, potřebovali bychom něco víc než jen výpočetní výkon. Pro ilustraci uvedu dva příklady, které přesahují rámec schopností známých algoritmů.

Současná umělá inteligence umí řešit pouze problémy, pro které je vytvořená. Stále je to jen algoritmus, vykonávající postupy naprogramované člověkem, a příliš se tak neliší třeba od výrobní linky v továrně. Oproti tomu člověk je schopný vidět svět v souvislostech a být kreativní. Pokud člověk vytvoří program, který umožňuje generovat básně, přirozeně ho napadne, že by se podobný algoritmus dal použít i pro generování notového zápisu hudby. Stroj ale tuto souvislost nevidí. Když učitel na základní škole přehraje dětem úryvek Smetanovy Vltavy a Blaníku, věřím, že většina žáků dokáže rozpoznat, který úryvek odkazuje k řece a který k rytířům, aniž by nad tím žáci kdykoliv přemýšleli nebo jim někdo řekl, podle jakého klíče se mají rozhodnou.

Jiným příkladem omezenosti stroje je absence jeho vlastního vědomí. Stroje se nerozhodují podle svého vlastního úsudku, ale buď podle pravidel, která jsou získaná z dat (případně jsou přímo součástí jejich algoritmu), nebo statisticky podle napočítaných pravděpodobností. Algoritmus pak sice dokáže provést správné rozhodnutí, ale je velice obtížné zjistit, proč se tak rozhodl. Natož, aby své rozhodnutí dokázal sám zdůvodnit. Při generování básní nemá počítač ponětí o tom, co vytváří, pouze aplikuje obecné vzory získané z dat a vytváří statisticky očekávané posloupnosti písmen.

Na základě svých znalostí a zkušeností si netroufám predikovat, zda se jednou podaří vytvořit univerzální umělou inteligenci, která se ve všem vyrovná člověku a postupně ho překoná. Jsem však přesvědčený, že k tomu teď nejsme o mnoho blíže než v polovině minulého století, kdy Alan Turing vytvořil první teoretický model výpočetního stroje.