Prečo má vyhľadávanie „ucet“ nájsť aj „účet“
Písať rýchlo a vynechať znamienko, o ktorom viete, že tam patrí, je bežné. Dobré vyhľadávanie dokumentov by Vás za to nemalo trestať — tu je zrozumiteľné vysvetlenie, ako to funguje, so skutočnými príkladmi v štyroch jazykoch.
Problém: jedno znamienko, dva spôsoby zápisu slova
Mnohé jazyky označujú písmeno dĺžňom, mäkčeňom, krúžkom alebo ligatúrou, aby zmenili jeho výslovnosť: á, é, ě, š, č, ř, ž, ů v češtine, ä, ö, ü, ß v nemčine, é, è, ç vo francúzštine, á, é, í, ó, ú, ñ v španielčine. Na klávesnici telefónu prepnutej do angličtiny alebo pri rýchlom písaní spamäti ľahko vynecháte znamienko: napíšete ucet hoci dokument v skutočnosti obsahuje účet, české slovo pre faktúru alebo účet. Pre vyhľadávací systém, ktorý presne porovnáva znaky, ide o dva odlišné reťazce a vyhľadávanie jedného nenájde dokument obsahujúci iba druhý.
Riešenie: zjednotenie diakritiky
Jednoducho povedané: pred porovnaním dvoch textov z oboch odstráňte diakritiku — dĺžne, mäkčene aj cedily — a porovnajte to, čo zostane. „Zjednotenie“ je odborný názov pre zjednodušenie písmena so znamienkom, ako je á na jeho základnú podobu, a. Robte to dôsledne so slovami, ktoré píšete, aj so slovami uloženými v indexe a ucet a účet sa stanú rovnakým vyhľadávaným výrazom bez ohľadu na to, ktorý ste zadali a ktorý je skutočne na strane. Ide o všeobecne zavedenú techniku textového vyhľadávania, nie o niečo špecifické pre jednu aplikáciu; rovnaký princíp stojí za tým, keď vyhľadávač nájde „cafe“, hoci stránka uvádza „café“.
Zjednotenie má aj nevýhodu, ktorú treba jasne pomenovať: pri hľadaní zhody považuje dva zápisy za rovnaké, takže občas sa zhoduje aj úplne iné slovo, ktoré sa náhodou zjednotí rovnakým spôsobom. Čeština má jasný príklad: smlouva (zmluva) a smlouvá (vyjednáva, slovesný tvar) sú odlišné slová, nie to isté slovo s pridaným dĺžňom — po odstránení diakritiky z oboch však vyhľadávanie jedného môže zobraziť aj dokument obsahujúci druhé. To je kompromis zjednotenia výmenou za to, že neprídete o skutočné zhody pre vynechané znamienko.
Ďalší problém: nemčina tvorí slová ich spájaním
Nemčina (a v menšej miere aj ostatné tu uvedené jazyky) tvorí dlhé zložené slová priamym spájaním kratších slov bez medzery. Výpoveď nájomnej zmluvy je Mietvertragskündigung, zložené z Mietvertrag (nájomná zmluva) a Kündigung (výpoveď), spojených spojovacím „s“. Vyhľadávací index, ktorý hľadá iba celé slová, nenájde Vertrag vnútri slova Mietvertragskündigung, hoci zmluva je presne to, čo hľadáte.
Spolu tu fungujú dve techniky, každá dôležitá z iného dôvodu. Prvou je zhoda začiatku slova: zadanie Vertrag nájde aj každé slovo, ktoré sa začína na Vertrag, a preto samo nájde Vertragsunterlagen (zmluvné podklady). To však nepomôže pri slove Mietvertragskündigung, pretože Vertrag nie je začiatkom tohto slova — tým je Miet . V takom prípade vyhľadávanie prejde na náhradné hľadanie zhody vnútri slova, ktoré skúsi až vtedy, keď zhoda začiatku nič nenájde. Práve táto možnosť umožní, aby sa Vertrag našlo kdekoľvek v zloženom slove, nielen na začiatku.
Príklady v štyroch jazykoch
- Čeština: zadanie ucet nájde účet (faktúra alebo účet); zadanie vyuctovani nájde vyúčtování (vyúčtovanie energií).
- Nemčina: zadanie Vertrag nájde Vertragsunterlagen; zadanie Grundstuck nájde Grundstück (pozemok).
- Francúzština: zadanie deces nájde décès (úmrtie, napríklad na úmrtnom liste); zadanie francais nájde français.
- Španielčina: zadanie camion nájde camión (nákladné auto); zadanie informacion nájde información.
Rovnaký princíp funguje aj opačne: ak diakritiku zadáte správne, vyhľadávanie stále nájde verziu dokumentu, v ktorej sa rozpoznala bez nej. To sa môže stať pri vyblednutom skene alebo keď rozpoznávanie prehliadne malé znamienko nad písmenom.
Nejde iba o to, ako píšete
Doteraz išlo o rozdiel medzi tým, čo píšete, a tým, čo obsahuje dokument. Existuje aj druhý, menej nápadný rozdiel, o ktorom je dobré vedieť: samotné rozpoznávanie textu neprečíta znamienko vždy správne. Vyblednutý sken, fotografia s nízkym rozlíšením alebo nezvyčajné písmo môžu sťažiť odlíšenie malého znamienka nad písmenom od škvrny či tieňa a rozpoznávanie ho môže vynechať, hoci človek by tú istú stranu prečítal bez problémov. Vtedy v rozpoznanom texte uloženom pri dokumente chýba diakritika bez ohľadu na to, ako starostlivo zadáte vyhľadávanie. Zjednotenie diakritiky pomáha aj tu rovnakým spôsobom: ak vyhľadávanie zjednotí aj text, s ktorým porovnáva, správne zadané účet stále nájde stranu, ktorej rozpoznaný text vyšiel ako ucet. Inými slovami, zjednotenie Vás chráni pred chybami na oboch stranách vyhľadávacieho poľa, nielen pred tými, ktoré môžete urobiť pri písaní.
Ako to používa vyhľadávanie Pocket Aurora Papers
Offline vyhľadávanie Pocket Aurora Papers zjednocuje diakritiku pri hľadaní zhody a vyhľadáva v dvoch krokoch: najprv hľadá začiatky slov a iba keď nič nenájde, prejde na hľadanie časti slova, vďaka čomu sa nájde aj slovo ukryté uprostred nemeckého zloženého slova. Oba kroky sa testujú na vyhľadávacom korpuse pokrývajúcom všetkých päť jazykov rozpoznávania: angličtinu, češtinu, nemčinu, francúzštinu a španielčinu. Prebieha úplne v zariadení, rovnako ako rozpoznávanie textu, vďaka ktorému sa dá v naskenovanej strane vôbec vyhľadávať. Vlastné rozhranie aplikácie je zatiaľ iba v angličtine; ostatným štyrom jazykom rozumie vyhľadávanie, nie ponuky a tlačidlá.
Chcete si ju vyskúšať?
Napíšeme Vám, keď bude čo vyskúšať, a pred vydaním sa opýtame, na čom Vám najviac záleží.