i

Aktuální číslo:

2024/11

Téma měsíce:

Strach

Obálka čísla

Problémy dnešních generátorů jazyka

 |  5. 9. 2022
 |  Vesmír 101, 554, 2022/9

Generování přirozeného jazyka je úloha, při níž počítač na základě nějakých vstupních dat vytvoří srozumitelné a plynulé sdělení např. v angličtině nebo češtině. Jak funguje?

Vstupní data může představovat např. tabulka s výsledky z databáze nebo výstup měřicího přístroje, ale za problém generování jazyka se považuje i odpovídání v dialogu s chatbotem, kde vstupem je text dosavadní konverzace. Velmi pravděpodobně proto generování jazyka už dnes používáte. Automaticky generované jsou odpovědi chytrých reproduktorů a virtuálních asistentů v mobilních telefonech a na generovaný text narazíte na různých webech – jsou to např. notifikace na sociálních sítích, ale i zprávy o počasí nebo některé sportovní zprávy. Jak už u nástrojů pracujících s jazykem bývá zvykem, častěji se s generovanými texty setkáte v angličtině než v češtině.

Bude <teplota> stupňů

Prakticky všechny dnes komerčně používané generátory jsou založené na ručně psaných pravidlech, což je technologie používaná už od minulého století. V praxi často stačí doplňování specifických hodnot do šablon – vět s vynechanými mezerami. Např. ze šablony „Dnes bude <teplota> stupňů a <počasí>.“ jednoduše dostanete větu: „Dnes bude 25 stupňů a polojasno“. Pro složitější aplikace je k šablonám nutné přidat pravidla na jejich výběr a kombinování. Ta určují např. jak vybrat, které události fotbalového zápasu jsou hodné zmínky, nebo jak sestavit sdělení popisující cestu MHD s několika přestupy. Pro morfologicky bohaté jazyky, jako je i čeština, ještě přibývá nutnost doplňovaná slova vyskloňovat (typicky podle slovníku), abychom se vyhnuli krkolomným formulacím typu „Toto se líbí uživateli Ondřej Dušek“.

„Neuronové systémy běžně buď ‚zapomenou‘ sdělit důležité informace, nebo naopak ‚halucinují‘ – informují o věcech, které vstupními daty nejsou podložené.“

Šablony a pravidla fungují celkem spolehlivě a výstupy dnešních generátorů jsou dobře srozumitelné, ale mají dvě zásadní nevýhody. Jednak kombinace šablon (a popř. absence skloňování) často vede k nepřirozeně znějícím větám, jednak je pro každou novou aplikaci nutné šablony a pravidla vytvořit znova, což je pracné a ve výsledku drahé. Kromě toho generátor pokaždé pro stejný typ sdělení používá tutéž šablonu, takže se vygenerované texty často opakují.

Neuronové sítě

Oproti komerčním systémům se výzkum generování přirozeného jazyka už několik let zabývá téměř výhradně generátory založenými na umělých neuronových sítích.1) V této oblasti totiž došlo k obrovskému pokroku: v letech 2014–2015 se objevily první rekurentní architektury pro neuronové sítě generující celé věty slovo po slově, v roce 2017 dnes nejčastěji používaná architektura Transformer (viz obr. a popisek) a od roku 2018 se objevují nové a nové tzv. předtrénované jazykové modely, tedy sítě typu Transformer, které jsou natrénovány na miliardách vět stažených z internetu. Postupně přitom roste jejich velikost – počet neuronových vrstev a v nich počet jednotlivých umělých neuronů (tj. maticových sčítání, násobení a jednoduchých matematických funkcí) – a zlepšuje se také plynulost a přirozenost textů, které jsou modely schopny vygenerovat.

Hlavní myšlenka generování v neuronovém jazykovém modelu je až překvapivě jednoduchá: model dostane začátek věty a snaží se předpovědět, které slovo bude další. Tuhle situaci lze dále upravit tak, že model dostane na vstupu i nějaká data a v prvním kroku bude „začátek“ věty prázdný, takže můžeme vygenerovat celou větu na základě dat. Při trénování model začíná s náhodnými parametry (koeficienty pro ona sčítání a násobení v neuronech). Postupně dostává text, a kdykoli netrefí další slovo správně, drobně si parametry upraví, až se trefuje čím dál častěji. Neuronové modely se už v praxi používají v jiných oblastech zpracování jazyka – např. při rozpoznávání řeči (model dostává na vstupu zvukový signál a „generuje“ odpovídající slova) nebo ve strojovém překladu (vstupem je text v cizím jazyce). Tady díky neuronovým sítím došlo k výraznému pokroku, kdy za určitých podmínek můžou automatické systémy soutěžit s lidmi.2) Kdybychom si srovnali automatický překlad z doby před deseti lety a z dneška, uvidíme obrovský rozdíl.

Také pro generování jazyka představují neuronové sítě obrovský potenciál – např. celý virtuální asistent může být reprezentován jednou neuronovou sítí a může přímo z uživatelských dotazů generovat odpovědi. Stejně tak můžeme neuronovému modelu jen dodat trénovací příklady pro danou aplikaci (např. data z meteostanic a odpovídající texty o počasí) a síť se sama naučí tvořit plynulé texty, bez nutnosti psát ručně šablony nebo pravidla pro jejich spojování. Schopnost generovat úžasně plynulé a realisticky vypadající texty už dostala předtrénované jazykové modely i do povědomí široké veřejnosti v podobě zpráv o automatickém vygenerování vědeckého článku, divadelní hry (v projektu THEaiTRE,3) na němž se podílela i MFF UK), rozhovoru s digitálním Václavem Havlem či při spekulacích, zda už neuronové modely nabyly vědomí.

Od imitace k chápání významu

Vědomí je možná spíš filozofická otázka, ale většina vědecké komunity věnující se zpracování jazyka je přesvědčena, že u současných neuronových modelů se o něm mluvit nedá. A nejen to, jazykové modely vlastně nejsou ani dost dobře použitelné pro generování jazyka v praxi, proto se stále používají pravidla a šablony. Vygenerování uvěřitelně vypadajícího textu je totiž něco jiného než přesné popsání zadaných dat nebo pravdivá odpověď na uživatelovu otázku.

I když se jazykovým modelům správně popisovat data a zodpovídat otázky často daří,, není to stále dost často na to, aby se na ně dalo spolehnout. Neuronové systémy totiž běžně buď „zapomenou“ sdělit důležité informace, nebo naopak „halucinují“ – informují o věcech, které vstupními daty nejsou podložené. Dnes nelze ani stoprocentně zaručit, že jejich vygenerovaný text nebude pro uživatele hrubý nebo urážlivý. Protože neuronové jazykové modely jsou typicky předtrénovány na čistě jazykových datech (textech stažených z internetu) a učí se jen velmi jednoduché úlohy (jako je výběr následujícího slova), chybí jim dostatečné propojení s reálným světem. Proto byly také v nedávném hojně diskutovaném článku nazvány „stochastickými papoušky“4) – výborně imitují lidská sdělení, ale význam a propojení s realitou jim uniká.

 Máme tedy k dispozici dva základní typy generátorů jazyka, a ani jeden z nich není ideální. Můj začínající výzkumný projekt „Generování přirozeného jazyka nové generace“, financovaný Evropskou unií z grantu Evropské výzkumné rady (ERC), si klade za cíl spojení předností obou typů generátorů. Cílem je vytvořit systémy, které je možné natrénovat z dat a zároveň se spolehnout na jejich přesnost. Plánujeme proto neuronové modely více kontrolovat a omezovat jejich výstup – vstupem nebudou přímo data, ale podrobný plán sdělení, kde lze snadno ověřit shodu se vstupními daty, a řídit podle něj generování. Zároveň je chceme propojovat s „realitou“ v podobě rozsáhlých grafů znalostí – databází faktů. Generátor se tak naučí produkovat nejen uvěřitelná, ale i ověřitelná sdělení.

Poznámky

1) O neuronových sítích obecně viz Vesmír 95, 276, 2016/5, o hlubokém učení Vesmír 100, 31, 2021/1.

2) Strojově přeložený článek o strojovém překladu: Vesmír 99, 546, 2020/10.

3) https://theaitre.com.

4) Bender E. M. et al.: On the Dangers of Stochastic Parrots: Can Language Models Be Too Big? Proceedings of the FAccT 21, 610, 2021, DOI: 10.1145/3442188.3445922.

Ke stažení

OBORY A KLÍČOVÁ SLOVA: Informatika, Lingvistika

O autorovi

Ondřej Dušek

Mgr. Ondřej Dušek, Ph.D., (*1985) vystudoval MFF UK a FF UK v Praze. Ve své disertaci na MFF se věnoval neuronovým modelům pro generování jazyka v chatbotech. V letech 2016–2018 byl postdoktorandem na Heriot-Watt University v Edinburghu a spoluvedl tým studentů, který se dvakrát dostal do fi nále lingvistiky MFF UK. V roce „Generování přirozeného jazyka nové generace“.
Dušek Ondřej

Doporučujeme

Se štírem na štíru

Se štírem na štíru

Daniel Frynta, Iveta Štolhoferová  |  4. 11. 2024
Člověk každý rok zabije kolem 80 milionů žraloků. Za stejnou dobu žraloci napadnou 80 lidí. Z tohoto srovnání je zřejmé, kdo by se měl koho bát,...
Ustrašená společnost

Ustrašená společnost uzamčeno

Jan Červenka  |  4. 11. 2024
Strach je přirozeným, evolucí vybroušeným obranným sebezáchovným mechanismem. Reagujeme jím na bezprostřední ohrožení, které nás připravuje buď na...
Mláďata na cizí účet

Mláďata na cizí účet uzamčeno

Martin Reichard  |  4. 11. 2024
Parazitismus je mezi živočichy jednou z hlavních strategií získávání zdrojů. Obvyklá představa parazitů jako malých organismů cizopasících na...