Datum zveřejnění: 
27. 11. 2018

V celosvětové soutěži Amazon Alexa Prize uspěl už podruhé v řadě český tým programátorů. Jejich konverzační robot Alquist získal nejlepší hodnocení ze všech. A to navzdory tomu, že celá soutěž probíhala v angličtině, a programátoři tedy museli překonat kromě psychologických i kulturní a jazykové bariéry.

Český tým programátorů z ČVUT dnes v Las Vegas obhájil stříbrnou pozici. Loňský scénář se opakoval v mnoha ohledech: český tým opět postoupil do celosvětového finále jako favorit publika. Ze stovky tisíc konverzací s lidmi po světě dostal za celkový dojem nejlepší průměrné hodnocení od uživatelů. Ale porota nakonec hodnotila opět trochu jinak (několik finálových konverzací posuzuje panel laiků a odborníků) a český tým si znovu odnáší druhou příčku. A šek na sto tisíc dolarů, který je dobrou motivací pro příští rok: „Rádi bychom technologii našeho socialbota aplikovali v dalších produktech. Také příští rok bychom se pak rádi znovu zúčastnili soutěže,“ uvedla pro Technet.cz Radka Flégrová, mluvčí týmu Alquist AI.

Ještě před odletem týmu na vyhlášení soutěže jsme programátory vyzpovídali. A také jsme si zkusili popovídat s Alquistem, jejich konverzačním robotem, který nese jméno z Čapkova dramatu R. U. R.

Hned na začátku konverzace jsem narazil na limity soutěže Alexa Prize, které programátoři nemohou ovlivnit. Tak především jazyk. Protože soutěž organizuje firma Amazon, vše probíhá na zařízení Amazon Echo, a tedy v angličtině. Amazon se stará o přepis mluveného slova uživatele do textu, a teprve tento text putuje k Alquistovi. Programátoři tak musí počítat s tím, že nedokáže správně rozpoznat neanglická jména. Z pohledu plynulosti konverzace je pak lepší nezdržovat se a na toto omezení neupozorňovat. Proto robot rychle pokračuje dál.

Hned na začátku je potřeba říci, že Alquist negeneruje svoje odpovědi „z ničeho“. Nepřemýšlí o tom, co mu říkáte, nemá vlastní zážitky, emoce nebo názory. Zní to samozřejmě, ale vzhledem k tomu, jaké bezhlavé nadšení kolem „umělé inteligence“ v posledních letech panuje, je dobré si to připomínat.

Co to tedy znamená, že „Alquist kombinuje prvky strojového učení s předem sestavenými konverzačními scénáři“? Ze všeho nejvíce se konverzace s chatbotem podobá konverzaci s pracovníkem call centra, který se musí striktně držet scénáře. „Dobrý den, jak jste spokojeni s vaším předplatným?“ Pokud zákazník odpoví, že není spokojen, nalistuje pracovník stranu 8 a pokračuje podle předem sestaveného návodu.

Stejně tak funguje Alquist. Programátoři sestavili složitě rozvětvený rozhodovací strom, ve kterém jsou připraveny různé sekce (sport, hudba, film, politika, zajímavosti atd.), konverzační témata v každé sekci a u každého tématu pak rozvětvené schéma dané konverzace. Programátoři, nebo v tomto případě spíše scenáristé, na základě zkušeností i statistik odhadují, co by uživatel mohl říci, a vymýšlejí, jak na takovou odpověď reagovat. A pak mají samozřejmě připravené i univerzální odpovědi pro případ, že se uživatelova odpověď nepodobá žádné z těch, na kterou umí Alquist podle scénáře reagovat.

Jak se bavit s Američany o všem a o ničem?

Český tým byl mezi ostatními soutěžícími výjimkou. Všechny ostatní týmy ve finálovém klání jsou z USA. Také porotci a naprostá většina uživatelů, kteří konverzace hodnotí, jsou Američané. Není tady jen jazyková bariéra, ale i bariéra konverzační.

„Je to pro nás velká výzva,“ přiznali se programátoři. „Sami se při tom, když robota učíme konverzovat, učíme, jak má vlastně zajímavá mezilidská konverzace probíhat.“ Americký pohled je přitom často jiný než ten český.

„Zjistili jsme třeba, že bavit se o politice je dost riskantní. Nejlépe fungují filmy a sport,“ dodávají tvůrci. U sportu byl problém, protože v USA sledují jiné sporty a fandí lokálním týmům. Ty bylo potřeba do rozhodovacího stromu zadat ručně. Kromě toho Alquist využívá informace z veřejně dostupných zdrojů, z diskuzního fóra nebo z novinových článků Washington Post.

„Také jsme zjistili, že si musíme dávat pozor na některé vtipy. Třeba loni jsme tam dali vtípek, že když uživatel požádal o ukončení hovoru, Alquist mu šeptem odpověděl: Nikdy mě už nevypneš. Dost se to řešilo na Redditu. Málem nás kvůli tomu vyloučili ze soutěže,“ smějí se programátoři.

Členové týmu Alquist AI tak tráví spoustu času studiem americké kultury, především filmů, počítačových her, zpráv nebo sportu, což jsou témata, o kterých si mohou lidé povídat. Vymýšlejí také způsoby, jak se rafinovaně vypořádat s častými případy, kdy se člověk robota zeptá na něco nepředvídaného.

Překvapivě zábavná konverzace plná triků

Náš figurant, rodilý Američan, si s robotem povídal více než dvacet minut: „Cože, fakt 25 minut? No to je síla! To je trochu děsivé, že jsem si na to tak rychle zvykl“ reagoval překvapeně Cody, když jsme mu řekli, jak dlouho konverzace probíhala. Odhadoval, že to bylo maximálně deset minut. Je pravda, že pečlivě připravené scénáře a jejich rychlé přepínání v tomto případě zafungovalo. Přestože byla konverzace dlouhá, probíhala relativně svižně.

Ukázka dobře demonstruje některé z konverzačních triků, které programátoři při sestavování scénářů uplatnili:

Robot se hodně ptá na uzavřené otázky, které však zanechají dojem otázek otevřených: Které roční období máš rád? Četl by sis raději knížku, nebo poslouchal hudbu?
Robot se snaží rychle měnit témata a nedat prostor pro to, aby konverzace vázla.
Robot hledá související klíčová slova (“historie“ vedla k vyhledání aktuálního článku o „historické potopě“).
Robot často odpovídá nezávazně a neurčitě. Jeho odpovědi jsou univerzální, aby bylo možné použít je bez ohledu na to, co uživatel odpověděl.
Robot mluví hodně o sobě a uživatel je žádán spíše o krátké odpovědi, které dají robotovi možnost pokračovat v jeho připraveném monologu.

Jinými slovy, Alquist tak trochu připomíná diskuzního partnera, kterého asi všichni známe z praxe (a pokud neznáme, tak jím možná sami jsme). Tak trochu sebestředný, který se rád poslouchá a druhému dá prostor hlavně proto, aby zachoval iluzi dialogu.

U člověka by to byl přinejmenším projev nedostatečné empatie. U robota je to zkrátka logický důsledek toho, co umí a co zatím ještě nějakou dobu bude mimo možnosti strojového učení. Programátoři nám nicméně přiznali, že se díky programování konverzací sami museli v osobním životě v konverzaci zlepšit.

Konverzační robot si při povídání nevymýšlí repliky sám, ale využívá předem sestavených scénářů

Do obecné umělé inteligence má tento konverzační robot – i další jemu podobní – neskonale daleko. Podle vedoucího týmu jsou konverzační roboti teprve na začátku: „Naše schopnosti zdaleka nejsou tak velké, jak se možná zdá z toho, jak se dnes píše o umělé inteligenci,“ připomíná Jan Šedivý z CIIRC ČVUT. „To, co umíme, je naučit se z řady příkladů, co je pro tyto příklady charakteristické, a na základě toho vyhodnotit i případy nové.“

K čemu to jednou bude?

Programátoři týmu Alquist každý den analyzují konverzace z celého světa a optimalizují a rozšiřují scénáře o nové větve. Zatím jejich konverzační robot spíše ukazuje, jak se daří předvídat, co lidi bude zajímat a co je nebude nudit, ale do budoucna mají plány uplatnit tuto technologii i v dalších odvětvích.

 

Autor: 
Technet.cz, Pavel Kasík
Zdroj: 
technet.cz