PV030 Textual Information Systems

Podobné dokumenty
PV030 Textual Information Systems

PV030 Textual Information Systems

Komprese dat (Komprimace dat)

Komprese dat. Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI. přednášky

Algoritmy komprese dat

Automaty a gramatiky(bi-aag) Formální překlady. 5. Překladové konečné automaty. h(ε) = ε, h(xa) = h(x)h(a), x, x T, a T.

Komprese dat. Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI. přednášky

Modely vyhledávání informací 4 podle technologie. 1) Booleovský model. George Boole Aplikace booleovské logiky

Automaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů

Algoritmy komprese dat

Inovace bakalářského studijního oboru Aplikovaná chemie

Úvod do teorie informace

NLP & strojové učení

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

Teorie informace: řešené příklady 2014 Tomáš Kroupa

Petr Nevrlý

Datové typy a struktury

Vyhledávání v textu. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava

Modely a sémantika. Petr Šaloun VŠB-Technická univerzita Ostrava FEI, katedra informatiky

AUTOMATY A GRAMATIKY

Uvod Modely n-tic Vyhodnocov an ı Vyhlazov an ı a stahov an ı Rozˇ s ıˇ ren ı model u n-tic Jazykov e modelov an ı Pavel Smrˇ z 27.

Vzdálenost jednoznačnosti a absolutně

Turingovy stroje. Teoretická informatika Tomáš Foltýnek

Výpočetní modely pro rozpoznávání bezkontextových jazyků zásobníkové automaty LL(k) a LR(k) analyzátory

Datové struktury 2: Rozptylovací tabulky

Dnešní téma. Oblasti standardizace v ICT. Oblasti standardizace v ICT. Oblasti standardizace v ICT

Formální jazyky a automaty Petr Šimeček

Vztah jazyků Chomskeho hierarchie a jazyků TS

Technická kybernetika. Obsah. Principy zobrazení, sběru a uchování dat. Měřicí řetězec. Principy zobrazení, sběru a uchování dat

Binární vyhledávací stromy pokročilé partie

P(w i w 1 w 2...w i 1 ) = P(w 1...w i ) P(w 1...w i ) = P(w 1 ) P(w 2 w 1 ) P(w 3 w 1 w 2 )... P(w i w 1...w i 1 ) slova w i

Kapitola 1. Signály a systémy. 1.1 Klasifikace signálů

Virtuální počítač. Uživatelský program Překladač programovacího jazyka Operační systém Interpret makroinstrukcí Procesor. PGS K.

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Informatika Datové formáty

Teorie informace II: obtížnější řešené příklady 2014 Tomáš Kroupa

Korpusová lingvistika a počítačové zpracování přirozeného jazyka

[1] samoopravné kódy: terminologie, princip

Teorie kódování aneb jak zhustit informaci

Algoritmy I. Číselné soustavy přečíst!!! ALGI 2018/19

Databáze I. 5. přednáška. Helena Palovská

Pumping lemma - podstata problému. Automaty a gramatiky(bi-aag) Pumping lemma - problem resolution. Pumping lemma - podstata problému

Kde a jak může být lineární algebra užitečná v praxi.

Kompresní techniky. David Bařina. 15. února David Bařina Kompresní techniky 15. února / 37

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.

Institut teoretické informatiky (ITI) na FI MU

Stručně o XML (výhody, nevýhody) Proč komprimovat XML? Metody komprese XML XMill. Optimalizace komprese XML. Závěr

Formální jazyky a gramatiky Teorie programovacích jazyků

AUTOMATY A GRAMATIKY. Pavel Surynek. Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně spočetné jazyky Kódování, enumerace

Matematika IV 10. týden Kódování

n-gramy Jazykové modely a textové korpusy n-gramy pokrač. Markovovy modely Obsah: se dostanou na trh... Jazykové modely Co to je korpus?

Korpusová lingvistika 2. Mgr. Dana Hlaváčková, Ph.D. CJBB105

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Pro každé formule α, β, γ, δ platí: Pro každé formule α, β, γ platí: Poznámka: Platí právě tehdy, když je tautologie.

Kurz pro studenty oboru Informační studia a knihovnictví 5. Informační architektura

Syntaxí řízený překlad

Kódy pro odstranění redundance, pro zabezpečení proti chybám. Demonstrační cvičení 5 INP

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je

MBI - technologická realizace modelu

PRODUKTY. Tovek Tools

Informace v počítači. Výpočetní technika I. Ing. Pavel Haluza ústav informatiky PEF MENDELU v Brně haluza@mendelu.cz

Korpusová lingvistika a počítačová lexikografie. Od 60. let 20. st.

Osnova přednášky. Informace v počítači. Interpretace dat. Údaje, data. Úvod do teorie informace. Výpočetní technika I. Ochrana dat

Komprese a dotazování nad XML dokumenty

Algoritmizace Dynamické programování. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

Databázové systémy. Doc.Ing.Miloš Koch,CSc.

Regulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto:

Dolování v objektových datech. Ivana Rudolfová

OSTRAVSKÁ UNIVERZITA V OSTRAVĚ PŘÍRODOVĚDECKÁ FAKULTA

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Kurz Databáze. Obsah. Návrh databáze E-R model. Datová analýza, tabulky a vazby. Doc. Ing. Radim Farana, CSc.

Dynamicky vázané metody. Pozdní vazba, virtuální metody

Deskripční logika. Petr Křemen FEL ČVUT. Petr Křemen (FEL ČVUT) Deskripční logika 37 / 157

Univerzita Karlova v Praze. Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE. Bc. Lukáš Unger. Vylepšení víceproudé komprese

Diferenˇcní rovnice Diferenciální rovnice Matematika IV Matematika IV Program

ZÁPADOČESKÁ UNIVERZITA V PLZNI

Množinu všech slov nad abecedou Σ značíme Σ * Množinu všech neprázdných slov Σ + Jazyk nad abecedou Σ je libovolná množina slov nad Σ

Funkcionální programování. Kristýna Kaslová

Analýza staročeské morfologie v Excelu

PA152. Implementace databázových systémů

ALGORITMIZACE A PROGRAMOVÁNÍ

Michal Krátký, Miroslav Beneš

InternetovéTechnologie

Konečný automat. Jan Kybic.

7. Rozdělení pravděpodobnosti ve statistice

Informační systémy ve zdravotnictví

Algoritmizace prostorových úloh

KOMPRESE OBRAZŮ. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. hlavac@fel.cvut.

Informatika Kódování. Obsah. Kód. Radim Farana Podklady předmětu Informatika pro akademický rok 2007/2008

Databázové a informační systémy

Dobývání znalostí z textů text mining

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

Oborové číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B. 1. úloha (4 body) Kolik existuje cest délky 4 v grafu K11? 2.

Petr Nevrlý

Jednoznačné a nejednoznačné gramatiky

Úvod do informatiky. Miroslav Kolařík

Teorie systémů TES 5. Znalostní systémy KMS

Výroková a predikátová logika - VIII

Informační systémy 2008/2009. Radim Farana. Obsah. Obsah předmětu. Požadavky kreditového systému. Relační datový model, Architektury databází

Transkript:

Faculty of Informatics Masaryk University, Brno Spring 2010

Osnova(Týden sedmý) Exkurs do počítačové lingvistiky. Korpusová lingvistika jako příklad TIS. Vyhledávací metody s předzpracování textu i vzorku(dotazu).

Vytváření rejstříku lemmatizace Využití morfologie při vytváření slovníku kmen/ kořen slova (učit, uč); program ajka (abin), http://nlp.fi.muni.cz/projekty/ajka/ příklady; technika vzorů pro určení kmene.

Vytváření rejstříku tezaurus Tezaurus slovník, obsahující hierarchické a asociativní vztahy a vztahy ekvivalence mezi jednotlivými termíny. Vazby mezi termíny/lemmaty: synonyna vazba na standardní termín (viz); vazba na příbuzný termín(viz také); RT related term; vazba na obecnější termín; BT broader term; vazbanaužšítermín; NT narrowerterm; hyperonyma (auto:dopravní prostředek); hyponyma (pták:sojka); meronymum (dveře:zámek); holonyma (ruka:tělo); antonyma (dobrý:zlý). Pes/Fík, Havel/president

Konstrukce tezauru ručně/ poloautomatizovaně heuristiky konstrukce tezauru: hierarchická struktura/y tezauru oborové tezaury, sémantika závislá kontextově(př. pole, strom v informatice) sdružování termínů s podobnou frekvencí vyloučení termínů s vysokou frekvencí šíře aplikací tezauru a lemmatizátoru: kromě indexování spelování, základ pro grammar checker, plnotextové vyhledávání. projekty WORDNET, EUROWORDNET module add wordnet; wn wn faculty -over -simsn -coorn

Hierarchický tezaurus Vytváření znalostní báze pro přesné vyhodnocení relevance dokumentů. topic zpracování sémantických map termínů. Visual Thesaurus http://www.visualthesaurus.com. Tovek Tools, Verity.

Tokenization Phrase queries Implementace indexových systémů Part I Exkurs do počítačové lingvistiky

Tokenization Phrase queries Implementace indexových systémů Počítačová lingvistika vyhledávání řetězců slova jsou řetězce písmen. slovotvorba morfologická analýza. gramatika (CFG, DFG) syntaktická analýza. význam vět(til) sémantická analýza. kontext pragmatická analýza. plné porozumění a schopnost komunikace informace.

Tokenization Phrase queries Implementace indexových systémů Corpus Query Procesor základní dotazy,,havel ; 45: Český prezident Václav <Havel> se včera na 89: jak řekl Václav <Havel>, každý občan 248: více než rokem <Havel> řekl Pravda vítězí regulární výrazy,,pravda pravda ;,,(P p)ravda ;,,(P p)ravd[a,u,o,y] ;,,pravd.* ;,,pravd.+ ;,,post?el ; posloupnost slov,,prezident(a u),,havl(a ovi) ;,,a tak ;,,prezident ;[]*,,Havel ;,,prezident (,,republiky,,vaclav )?,,Havel ;

Tokenization Phrase queries Implementace indexových systémů Corpus Query Procesor dotazy na poziˇcní atributy [word =,,Havel ]; [lemma =,,prezident ][]*[lemma =,,Havel ];...ženu prezidentahavla... [lemma =,,hnát ][][lemma =,,Havel ]; [word =,,žen(u eme) &lemma!=,,žena ]; I...or!... not nˇekteré další moˇznosti [lemma =,,prezident ][]*[lemma =,,Havel ] withins;...10, 3 s [lemma =,,Havel ] within 20 </s>,,pravda <s>a:[word=,,žena Muž Člověk ][]*[lemma = a.lemma]

Tokenization Phrase queries Implementace indexových systémů Rub a líc relevantního vyhledávání Velká výpočetní síla dnešních počítačů umožňuje: efektivní uložení velkého objemu textových dat(komprese, indexování); efektivní vyhledávání textových řetězců. To všechno využije člověk sedící za počítačem, aby z takto zpracovaných textů získal informace, které ho zajímají. Opravdu? Example: V textové databázi je uloženo několik posledních ročníků denního tisku. Rád bych získal informace o prezidentu Václavu Havlovi. a/>havel b/>přesnější dotazy c/...... Počítač člověk + = hodnotné (výpočetní síla) (inteligence) informace Cílemvšech je + čas + peníze přenést conejvětšíčást inteligence(času, peněz,...) napočítač.

Tokenization Phrase queries Implementace indexových systémů Rub a líc relevantního vyhledávání informace ideál ideálů ne Vyhledávání pragmatická analýza kontext ne informací Spravný semantická význam analýza vět TIL v začátcích Kontrola překlad syntaktická gramatika částečně pravopisu analýza CFG, DCG morfologická slovotvorba analýza lemma ano Kontrola Překlad jedn. slova jsou řetězce písmen řetězců vyhledávání ano

Tokenization Phrase queries Implementace indexových systémů Rub a líc získávání informací z přirozeného jazyka Víme opravdu, co je informace obsažená v textu v přirozeném jazyce? František Novák váží 100 kg. RDB objekt vlastnost hodnota atribut1, atribut2,... František Novák má rád pivo.? klíč hodnota František Novák má rád ր Janu Novotnou F. N. je starýpoctivec.? Jaro propuklo v plné síle. Slova přirozeného jazyka označují objekty, jejich vlastnosti a vztahy mezi nimi. Na slova a věty je možné pohlížet také jako na,,funkce svého druhu, definované významem. Textovou informaci (konkrétní objekty o nichž hovoříme, pragmatické informace,...) lzepakchápat jako,,výpočet těchtofunkcí. Tentovýpočetje pro nejednoznačnost často nepřesný nebo nemožný. Muž, který vystoupil na nejvyšší českou osmitisícovku, je můj vnuk.

Tokenization Phrase queries Implementace indexových systémů Korpusová lingvistika Korpus: elektronická kolekce textů, často indexovaná lingvistickými značkami. Korpus jako textový informační systém: korpusová lingvistika. BNC, PennTreebank,DESAM, PNK,...;rozsahyřád milionůaž miliard pozic(slov), speciální metody nutné. Korpusové manažery CQP, GCQP, Manatee/Bonito, http://www.fi.muni.cz/~pary/korp/. Vnitřní architektura a implementace korpusu. see [MAR].

Tokenization Phrase queries Implementace indexových systémů Co je korpus? Definition: Korpus je rozsáhlý, vnitřně strukturovaný ucelený soubor textů v přirozeném jazyce elektronicky uložený a zpracovatelný. Indiánské jazyky nemají písmo pro nalezení gramatiky potřeba nejprve sepsat mluvené slovo. 1967 1. korpusvu. S.A.(Kučera, Francis)1000000 slov. Noam Chomsky odmítá korpusy. Dnes masové rozšíření.

Korpusy na FI Tokenization Phrase queries Implementace indexových systémů WWW stránka Pavla Rychlého ( PARY) odkaz na základní informace. Bonito, Manatee. IMS CORPUS WORKBENCH sada nástrojů pro efektivní kódování, reprezentaci a dotazování nad velkými textovými soubory.

Tokenization Phrase queries Implementace indexových systémů Logický pohled na korpus Posloupnost slov na očíslovaných pozicích (první slovo, n-té slovo), kterým jsou přidány znaˇcky (přidávání značek nazývané znaˇckování korpusu). Značky nesou morfologické, gramatické a libovolné další údaje o daném slovu. To vede k obecnějšímu pojmu poziˇcních atributů, které jsou nejdůležitější značkovací typ. Atributy z této třídy mají hodnotu (řetězec) na každé korpusové pozici. Na každou z nich je navázáno jedno slovo textu jako základní a poziční atribut word. Kromě tohoto atributu mohou být s každou pozicí svázány další poziční atributy libovolného textu představující morfologické a jiné značky. Strukturální atributy věty, odstavce, nadpis, článek, SGML. POS2 POS1 LEMMA WORD český Českého prezident prezidenta vaclav Václava havel Havla dnes dnes 0 1 2 3 4 10 7

Tokenization Phrase queries Implementace indexových systémů Vnitřní architektura korpusu Dva klíčové pojmy interní reprezentace pozičních atributů jsou: Jednotná reprezentace: položky jsou pro všechny atributy zakódovány jako čísla typu integer, kde stejné hodnoty mají stejný číselný kód. Posloupnost položek je pak reprezentována jako posloupnost integerů. Interní reprezentací atributu word (stejně jako každého jiného poz. atributu) je array(0..p-1) of Integer,kdepje počet pozicvkorpusu. Invertovaný soubor: pro posloupnost čísel reprezentující posloupnost hodnot daného atributu je vytvořen invertovaný soubor. Tento soubor pro každou hodnotu(lépe kód hodnoty) obsahuje množinu výskytů položky v pozičním atributu. Inverzní soubor je potřebný pro vyhledávání, protože přímo ukazuje množinu výskytů dané položky, výskyty pak mohou být počítány v jednom kroku.

Tokenization Phrase queries Implementace indexových systémů Vnitřní architektura korpusu (pokr.) Soubor se zakódovanými hodnotami atributu i inverzní soubor mají pomocné indexové soubory. Pro soubor se zakódovanými hodnotami: První datovou strukturou je seznam poloˇzek či,,lexikon : ten obsahuje množinu rozdílných hodnot. Interně se jedná o množinu řetězců vyskytujících se v posloupnosti položek, kde znak Null (osmičkové 000) je vložen za každé slovo. Seznam položek už definuje kód pro každou položku, protože předpokládáme, že první položkavseznamumá kód0,následující 1 atd. Pro vyhledávání řetězce v našem seznamu je užitečné mít index na pozici zaˇcátku ˇretˇezce v tomto souboru. Tento index pro každý kód položky dává konverzi z kódu položky na relativní adresu (v bytech)vseznamupoložek...

Tokenization Phrase queries Implementace indexových systémů Vnitřní architektura korpusu (pokr.) Pro invertovaný soubor existují tři datové struktury: První je samostatný invertovaný soubor, který obsahuje množinu korpusových pozic. Druhýje index dotohotosouboru. Tentoindexvrací prokaždýkód položky vstupní bod náležící výskytu v inverzním souboru. Třetí je tabulka frekvence kódu položek, která dává pro každý kód položky číslo výskytu kódu v korpusu(které je samozřejmě stejné jako velikost množiny výskytů).

Tokenization Tokenization Phrase queries Implementace indexových systémů

Tokenization Phrase queries Implementace indexových systémů Definitions Word Astring ofcharacters as it appearsin thetext. Term A normalized word (case, morphology, spelling etc); an equivalence class of words. Token Aninstanceofaword or termoccurringin adocument. Type Aclass ofall tokenscontainingthesame character sequence.

Tokenization Phrase queries Implementace indexových systémů Arabic script example ك ت ا ب آ ت اب un b ā t i k /kitābun/ a book

Tokenization Phrase queries Implementace indexových systémů Does stemming improve effectiveness? In general, stemming increases effectiveness for some queries, and decreases effectiveness for others. Examples: operational AND research, operating AND system, operative AND dentistry Porter Stemmer equivalence class ( oper ): operate operating operates operation operative operatives operational

Tokenization Phrase queries Implementace indexových systémů Faster postings mergers: Skip pointers

Phrase queries Tokenization Phrase queries Implementace indexových systémů

Tokenization Phrase queries Implementace indexových systémů Vyhledávací metody IV. Předzpracování textu i vzorku(dotazu): drtivá většina dnešních TIS. Typy předzpracování: statistiky n-gramů(fragmentové indexy). speciální algoritmy pro zpracování indexů(kódování, komprese) a vyhodnocení relevance (PageRank u Google). využití metod zpracování přírozeného jazyka (morfologie, syntaktická analýza, sémantické databáze) a agregace informací z více zdrojů(systémy AnswerBus, START). signaturové metody.

Tokenization Phrase queries Implementace indexovy ch syste mu Sensitivity ya

Relevance Tokenization Phrase queries Implementace indexových systémů Definition: Relevance (odpovědi na dotaz) je míra rozsahu, kterým se vybraný dokument shoduje s požadavky na něj kladenými. Ideální odpověd skutečná odpověd Definition:Koeficient úplnostir(recall)r = m n,kdemje počet vybraných relevantních záznamů a n je počet všech relevantních záznamů v TIS. Definition:Koeficient pˇresnosti P (precision) P = m o,kdeoje počet všech vybraných záznamů dotazem. Chceme docílit maximum R ip, tradeoff. Standardníhodnoty: 80% prop, 20% pro R. Kombinaceúplnostiapřesnosti: koeficientf b = (b2 +1)PR b 2 P+R. (F 0 = P, F = R,při F 1 = F P a Rváženystejně).

Fragmentový index Tokenization Phrase queries Implementace indexových systémů Fragment ybd je v angličtině pouze ve slově molybden. Výhody: pevný slovník fragmentů, odpadají problémy s aktualizací. Nevýhody: závislost na jazyce a tématické oblasti, snížená přesnost vyhledávání.

Tokenization Phrase queries Implementace indexových systémů Osnova(Týden sedmý) Google jako příklad TIS. Brainstorming na Google. Google - historické poznámky. Google - architektura systému. Google - PageRank. Google File System. Implementace indexových systémů

Tokenization Phrase queries Implementace indexových systémů Goooooooooooooogle trocha historie Příklad anatomie globálního(hyper)textového informačního systému (www.google.com). 1997: google.stanford.edu, studenti Page a Brin 1998: jeden z mála kvalitních vyhledávacích strojů, jehož základní principy a architektura jsou aspoň v principech známy proto detailnější rozbor dle článku [GOO] http://www7.conf.au/programme/fullpapers/1921com1921.ht 2009: jednička v globálním vyhledávání Několik inovativních konceptů: PageRank, ukládání lokálního komprimovaného archívu, výpočet relevance z textů hypetextových odkazů, indexace PDF a dalších formátů, Google File System, Google Link...

Tokenization Phrase queries Implementace indexových systémů Goooooooooooooogle anatomie Anatomie systému. see [MAR] Několik inovativních konceptů: PageRank, ukládání lokálního komprimovaného archívu, výpočet relevance z textů hypetextových odkazů, indexace PDF, Google File System, Google Link... Anatomie systému. see [MAR]

Google: Relevance Tokenization Phrase queries Implementace indexových systémů Klíčové je určení relevance. Využití značek textu a typografie webu pro výpočet relevance termů dokumentu. Využití textu hypertextových odkazů na dokument odkazujících.

Google: PageRank Tokenization Phrase queries Implementace indexových systémů PageRank: objektivní míra důležitosti stránky na základě citační analýzy(vhodné pro utřídění odpovědí na dotaz, tedy určení relevance stránek). Necht nastránkuaukazujístránky,t 1,...,T n (citace), a necht 0 < d < 1. Necht C(A) je počet odkazůnastránce A, celkový počet stránek je m. PageRank PR(A) = (1 d) m +d ( PR(T1 ) C(T 1 ) +... PR(T ) n) C(T n ) PageRank se dá spočítat jednoduchým iterativním algoritmem (pro desítky milionů stránek za hodiny na běžném PC). PageRank je pravděpodobnostní rozdělení nad webovými stránkami. PageRank není jediným užitým faktorem, ale součinitel více faktorů. Motivace s náhodným surfařem, tlumicí faktor d, obvykle

Tokenization Phrase queries Implementace indexových systémů Datové struktury Google Uložení signatur souborů Uložení lexikonu Uložení seznamu hitů Google File System

Tokenization Phrase queries Implementace indexových systémů Implementace indexových systémů Invertovaný soubor indexový soubor s bitovým vektorem. Použití seznamu dokumentů ke každému klíčovému slovu. Souřadnicový systém s ukazateli[mel, obr. 4.18, strana 46]. Indexace korpusových textů: Finlib http://www.fi.muni.cz/~pary/dis.pdf see [MAR]. Použití Eliasových kódů pro komprimaci seznamu hitů.

Tokenization Phrase queries Implementace indexových systémů Implementace indexových systémů(pokr.) Efektivní uložení indexu/slovníku[lemmat]: packed trie, Patricia tree, a další stromové struktury. Syntactic neural network(s. M. Lucas: Rapid best-first retrieval from massive dictionaries, Pattern Recognition Letters 17, p. 1507 1512, 1996). Komerční implementace: Verity engine, webové vyhledávače většinousvůjklíč kúspěchuažna výjimkytají.

Tokenization Phrase queries Implementace indexových systémů Reprezentace slovníku KA I Článek M. Mohri: On Some Applications of Finite-State Automata Theory to Natural Language Processing see [MAR] Reprezentace slovníku konečným automatem. Nejednoznačnosti, sjednocení minimalizovaných deterministických automatů. Příklad: done,do.v3:pp done,done.a0 Morfologický slovník jako seznam dvojic[slovní tvar, lemma]. Kompaktace uložení datové struktury automatu(liang, 1983). Kompresní poměr až 1:20 při lineárním přístupu(vzhledem k délce slova).

Tokenization Phrase queries Implementace indexových systémů Reprezentace slovníku KA II Převodník(transducer) pro reprezentaci slovníku. Deterministický převodník s 1 výstupem (subsequential transducer) pro reprezentaci slovníku včetně jednoho řetězce na výstupu(informace o morfologii, dělení slov,...). Deterministický převodník s p výstupy(p subsequential transducer) pro reprezentaci slovníku včetně více ˇretězců na výstupu(víceznačnosti). Determinizace převodníku obecně neuskutečnitelná(třída deterministických převodníků s výstupem je vlastní podtřída nedeterministických převodníků); pro účely zpracování přirozeného jazyka však obvykle nenastává(nejsou zde cykly).

Tokenization Phrase queries Implementace indexových systémů Reprezentace slovníku KA III Přidání stavudo převodníkuodpovídajícího(w 1,w 2 ) bezporušení determiničnosti: nejprvestav pro(w 1,ε),paksvýsledným stavem konečnýstav s výstupem w 2. Efektivní metoda, rychlá, leč není minimální; existují minimalizační algoritmy, které vedou na prostorově úsporná řešení. Postup: rozdělení slovníku na části, vytvoření det. převodníků s p výstupy, jejich miminalizace, pak deterministické sjednocení převodníků a minimalizace výsledného. Další použití i při efektivní indexaci, rozpoznávání řeči, atd.

Tokenization Phrase queries Implementace indexových systémů Part I Exkurs do počítačové lingvistiky

Tokenization Phrase queries Implementace indexových systémů Osnova(Týden sedmý) Kódování. Entropie, redundance. Universální kódování celých čísel. Huffmanovo kódování. Adaptivní Huffmanovo kódování.

Tokenization Phrase queries Implementace indexových systémů Kódování základní pojmy Definition: Abeceda A je konečná neprázdná množina symbolů. Definition: Slovo(ˇretˇezec, zpráva) nad A je posloupnost symbolů z A. Definition: Prázdný ˇretˇezec ε je prázdná posloupnost symbolů. Množinuvšech neprázdnýchslov nad AznačímeA +. Definition:Kód Kje trojice (S,C,f), kdesje konečnámnožina zdrojových jednotek, C je konečná množina kódových jednotek, f : S C + je injektivnízobrazení. f lze rozšířitnas + C + : F(S 1 S 2...S k ) = f(s 1 )f(s 2 )...f(s k ). C + se někdynazývá kód.

Tokenization Phrase queries Implementace indexových systémů Základní vlastnosti kódů Definition:x C + je jednoznaˇcnˇedekódovatelný vzhledem kf, jestliže existuje maximálnějedna posloupnosty S + taková,že f(y) = x. Definition: Kód K = (S, C, f) je jednoznaˇcnˇe dekódovatelný jestliže jsou jednoznačnědekódovatelnévšechnyřetězyvc +. Definition: Kód se nazývá prefixový, jestliže žádné kódové slovo není prefixem jiného. Definition: Kód se nazývá sufixový, jestliže žádné kódové slovo není sufixem jiného. Definition: Kód se nazývá afixový, jestliže je prefixový i sufixový. Definition: Kód je úplný jestliže po přidání libovolného dalšího kódového slova vznikne kód, který není jednoznačně dekódovatelný.

Tokenization Phrase queries Implementace indexových systémů Základní vlastnosti kódů Definition: Blokový kód délky n je takový kód, při kterém všechna kódová slova mají délku n. Example: blokový? prefixový blokový prefixový, ale ne naopak. Definition:Kód K = (S,C,f) nazvemebinární,jestliže C = 2.

Tokenization Phrase queries Implementace indexových systémů Komprese a dekomprese Definition: Komprese (kódování), dekomprese (dekódování): Komprese (kódování) původní komprimovaná data data Dekomprese (dekódování) Definition: Kompresní pomˇer je poměr délky komprimovaných dat a délky původních dat. Example: Navrhněte binární prefixový kód pro desítkové číslice, jestliže se často vyskytují čísla 3 a 4,azřídka5a6.

Tokenization Phrase queries Implementace indexových systémů Entropie a redundance I Necht Y je náhodná proměnná s pravděpodobnostním rozdělením p(y) = P(Y = y). Pak matematické očekávání(střední hodnota) E(Y) = y Yyp(y). Necht S = {x 1,x 2,...,x n }množinazdrojových jednotekanecht pravděpodobnostvýskytu jednotkyx i vinformačním zdrojisje p i pro i = 1,...,n,n N. Definition:Entropieinformaˇcního obsahu jednotkyx i (míra množstvíinformace resp. neurčitosti)je H(x i ) = H i = log 2 p i bitů. Zdrojová jednotka s větší pravděpodobností nese méně informace.

Tokenization Phrase queries Implementace indexových systémů Entropie a redundance II Definition: Entropie informaˇcního zdroje S je H(S) = ( log 1 ). p(y) bitů. Platí,žeH(S) = p(y)log 1 p(y) = E y Y Definition:Entropiezdrojové zprávy X = x i1 x i2...x ik S + informaˇcního zdrojesje H(X,S) = H(X) = bitů. Definition: Délka l(x) zakódované zprávy X k k l(x) = f(x ij ) = d ij bitů. j=1 j=1 Theorem:l(X) H(X,S). k H i = j=1 n p i log 2 p i i=1 k log 2 p ij j=1

Tokenization Phrase queries Implementace indexových systémů Entropie a redundance III Axiomatické zavedení entropie see [MAR], detaily odvození viz ftp://www.math.muni.cz/pub/math/people/paseka/lectures/kodo k Definition:R(X) = l(x) H(X) = (d ij +log 2 p ij ) je redundance j=1 kódu Kpro zprávu X. Definition: Průmˇerná délka kódového slova kódu K je n AL(K) = p i d i bitů. i=1 Definition: Průmˇerná entropie zdroje S je n n AE(S) = p i H i = p i log 2 p i bitů. i=1 i=1 Definition: Průmˇerná redundance kódu K je n AR(K) = AL(K) AE(S) = p i (d i +log 2 p i ) bitů. i=1

Tokenization Phrase queries Implementace indexových systémů Entropie a redundance IV Definition: Kód je optimální, když má minimální redundanci. Definition: Kód je asymptoticky optimální, pokud pro dané rozložení pravděpodobností se poměr AL(K)/AE(S) blíží k 1, když se entropie blíží. Definition:Kód Kje universální,jestliže existují c 1,c 2 Rtak,že průměrnádélka kódovéhoslova AL(K) c 1 AE+c 2. Theorem:Universálníkódje asymptoticky optimální,jestliže c 1 = 1.

Tokenization Phrase queries Implementace indexových systémů Universální kódování celých čísel Definition: Fibonacciho posloupnost ˇrádu m F n = F n m +F n m+1 +...+F n 1 pron 1. Example:F řádu 2: F 1 = 0,,F 0 = 1, F 1 = 1, F 2 = 2,F 3 = 3,F 4 = 5, F 5 = 8,... Example:F řádu 3: F 2 = 0, F 1 = 0, F 0 = 1, F 1 = 1, F 2 = 2,F 3 = 4, F 4 = 7, F 5 = 13,... Example:F řádu 4: F 3 = 0, F 2 = 0, F 1 = 0, F 0 = 1, F 1 = 1, F 2 = 2, F 3 = 4,F 4 = 8,F 5 = 15,... Definition:Fibonaccihoreprezentace R(N) = k i=1 d if i,kde d i {0,1}, d k = 1 Theorem: Fibonacciho reprezentace není jednoznačná, existuje však taková,ževposloupnostid i je nejvýše m 1 posobějdoucích jedniček.

Fibonacciho kódy Tokenization Phrase queries Implementace indexových systémů Definition:Fibonaccihokód ˇrádu m FK m (N) = d 1 d 2...d k 1...1,kde }{{} m 1 krát d i jsoukoeficientyzpředchozívěty(jedničkyukončujíslovo). Example:R(32) = 0 1+0 2+1 3+0 5+1 8+0 13+1 21, tedy F(32) = 00101011. Theorem:FK(2) je prefixový,universální kódsc 1 = 2, c 2 = 3,tedynení asymptoticky optimální.

Tokenization Phrase queries Implementace indexových systémů Universální kódování celých čísel II asymptoticky optimální universální kód, c 1 = 1,doN = 514228jsou lepší Fibonacciho kódy řádu n(fk(n)). unárníkód α(n) = 00...01. }{{} N 1 binárníkód β(1) = 1,β(2N+j) = β(n)j,j=0,1. β není jednoznačně dekódovatelný (není prefixový). ternárníτ(n) = β(n)#. β (1) = ǫ,β (2N) = β (N)0,β (2N+1) = β (N)1,τ (N) = β (N)#. γ: každý bitβ (N)je vložen mezidvojici bitů zα( β(n) ). příklad: γ(6) = 01001 C γ = {γ(n) : N > 0} = (0{0,1}) 1 jeregulárníatedydekódovatelná konečným automatem.

Tokenization Phrase queries Implementace indexových systémů Universální kódování celých čísel III γ (N) = α( β(n) )β (N) stejnédélky (permutace bitůγ(n)), ale čitelnější C γ = {γ (N) : N > 0} = {0 k 1{0,1} k : k 0} neníregulárnía dekodér potřebuje čítač δ(n) = γ( β(n) )β (N) příklad: δ(4) = γ(3)00 = 01100 dekodér δ: δ(?) = 0011? ω: K := 0; while log 2 (N) > 0 do begink := β(n)k; N := log 2 (N) end.

Komprese dat úvod Kódování informace pro komunikační účely; komprese dat. Přes bouřlivý vývoj kapacit pro uložení dat stále nedostatek místa. Redundance konstrukce minimálně redundantního kódu. Modeldat: struktura sada jednotek ke komprimaci + kontext výskytů; parametry pravděpodobnost výskytu jednotlivých jednotek. Komprimace: 1 vytvoření modelu dat; 2 vlastní kódování.

Komprese dat vývoj 1838 Morse,kód edle četnosti. 1949 Shannon, Fano, Weaver. 1952 Huffman;5bitůnaznak. 1979 Ziv-Lempel; compress(roden, Welsh, Bell, Knuth, Miller, Wegman, Fiala,Green,...);4bityna znak. osmdesátá a devadesátá léta PPM, DMC, gzip(zlib), SAKDC; 2 3 bity/znak přelom tisíciletíbzip2;2bitynaznak....?

Vývoj kompresních algoritmů 6 5 Huffman Komprese (bitů na znak) 4 3 2 LZ78 LZ77 compress GZip DMC PPM SAKDC 1 1950 1960 1970 1980 1990 2000 rok

Predikce a modelování redundance(nestejnoměrná pravděpodobnost výskytu zdrojových jednotek) kodér, dekodér, model statické modelování(model nezávisí na konkrétních datech) semiadaptivní modelování (model závisí na datech, 2 průchody, nutnost přenosu modelu) adaptivní modelování(1. průchod, model vytvářen dynamicky u kodéra i dekodéra)

Predikce a modelování modely řádu 0 pravděpodobnosti izolovaných zdrojových jednotek(př. Morse, písmeno e) modely s konečným kontextem Markovovy modely, modely řádu n(př. Bach), P(a x 1 x 2...x n ) modely založené na konečných automatech synchronizační řetěz, nesynchronizační řetěz automat s konečným kontextem vhodné pro regulární jazyky, nevhodné pro bezkontextové jazyky,p(a q i )