Reklama
 
Blog | Václav Novák

Poznat jazyk

Každé pravidlo má své výjimky a o pravidlech jazyka to platí přibližně dvojnásob. Například že česká podstatná jména středního rodu v jednotném čísle prvního pádu nikdy nekončí na „ý”. Skoro perfektní pravidlo, které má jen jednu výjimku. Jak si ale s takovým systémem může poradit počítač? A jak lidi?

Ani u tak jednoduchého úkolu, jako je poznat, zda je daný text
napsaný česky, nebo jiným jazykem, nelze si vystačit s pravidly typu

Když text obsahuje slovo s, je text v češtině.

Prvním důvodem je, že například běžná anglická slova jako do,
not, her, are, a a mnoho jiných jsou zároveň
slovy češtiny. Druhým důvodem je přítomnost cizojazyčných citací, které způsobují,
že se na žádné slovo nedá spolehnout v tom, že by jednoznačně určilo jazyk textu.
C’est la vie.

Přitom poznat, v jakém je text jazyce, je úkol pro člověka snadný (pokud daný
jazyk zná) a zároveň z hlediska počítačového zpracování velmi užitečný. Především v
souvislosti s Internetem se vyskytuje mnoho praktických problémů, při kterých
by nám pomohlo, kdybychom mohli texty roztřídit na české a ostatní. Můžeme
pak například vyhledávat jen v česky psaných webech, i když nejsou v doméně .cz.

Protože jednoznačná pravidla pro tento úkol neexistují, nezbývá, než spolehnout
se na statistické vlastnosti textů. Pomocí velkých textových korpusů (například
našeho národního) můžeme hbitě
zjistit, že slova jako do a a se v češtině vyskytují často a
nejsou tak příliš spolehlivými indikátory angličtiny, zatímco české slovo
are se vůbec nevyskytuje (leda na nějakém obskurním blogu). Na druhou
stranu kvůli cizojazyčným citacím slovo are vychází v Českém národním
korpusu jako mnohem častější než třeba podle mě češtější slovo nůše.

Reklama

Každopádně je možné na základě odhadu frekvence jednotlivých slov přiřadit každému
textu jeho „míru českosti”. Zajímavá otázka pak zní: jak vysoké musí
toto skóre být, abychom text klasifikovali jako český? Pokud nastavíme příliš
vysoký práh, spousta českých textů nám uteče – budem je klasifikovat
chybně jako cizojazyčné. Pokud se ale spokojíme jen s malým skóre, některé cizojazyčné
texty zase chybně prohlásíme za české. Jak tedy najít tu správnou míru, při které
bude co nejvíc textů klasifikováno správně?

Podobnou otázku řeší každodenně i člověk: „Jak moc indicií musím mít, abych
si začal být něčím jistý?” Přímočaré by tedy bylo nechat počítač rozhodnout
se podobným způsobem. Jenže tady narážíme na obtíž – lidé mají tuto
laťku nastavenu velmi různě. Na jedné straně jsou ti, kteří s Tomášem (Jan 20:25) nevěří
ničemu, dokud všechno neuvidí na vlastní oči. Například
V.K.:

Ptáte se, kolik environmentálních škod musím vidět, abych byl ochoten něco dělat? Problém je, že “nevidím” dostatečné a přesvědčivé důkazy škod, které, jak se domnívám, máte na mysli, a rád bych věděl, zda je skutečně vidíte, nebo zda jste o nich jen četl.

Druhým extrémem jsou ti, kterým je hned všechno jasné. V detektivce už na druhé straně vědí,
kdo je vrah, zato se ale častěji mohou splést. Příklad raději neuvedu, to
by mohlo vypadat, že člověk může být podle libosti extrémista na obě strany.

Který z těchto přístupů je lepší? Nastavit práh raději nízko, nebo vysoko?
Pro náš problém, naštěstí, pokud to situace dovolí, je nejlepší sestavit
testovací sadu textů, u kterých jsme ručně určili, kterým jazykem jsou psané,
a náš klasifikátor nastavit tak, aby měl co nejlepší výsledky na této sadě.
Tím se jakoby ze zkušenosti naučíme nastavit svůj práh tak, abychom se co
nejčastěji nějak rozhodli a zároveň neudělali moc chyb.

Zkušenost nám pomáhá zlepšovat naše rozhodnutí, ale jen pokud rozeznáme své chyby.