Doc. PhDr. Karel Pala, CSc. pracuje v Centru zpracování přirozeného jazyka na Fakultě informatiky, které vzniklo z jeho iniciativy v roce 1998. I když je původně lingvista, zakotvil právě na této fakultě, aby se mohl věnovat počítačovým metodám analyzování jazykového systému a výzkumu v oblasti umělé inteligence nebo sémantického webu. V polovině ledna se Centru ve spolupráci s Ústavem pro jazyk český AV ČR podařilo spustit světově unikátní Internetovou jazykovou příručku.
Jak byste popsal své odborné zaměření? Dá se říct, že jste jazykový inženýr?
Inženýři jsou zpravidla ti, kdo mají matematické zázemí a hledají inženýrská řešení nějakých technických problémů. Do jisté míry takovým inženýrem jsem, ale vzešel jsem z humanitního prostředí – původně jsem studoval lingvistiku. Ale už v roce 1959 jsem absolvoval seminář strojového překladu vedený profesory Sgallem a Palkem v Praze a dostal se tak k počítačovému zpracování přirozeného jazyka, což mě fatálně nasměrovalo.
V čem konkrétně spočívá práce jazykového inženýra?
Navrhnete třeba morfologickou analýzu češtiny a na ní založíte korektor překlepů – to znamená, že musíte umět algoritmizovat skloňování a časování, a pak napsat program, který to umí udělat automaticky. Výsledek pak vidíte v textovém editoru, když se vám červeně podtrhávají slova s chybami.
Jak se stalo, že dnes jako původem lingvista sedíte na Fakultě informatiky, a ne na Filozofické fakultě?
Zájem o matematické metody v lingvistice začínal na filozofických fakultách, ale byl tu i zájem ze strany matematiků, v Brně to byl například profesor Novotný. Já pracoval na katedře českého jazyka na Filozofické fakultě a věnoval se formálnímu popisu jazyka – češtiny. V roce 1995 jsem se vrátil po dvouleté stáži z Anglie zpátky a tehdy mi děkan Fakulty informatiky profesor Zlatuška nabídl, jestli bych nechtěl jít na FI. Odkrývalo to nové možnosti a také jsem měl zkušenost, že snažit se učit studenty a studentky filozofické fakulty nějakým matematickým popisům jazyka, nebo je dokonce učit programovat, je velice nevděčná práce. Na FI je podstatně snazší inspirovat studenty, aby se zajímali o metody a techniky zkoumání jazyka, které pak díky matematicky orientovanému způsobu myšlení dovedou formalizovat, algoritmicky popsat a nakonec implementovat.
Zajímá informatiky přirozený jazyk?
Zajímá, protože počítačové zpracování přirozeného jazyka je součástí dnes důležité a perspektivní disciplíny, které se říká umělá inteligence. Jejím hlavním cílem, mám-li to říct polopatě, je formálně popsat a implementovat na počítačích hlavní funkce lidského mozku – to zahrnuje třeba rozpoznávání obrazů, manipulaci s předměty a právě také porozumění jazyku.
Dají se vyjmenovat nějaké překážky, které zatím brání tomu, aby se dalo s počítačem komunikovat pomocí přirozeného jazyka?
Existuje už řada programů, které dovedou rozpoznávat mluvenou řeč a převést ji do symbolické podoby – tedy přepsat ji. To je jeden z prvních kroků a věc, která už dnes běžně funguje u různých automatických dialogových systémů. To všechno ale ještě neznamená, že tomu, co říkáte, počítač rozumí. Problém je v tom, že počítač nemá znalosti o světě. Abych mohl svému notebooku říct, že chci získat základní vlastnosti nějakého typu automobilu, potřebuju do počítače dostat nemalou sumu znalostí. Nebo jinak: my třeba teď víme, že jsme v České republice, sedíme na Fakultě informatiky v Brně, že prezidentem ČR je Václav Klaus a že po silnicích se jezdí v autech a tak dále. To jsou všechno základní znalosti o světě, které je potřeba do počítače dostat v takové podobě, aby bylo možné se ho na ně přirozeným jazykem dotazovat. Ještě se nepovedlo vytvořit takový program, aby člověk v plném rozsahu nepoznal, že mluví s počítačem. Dosáhnout toho je pro jazykové inženýry velká výzva.
V čem spočívá výzva pro vás?
Snažím se lépe poznat, jak přirozený jazyk funguje. Pro práci s jazykem na počítači jsou potřebné tři věci – jednak je to gramatika, pak znalosti o světě a také automatické usuzování – logika. Výzva je vytvořit nástroje, které něco z toho dovedou. V Centru zpracování přirozeného jazyka na FI se snažíme takové nástroje vyvíjet a myslím, že můžu říct, že máme dobré výsledky.
V čem se tato práce liší od toho, co dělali generativní gramatikové, jako je například Noam Chomsky? Nebo naopak, nakolik je jí podobná? Vy se také snažíte popisovat obecné principy fungování jazyka?
Chomsky a generativní gramatikové vycházeli z přesvědčení, že díky své interní znalosti jazyka jej dokážeme na základě introspekce dostatečně popsat. Dlouho se věřilo, že to je to pravé a vyčerpávající paradigma, ale v 60. letech minulého století profesoři Kučera a Francis přišli s tím, čemu se v současnosti říká korpusy – tedy velké soubory textů v elektronické podobě, s nimiž dnes pracujeme. Principy generativní gramatiky se v jazykovém inženýrství plně neprosadily, protože v aplikacích jako strojový překlad, otázkové a dialogové systémy a dalších se ukázalo, že takto vytvořené popisy jazyka jsou neúplné.
Proč jsou popisy jazyka podle generativních gramatik neúplné?
My lidé sice všechna jazyková pravidla známe a umíme je používat, ale když si sedneme ke stolu a pokusíme se je sepsat, na spoustu věcí si nevzpomeneme, protože si je jednoduše neuvědomujeme, naše paměť je svým způsobem omezená. Proto se začalo pracovat s korpusy, skrze které se snažíme dozvědět víc o chování jazyka. V nich vidíme, jak se jazykové jednotky ve velkých textových souborech chovají, a můžeme tedy formulovat teorii jazyka úplněji.
Co korpusy nabízejí, co z nich získáváte?
Základní pozorování, které korpus umožňuje, je frekvence výskytu. Drobná potíž je ale v tom, že když si člověk vezme slovník jakékoliv knihy, zjistí, že slov s četností jedna v něm bude hodně, podle povahy textu až k padesáti procentům. Také se potřebujeme dovědět víc o výrazech s nízkými četnostmi, proto potřebujeme opravdu velké korpusy, aby nám o jazyce mohly říct něco reprezentativního – jestli se ten který jev vyskytuje pravidelně či nepravidelně a v jakých kontextech. Nejzajímavější je pro nás chování slovních spojení, kolokací, kontextů: vyvinuli jsme nástroj Word Sketch Engine, který umožňuje zadat slovo, třeba sloveso „spát“ a ve stomilionovém korpusu zjistit, v jakých kontextech se nejčastěji vyskytuje a jak těsná ta spojení jsou.
Kde se to dá použít v praxi?
Takové informace jsou cenné pro řadu aplikací, třeba pro strojový překlad nebo pro vyhledávání na webu a celkově jsou užitečné právě pro systémy směřující k porozumění přirozenému jazyku.
Zmínil jste strojový překlad. Ten je dnes velkým hitem.
Aktuálně je populární statistický strojový překlad, který je založen právě na obrovských korpusech. To je třeba dnes poměrně známý Google Translator, který těží z toho, že Google disponuje obrovskou databází textů. Jsou tu ale problémy s jazyky, jako je čeština, protože v ní je potřeba dobře zvládnout skloňování a časování. Uplatnění má takový strojový překlad zatím převážně v technických textech a hodně se používá pro vytváření jazykových lokalizací softwarových nástrojů. Překládání lidskými zdroji je totiž drahé a u těchto typů překladů není již nezbytně nutné.
Jak strojový statistický překlad funguje?
Je třeba mít k dispozici velké množství paralelních textů v různých jazycích, pro něž se zarovnají jednotlivé věty na sebe tak, aby si odpovídaly, a na základě takzvaného jazykového modelu se spočítají a porovnají pravděpodobnosti výskytu různých dvou- či trojslovných spojení. Překladový systém pak na jejich základě nabízí nejpravděpodobnější překladové ekvivalenty. Jak se lze přesvědčit, výsledky Google Translatoru jsou o něco lepší než u dosavadních takzvaných pravidlových překladových systémů, ale průlom to zatím není.
Řekl jste, že v Centru zpracování přirozeného jazyka pracujete s korpusy. Jak se takové korpusy vytvářejí?
Pro začátek musím říct, že v poslední době pracujeme s opravdu velkými korpusy a patříme v tom mezi nejlepší na světě. Ty největší mají nyní zhruba do tří miliard slov. Naším cílem je pětimiliardový korpus pro češtinu a desetimiliardový pro angličtinu a budeme se snažit vytvořit ještě větší. Pokud jde o způsob vytváření, pro naše korpusy získáváme texty z webu. K tomu jsme navrhli programy, které procházejí internet a stahují texty. Naše výhoda je, že máme dobře zvládnutou techniku čištění těchto dat od různých šumů, jako jsou obrázky a tabulky, a dobře se podařilo zvládnout i rozpoznávání a odfiltrování duplicitních textů.
Není reprezentativnost takového korpusu zkreslena tím, že jde jen o texty z webu?
Tím jste narazil na otázku vyváženosti korpusů, tedy na to, jaké typy textů jsou v nich obsaženy. Ano, u menších korpusů to hraje roli – třeba tvůrci Českého národního korpusu věnovali poměrně velkou pozornost tomu, aby v něm bylo určité procentu textů z té které oblasti – ať už z novin, beletrie, odborných textů a podobně. Ale ze zákona velkých čísel vyplývá, že když je korpus dostatečně velký, pak tento fakt již nemusí hrát tak relevantní roli. Je ovšem pravda, že omezení tu jsou – máme-li korpus tvořený třeba jen novinovými texty, některé jevy se v něm nemusí vyskytovat, například terminologie.
V polovině ledna jste ve spolupráci s Ústavem pro jazyk český Akademie věd ČR spustili Internetovou jazykovou příručku. O co jde?
To je unikátní věc, která, pokud vím, nemá jinde obdoby. Projekt vyšel ze spolupráce s jazykovou poradnou Ústavu – ta se zaměřuje na zodpovídání jazykových dotazů veřejnosti. Během řady let práce se ukázalo, že lidé se v podstatě ptají pořád na to samé. Úvaha tedy byla, že by se něco takového dalo shrnout do počítačové podoby a umístit na webových stránkách. Vytvořili jsme proto společně s Ústavem systém sestávající ze dvou částí – v první, slovníkové si zájemce může vyhledat konkrétní slova a jejich tvary a ve druhé, výkladové části si pak najít výklad k pravopisným jevům, jež ho zajímají.
Mohla by tato příručka nahradit Pravidla českého pravopisu?
Ano, je míněna jako jejich elektronická náhrada a zdá se, že je dokonce lepší – už jenom proto, že knižní pravidla nabízejí ve své slovníkové části asi 12 tisíc slov, zatímco v internetové příručce jich je přibližně 60 tisíc, což je rozsah Slovníku spisovné češtiny. Co se výkladové části týče, najde se tam nejen to, co je v Pravidlech českého pravopisu, ale i řada dalších informací vycházejících ze zkušeností jazykové poradny. Kromě toho integrovaný program pro morfologickou analýzu vám každé slovo kompletně vyskloňuje – to slovníky běžně nenabízejí.
Jaký je o službu zájem?
Zájem veřejnosti je velký. V okamžiku, kdy se 14. ledna objevila informace o spuštění příručky pro veřejnost, na příslušném serveru jsme v průběhu dne zaznamenali 53 tisíc přístupů a následujícího dne 106 tisíc. V současnosti se počet přístupů pohybuje v průměru kolem 20 až 25 tisíc denně. Pro nás je to potvrzením, že tato práce dává dobrý smysl.
Zmínil jste tu morfologický analyzátor. To je ten, se kterým pracuje i vyhledávač seznam.cz?
Ano, je to program nazvaný Ajka, který umožňuje při vyhledávání v portálu seznam.cz napsat slovo v základním tvaru, například „muž“ a vyhledávač k němu dovede vyhledat texty, kde se klíčové slovo vyskytuje i ve tvaru jiném, tedy v dalších pádech jako například „mužem“, „mužů“. To funguje i obráceně a rozšiřuje možnosti vyhledávače – u jazyků typu češtiny je morfologická analýza v těchto aplikacích nezbytná. Pracujeme dále na tom, aby program Ajka rozpoznával i slovotvorné vztahy – tedy že třeba „učitel“ a „učitelka“ je odvozeno od slovesa „učit“. To umožní výrazně zvýšit „inteligenci“ vyhledávání a využít jí v rámci takzvaného sémantického webu.
Co ještě vás inspiruje v práci?
O poznání a zvědavosti už byla řeč. Tím, že jsem na vysoké škole, mám možnost pracovat s mladými lidmi, se studenty. V našem Centru se na práci podílí kolem dvaceti lidí, studentů doktorských, magisterských i bakalářů. Snažíme se klást si zajímavé a dlouhodobé cíle, mezi naše ambice patří třeba mít malý šikovný systém strojového překladu nebo inteligentní nástroje pro vyhledávání v rámci sémantického webu. Usilujeme také o začlenění do příhodného evropského projektu.
Sémantický web je termín, který se dnes objevuje i v médiích. Můžete vysvětlit, o co jde?
Dotaz, který dnes zadáte do Googlu, je vyhodnocen čistě statisticky – vyhledávač nerozumí významu toho, co je na webu, ani vašemu dotazu. Sémantický web naproti tomu zahrnuje pokusy popsat strukturu webu pomocí vhodných metadat. Jako příklad si můžeme vzít třeba výraz „zvířata“. Cílem sémantického webu bude mít k takovému výrazu a pojmu stojícímu za ním jakousi „zvířecí ontologii“, tedy konceptuální strukturu, která zachycuje, jak zvířata vypadají, jaké jsou jejich druhy a tak dále. Googlu dnes nemůžete říct, pověz mi něco o zvířatech nebo řekni mi, která zvířata mají hnědou barvu. Maximálně vám nabídne zdroje, v nichž se o zvířatech můžete s největší pravděpodobností něco dovědět. Když ale budeme mít pro jednotlivé oblasti vědění vypracovány zmíněné ontologie, umožní to vyhledávat na úplně jiné úrovni. V řadě tematických oblastí, domén, už takové ontologie existují. Pro obecný jazyk – angličtinu – vznikla sémantická síť WordNet, jejíž český protějšek jsme vyvíjeli v našem Centru v rámci dvou projektů Evropské unie.
Říkal jste, že vás motivuje snaha o poznání. Má taková snaha nějaký konec?
Věda spočívá v tom, že dáváte dohromady svého druhu mozaiku. V některých částech mozaiky už je obraz úplnější a jinde se mozaika teprve pomalu skládá. Celkový obraz v oblasti zpracování přirozeného jazyka ještě zdaleka nemáme a bojím se, že ani nikdy mít nebudeme, protože nemáme k dispozici nekonečně mnoho času. Nicméně naším cílem je vyplnit mozaiku co nejlépe.
Je pro vás práce i koníček?
Bohužel ano, protože ji nosím pořád v hlavě. Když třeba hraju tenis, najednou se mi stane, že přijdu na něco, co mě trápilo v práci a na co bych nepřišel, kdybych za pracovním stolem seděl hodiny. Mám někdy pocit, že mi práce vstupuje do života až moc. To ale jistě potvrdí každý, kdo dělá nějaký výzkum.