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.



Podobné dokumenty
Statistická teorie učení

Diskrétní matematika. DiM /01, zimní semestr 2016/2017

UČENÍ BEZ UČITELE. Václav Hlaváč

Algoritmy komprese dat

Pravděpodobnostní algoritmy

Vzdálenost jednoznačnosti a absolutně

Diskrétní matematika. DiM /01, zimní semestr 2018/2019

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Obsah přednášky Jaká asi bude chyba modelu na nových datech?

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

Implementace Bayesova kasifikátoru

Pravděpodobnost, náhoda, kostky

Automatická segmentace slov s pomocí nástroje Affisix. Michal@Hrusecky.net, Hlavacova@ufal.mff.cuni.cz

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Markovské metody pro modelování pravděpodobnosti

Pravděpodobnost, náhoda, kostky

Složitost algoritmů. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava

TECHNICKÁ UNIVERZITA V LIBERCI

Úvod do teorie informace

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

jevu, čas vyjmutí ze sledování byl T j, T j < X j a T j je náhodná veličina.

Téma 22. Ondřej Nývlt

Počítačové zpracování češtiny. Kontrola pravopisu. Daniel Zeman

Výběrové charakteristiky a jejich rozdělení

Vytěžování znalostí z dat

Použití mluvených korpusů ve vývoji systému pro rozpoznávání českých přednášek *

Matematické modelování Náhled do ekonometrie. Lukáš Frýd

PRAVDĚPODOBNOST A STATISTIKA

Pravděpodobnostní model významových zápisů vět

Náhodné jevy. Teorie pravděpodobnosti. Náhodné jevy. Operace s náhodnými jevy

Umělá inteligence II

Náhodné (statistické) chyby přímých měření

Rozdělování dat do trénovacích a testovacích množin

Odhady - Sdružené rozdělení pravděpodobnosti

Náhodné chyby přímých měření

ANALÝZA DAT V R 7. KONTINGENČNÍ TABULKA. Mgr. Markéta Pavlíková Katedra pravděpodobnosti a matematické statistiky MFF UK.

IB112 Základy matematiky

MKI Funkce f(z) má singularitu v bodě 0. a) Stanovte oblast, ve které konverguje hlavní část Laurentova rozvoje funkce f(z) v bodě 0.

Teorie informace. Mirko Navara. katedra kybernetiky FEL ČVUT Karlovo náměstí, budova G, místnost 104a navara/psi 3. 1.

Usuzování za neurčitosti

FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

Algoritmy a struktury neuropočítačů ASN P9 SVM Support vector machines Support vector networks (Algoritmus podpůrných vektorů)

7. Rozdělení pravděpodobnosti ve statistice

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

Neparametrické odhady hustoty pravděpodobnosti

EM algoritmus. Proč zahrnovat do modelu neznámé veličiny

Lineární algebra : Úvod a opakování

Cvičení ze statistiky - 9. Filip Děchtěrenko

Přednáška II. Vztah pravděpodobnosti, statistiky a biostatistiky

Úvod do praxe stínového řečníka. Automatické rozpoznávání řeči

1 Analytické metody durace a konvexita aktiva (dluhopisu) $)*

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

11. cvičení z PSI prosince hodnota pozorovaná četnost n i p X (i) = q i (1 q), i N 0.

Pravděpodobně skoro správné. PAC učení 1

1. Statistická analýza dat Jak vznikají informace Rozložení dat

Profilování vzorků heroinu s využitím vícerozměrné statistické analýzy

Markovské procesy. příklad: diabetický pacient, hladina inzulinu, léky, jídlo

PRAVDĚPODOBNOST A STATISTIKA

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

NLP & strojové učení

Teorie rozhodování (decision theory)

Komprese dat (Komprimace dat)

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

Úvod do predikátové logiky. (FLÚ AV ČR) Logika: CZ.1.07/2.2.00/ / 1

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

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

ROZPOZNÁVÁNÍ S MARKOVSKÝMI MODELY

2 Hlavní charakteristiky v analýze přežití

StatSoft Úvod do neuronových sítí

TVORBA JAZYKOVÉHO MODELU ZALOŽENÉHO NA TŘÍDÁCH

Tino Haderlein, Elmar Nöth

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

Západočeská univerzita v Plzni Fakulta aplikovaných věd Katedra kybernetiky Bakalářská práce

Lékařská biofyzika, výpočetní technika I. Biostatistika Josef Tvrdík (doc. Ing. CSc.)

Inženýrská statistika pak představuje soubor postupů a aplikací teoretických principů v oblasti inženýrské činnosti.

Odhad parametrů N(µ, σ 2 )

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

a způsoby jejího popisu Ing. Michael Rost, Ph.D.

oddělení Inteligentní Datové Analýzy (IDA)

Pravděpodobnost v závislosti na proměnné x je zde modelován pomocí logistického modelu. exp x. x x x. log 1

Poznámky k předmětu Aplikovaná statistika, 4. téma

Matematika III. 4. října Vysoká škola báňská - Technická univerzita Ostrava. Matematika III

Síla a významnost asociace mezi proměnnými v systému

Výběr báze. u n. a 1 u 1

Intuitivní pojem pravděpodobnosti

PRAVDĚPODOBNOST A STATISTIKA. Bayesovské odhady

( ) ( ) Binomické rozdělení. Předpoklady: 9209

Poznámky k předmětu Aplikovaná statistika, 4. téma

Bayesovské metody. Mnohorozměrná analýza dat

KGG/STG Statistika pro geografy

Diskrétní náhodná veličina. November 12, 2008

12. cvičení z PST. 20. prosince 2017

Testování hypotéz. 1. vymezení základních pojmů 2. testování hypotéz o rozdílu průměrů 3. jednovýběrový t-test

= = 2368

Základy teorie pravděpodobnosti

Stavový model a Kalmanův filtr

Kontingenční tabulky, korelační koeficienty

cv3.tex. Vzorec pro úplnou pravděpodobnost

Datové struktury 2: Rozptylovací tabulky

Limitní věty teorie pravděpodobnosti. Jiří Neubauer. Katedra ekonometrie, FVL, UO Brno kancelář 69a, tel

Transkript:

Jazykové modelování Pavel Smrž 27. listopadu 2006

Osnova 1 Úvod motivace, základní pojmy 2 Modely n-tic 3 Způsob vyhodnocování 4 Vyhlazování a stahování 5 Rozšíření modelů n-tic 6 Lingvisticky motivované modely

Motivace Úkol: předpovědět následující slovo na základě předchozích Použití: Rozpoznávání mluvené řeči Strojový překlad Obnovení diakritiky (doplnění háčků a čárek) Korektory pravopisu a gramatiky OCR rozpoznávání tištěného textu Rozpoznávání rukopisného textu Prediktivní psaní SMS Pravděpodobnostní syntaktická analýza Zjednoznačňování morfosyntaktických kategoríı Zjednoznačňování slovních významů Dlouhá historie Andrej A. Markov (1913) modelování řetězců znaků, Claude E. Shannon Shannonova hra (1951) odhad dalšího slova/písmene v textu

Základní pojmy Určujeme apriorní pravděpodobnost řetězců slov Vezmeme trénovací vzorek textových dat Použijeme statistickou inferenci bereme data (generovaná podle neznámého rozdělení pravděpodobnosti) a děláme závěry o tomto rozdělení Chceme se naučit rozdělení pravděpodobnosti, tj. funkci P takovou, že: P(x) = 1, P(x) 0 x V x V Obvykle předpokládáme, že trénovací vzorek je vybrán ze základního rozdělení pravděpodobnosti P, kterému se chceme pomocí P co nejvíce přibĺıžit.

Pravidlo zřetězení a Markovův předpoklad P(w 1, w 2,..., w n ) = P(w 1 START) P(w 2 START, w 1 ) P(w 3 START, w 1, w 2 )... P(w n START, w 1, w 2,..., w n 1) P(STOP START, w 1, w 2,..., w n 1, w n ) Markovův předpoklad nezávislosti další slovo záleží jen na k předchozích, např.: P(w i START, w 1, w 2,..., w i 1) = (w i w i 2, w i 1 ) Řád modelu na základě kolika předchozích slov (= historie) se rozhodujeme

Velikost modelů příklad Počet parametrů modelu předpokládejme slovník 50 000 slov (slovních tvarů): model 1. řádu dvojice 50 000 49 999 2, 5 10 9 model 2. řádu trojice 50 000 2 49 999 1, 25 10 14 model 3. řádu čtveřice 50 000 3 49 999 6, 25 10 18

Velikost modelů příklad Počet parametrů modelu předpokládejme slovník 50 000 slov (slovních tvarů): model 1. řádu dvojice 50 000 49 999 2, 5 10 9 model 2. řádu trojice 50 000 2 49 999 1, 25 10 14 model 3. řádu čtveřice 50 000 3 49 999 6, 25 10 18 Nejhorší případ počet různých n-tic je lineární vzhledem k velikosti korpusu

Velikost modelů příklad Počet parametrů modelu předpokládejme slovník 50 000 slov (slovních tvarů): model 1. řádu dvojice 50 000 49 999 2, 5 10 9 model 2. řádu trojice 50 000 2 49 999 1, 25 10 14 model 3. řádu čtveřice 50 000 3 49 999 6, 25 10 18 Nejhorší případ počet různých n-tic je lineární vzhledem k velikosti korpusu Reálný příklad 275 mil. slov z korpusu Gigaword různých slov 716 706 různých dvojic 12 537 755 různých trojic 22 174 483

Odhad největší věrohodnosti (MLE) MLE: P MLE (w i w 1 w 2... w i 1 ) = P MLE (w i w i n+1... w i 1 ) = C(w i n+1...w i ) Pj C(w i n+1...w i w j ) = C(w i n+1...w i ) C(w i n+1...w i 1 ) Vybíráme takové hodnoty parametrů, které dávají nejvyšší pravděpodobnost trénovacím datům (výskyt určité n-tice je brán jako náhodná proměnná s binominálním rozdělením, tzn. každá n-tice je nezávislá na dalších neplatí!!!)

Příklad unigramový model Trénovací množina: Honza má krásný velký byt Petr koupil krásný byt Franta koupil drahý nový byt Testovací věta: Franta koupil krásný velký byt Model M 0 : P(Honza) = 0,0714 P(má) = 0,0714 P(krásný) = 0,1429 P(velký) = 0,0714 P(byt) = 0,2143 P(Petr) = 0,0714 P(koupil) = 0,1429 P(Franta) = 0,0714 P(drahý) = 0,0714 P(nový) = 0,0714 P(S) = 0, 0714 0, 1429 0, 0714 0, 1429 0, 2143 = 0, 0000231 } {{ } } {{ } } {{ } } {{ } } {{ } Franta koupil krásný velký byt

Příklad bigramový model Model M 1 : P(má Honza) = 1, 0 P(krásný má) = 1, 0 P(velký krásný) = 0, 5 P(byt krásný) = 0, 5 P(byt velký) = 1, 0 P(koupil Petr) = 1, 0 P(krásný koupil) = 0, 5 P(drahý koupil) = 0, 5 P(koupil Franta) = 1, 0 P(nový drahý) = 1, 0 P(byt nový) = 1, 0 P(Franta START ) = 0, 333 P(Honza START ) = 1, 0 P(Petr START ) = 0, 333 P(S) = 0, 333 1, 0 0, 5 } {{ } }{{} }{{} Franta koupil krásný 0, 5 }{{} velký 1, 0 = 0, 0833 }{{} byt

Vyhodnocování Nejpřesnější vyhodnocování v konkrétních aplikacích (citlivost na změny stylu, tématu, žánru 2 mil. > 140 mil.) Často nevhodné nezávislý vývoj nutnost samostatného vyhodnocování jazykového modelu perplexita Dobrý model dává vysokou pravděpodobnost skutečnému textu Entropie (neuspořádanost) H(P) = x P(x) log 2 P(x)

Entropie (1) Entropie přes posloupnosti slov w 1,..., w n jazyka L: H(w 1,..., w n ) = W n 1 L P(W n 1 ) log 2 P(W n 1 ) Entropie na posloupnostech silně závisí na jejich délce Abychom získali rozumnou míru, počítáme entropii na slovo míru entropie průměrný počet bitů na slovo potřebný k optimálnímu zakódování testovacích dat 1 n H(w 1,..., w n ) = 1 P(W1 n ) log n 2 P(W1 n ) W1 n L

Entropie (2) Entropii pro jazyk L potom získáme, pokud uvážíme posloupnosti nekonečné délky: 1 H(L) = lim n n H(w 1,..., w n ) = lim 1 n n W n 1 L P(W n 1 ) log 2 P(W n 1 ) Tento vztah lze na základě Shannonovy-McMillanovy-Breimanovy věty zjednodušit: H(L) = lim n 1 n log 2 P(W n 1 ) Intuitivně pokud je posloupnost nekonečná, nemusíme sčítat přes všechny možné posloupnosti, nebot nekonečná posloupnost obsahuje všechny podposloupnosti

Entropie (3) V praxi neznáme skutečné rozdělení pravděpodobnosti P pro jazyk L, máme pouze model M Definujeme vzájemnou entropii H(P, M) = lim n 1 n log 2 M(W n 1 ) Dále nemáme nekonečné posloupnosti, jsme omezeni testovací množinou (pokud je dostatečně velká, vypočtená vzájemná entropie je dobrým odhadem skutečné vzájemné entropie) Perplexita průměrný počet variant v každém bodě PP(P, M) = 2 H(P,M)

Příklad perplexita pro bigramový model P(S) = 0, 333 } {{ } Franta 1, 0 0, 5 0, 5 }{{} }{{} koupil krásný }{{} velký 1, 0 = 0, 0833 }{{} byt H(P, M) = 1 5 log 2 P(S) = 1 5 (log 2 0, 333 + log } {{ } 2 1, 0 + log }{{} 2 0, 5 }{{} Franta koupil krásný + log 2 0, 5 + log }{{} 2 1, 0 ) }{{} velký byt = 0, 7173 PP(P, M) = 2 H(P,M) = 1, 6441

Motivační příklad pro vyhlazování a stahování Testovací věta S 2 : Franta koupil krásný nový byt

Motivační příklad pro vyhlazování a stahování Testovací věta S 2 : Franta koupil krásný nový byt Dvojice krásný nový nebyla v trénovacích datech: P MLE (nový krásný) = 0 P MLE (S 2 ) = 0 Dvě příčiny nulové pravděpodobnosti: V trénovacích datech nebylo dané slovo neznámá slova token UNKNOWN V trénovacích datech nebyla daná n-tice vyhlazování přiřadí se jim nějaká nízká pravděpodobnost a/nebo stahování k nižším modelům

Vyhlazování odečítáním konstanty Řešení snížit pravděpodobnost n-tic z trénovacích dat (a nechat ji pro neviděné ), tzn. vyhladit funkci pravděpodobnosti (nebudou 0) discounting, smoothing Vyhlazování přičítáním jedničky (Laplaceovo): P MLE (w i w 1 w 2... w i 1 ) = C(w i n+1... w i ) + 1 C(w i n+1... w i 1 ) + B Odpovídá případu, kdy jsou všechny n-tice stejně pravděpodobné Závislé na velikosti slovníku!!! Pro řídká data nad velkým slovníkem dává příliš velkou pravděpodobnost nepozorovaným n-ticím

Vyhlazování odečítáním konstanty Řešení snížit pravděpodobnost n-tic z trénovacích dat (a nechat ji pro neviděné ), tzn. vyhladit funkci pravděpodobnosti (nebudou 0) discounting, smoothing Vyhlazování přičítáním jedničky (Laplaceovo): P Lap (w i w 1 w 2... w i 1 ) = C(w i n+1... w i ) + 1 C(w i n+1... w i 1 ) + B Odpovídá případu, kdy jsou všechny n-tice stejně pravděpodobné Závislé na velikosti slovníku!!! Pro řídká data nad velkým slovníkem dává příliš velkou pravděpodobnost nepozorovaným n-ticím

Vyhlazování odečítáním konstanty reálný příklad Experimenty Churche a Galea (1991) 22 mil. trénovacích a 22 mil. testovacích slov, ze stejné oblasti počty dvojic: Četnost Skutečná četnost Očekávaná četnost v trénovacích v testovacích v testovacích datech datech datech (přičítání jedničky) 0 0,000027 0,000132 1 0,448 0,000274 2 1,25 0,000411 3 2,24 0,000548 4 3,23 0,000685 5 4,21 0,000822

Vyhlazování odečítáním konstanty hodnocení Nadhodnotili jsme neviděné (0, 000132 > 0, 000027), a protože je jich tak mnoho, sebrali nám příliš moc Pro řídká data nad velkým slovníkem dává příliš velkou pravděpodobnost nepozorovaným n-ticím Krichevski-Trofimov (přičítání 1/2): P KT (w i w 1 w 2... w i 1 ) = C(w i n+1... w i ) + 1 2 C(w i n+1... w i 1 ) + 1 2 B Hardy a Lidstone: P HL (w i w 1 w 2... w i 1 ) = C(w i n+1... w i ) + λ C(w i n+1... w i 1 ) + λb

Jeffreysův-Perksův odhad Jeffreysův-Perksův zákon lineární interpolace mezi MLE a uniformním rozdělením apriorní pravděpodobnosti odhad očekávané věrohodnosti P JP (w i w 1 w 2... w i 1 ) = µ C(w i n+1... w i ) N µ = N N+Bλ Vyhlazování na validačních datech + (1 µ) 1 B

Goodův-Turingův odhad I. J. Good a A. M. Turing chtěli rozlomit Enigmu... Good-Turing: n-tici, která se vyskytla r krát, bereme, jako by se vyskytla r krát: r = (r + 1) E(N r+1) E(N r ) Výborné výsledky pro málo frekventované, proto v praxi často: pro #(w 1,..., w n ) = r > 0 : P GT (w 1,..., w n ) = r N ; pro #(w 1,..., w n ) = 0 : P GT (w 1,..., w n ) = N 1 N 0 N r = (r + 1) S(r+1) S(r)

Modely založené na třídách slov n-tice, která se nevyskytla v trénovacích datech by měla dostat vyšší pravděpodobnost, pokud je složena z prvků, které jsou podobné prvkům vyskytujících se n-tic LM založené na třídách slov kombinace slov a značek tříd je méně než slov potřebujeme méně dat, máme menší modely výpočetně náročné, problematické určení počtu tříd, obtížně začlenitelné do dekodéru, lingvisticky motivované třídy vs. čistě statistický přístup morfologické třídy LSI pro nalezení sémantických tříd

Automaticky generované třídy slovo v 1 třídě Shlukovací algoritmus nemusí existovat snadná interpretace Například maximalizace průměrné vzájemné informace: ( ) P(c(wi ), c(w j )) arg max P(c(w i ), c(w j ))log {c} P(c(w i ))P(c(w j )) c(w i ),c(w j ) kde c(w i ) je třída i tého slova Spojení s modely n-tic slov P(w n w n 1 n N+1 ) = P(w n c n )P(c n c n 1 n N+1 ) kde c n je třída, do níž patří n té slovo a P(c n c n 1 n N+1 ) = C(cn n N+1 ) P(w n c n ) = C(w n) C(c n ) C(c n 1 n N+1 )

Automaticky generované třídy slovo v n třídách P(w n w n 1 n N+1 ) = c n P(w n c n )P(c n c n 1 n N+1 ) Spojení s modely n-tic slov pomocí lineární interpolace P(w h) = λ 0 P g (w h) + M λ m P c (w c(w), S)P m (c(w) c(h)) m=i kde w je dané slovo, P g je obecný jazykový model trénovaný na celém korpusu, h je historie n-tic, P m je jedna z M tříd, λ m je váha přiřazená každému modelu tak, že λ m = 1 (λ m > 0), P c je třída daná slovu unigramovým modelem a S je zdroj adaptačních dat použitý k trénování P c