Fulltextové hledání

Pro spolehlivé fulltextové vyhledávání se hodí lemmatizátor – komponenta, která umožní nacházet slova bez ohledu na to, v jakém tvaru se v textu vyskytují. Hledáte-li kurzy akcií, jistě budete rádi, když program najde i článek obsahující výraz vývoj kurzu akcií či jen akcie

Základním tvarem slova (lemmatem) se rozumí většinou 1. pád jednotného čísla, tedy např. akcie. U sloves se jako základní tvar chápe infinitiv, např. hledat. V některých jazycích však existují výjimky. Např. bulharština, kde infinitiv vůbec není, chápe jako základní tvar 1. os. jedn. čísla. Maďarština sice infinitiv má, ale jako lemma používá tvar 3. os. jedn. čísla.

Jazyková část

Základem celého řešení je stejně jako u korektoru překlepů formální popis morfologie, obohacený o další informace. Těmi jsou především slovní druhy a gramatické kategorie:

  • pád, číslo a rod pro podstatná jména
  • osoba, číslo, způsob, čas a vid pro slovesa
  • kategorie zájmen, číslovek, příslovcí či spojek

Nalézt základní tvar slova ale není tak jednoduché, jak by se mohlo na první pohled zdát. Kromě pravidelných tvarů slov je totiž potřeba řešit i různorodé alternace kořene, které se u řady českých slov vyskytují. Máme na mysli dvojice typu mráz-mrazu, stůl-stolu, Bůh-Bohu, brontosaurus-brontosauři, pelyněk-pelyňku, péct-peče, stonat-stůně, či dokonce případy jako hnát-ženu, Zeus-Dia, čest-cti apod., kde změna postihuje hned první písmeno slova. Podobné případy se vyskytují ve všech jazycích. I v poměrně jednoduché angličtině najdeme případy typu come-came, break-broken, či dokonce go-went.

Druhým problémem je homonymie. U řady tvarů slov není totiž jednoznačné, od kterého základu jsou odvozeny. Např. ženu může být odvozeno buď od slova žena (4. pád j. č.), nebo od slova hnát (1. os. j. č.), samotné slovo hnát může být sloveso označující pohyb, či podstatné jméno označující končetinu. Podobných případů je skutečně hodně, takže se nelze divit, když vám program kolikrát vrátí i více výsledků. Věřte však, že všechny jsou správné.

Programové řešení

Programové řešení je velmi úsporné. V češtině je více než 6,7 milionu tvarů slov, která jsou včetně všech morfologických informací vměstnáno do souboru o velikosti 1 MB. S trochou nadsázky můžeme říct, že nám stačí jeden bit na tři česká slova.

Dostupné funkce

  • Návrat základního tvaru slova.
  • Návrat všech morfologicky příbuzných tvarů daného slova.
  • Uživatelský slovník. 
  • Heuristiky pro automatickou lemmatizaci neznámých slov. 

V současnosti nabízíme podporu fulltextového vyhledávání pro mnoho jazyků (viz tabulka) a platforem. Chcete-li hledání učinit uživatelsky ještě příjemnější, doporučujeme vám další naši komponentu – Slovník synonym. Pro multilingvální hledání lze dále kombinovat s našimi překladovými technologiemi, pro hledání v audio a video souborech s řečovými technologiemi.

Reference

Možnosti morfologického hledání pro různé jazyky vyzkoušíte nejlépe v aplikacích Lingea Lexicon. Jejich hlavní využití však je ve vyhledávacích systémech různých produktů nebo firemních systémech.