model.tex
3.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[polish]{babel}
% \usepackage{tikz}
% \usetikzlibrary{conceptgraph}
\parindent 0pt
\parskip 4pt
% \newcommand{\tensor}{\otimes}
% \newcommand{\forward}{\operatorname{/}}
% \newcommand{\backward}{\operatorname{\backslash}}
% \newcommand{\both}{\mid}
% \newcommand{\plus}{\oplus}
% \newcommand{\zero}{0}
% \newcommand{\one}{1}
% \newcommand{\letin}[2]{{\bf let}\;#1\;{\bf in}\;#2}
% \newcommand{\caseof}[2]{{\bf case}\;#1\;{\bf of}\;#2}
% \newcommand{\emp}{{\bf emp}}
% \newcommand{\inl}{{\bf inl}}
% \newcommand{\inr}{{\bf inr}}
% \newcommand{\coord}[1]{{#1}^\star}
% \newcommand{\map}[2]{{\bf map}\;#1\;#2}
% \newcommand{\concat}[1]{{\bf concat}\;#1}
% \newcommand{\makeset}[1]{{\bf makeset}\;#1}
% \newcommand{\maketerm}[1]{{\bf maketerm}\;#1}
% \newcommand{\addlist}[2]{{\bf add}\;#1\;#2}
% \newcommand{\ana}[1]{{\bf ana}(#1)}
% \newcommand{\One}{\bullet}
\title{Model probabilistyczny guessera dla języka polskiego}
\author{Wojciech Jaworski}
%\date{}
\begin{document}
\maketitle
Zakładamy, że język jest rozkładem probabilistycznym na czwórkach (form,lemma,cat,interp),
czyli, że wystąpienia kolejnych słów w tekście są od siebie niezależne.
Interpretacja interp jest zbiorem tagów zgodnym a tagsetem SGJP.
Kategoria $cat \in \{ noun, adj, adv, verb, other \}$
Zakładamy też, że język jest poprawny, tzn. nie ma literówek, ani błędów gramatycznych.
Dysponujemy następującymi danymi:
\begin{itemize}
\item słownikiem gramatycznym S, czyli zbiorem czwórek, o których wiemy, że należą do języka;
\item zbiorem reguł, czyli zbiorem czwórek (fsuf,lsuf,cat,interp)
\item zbiorem wyjątków, czyli zbiorem czwórek, o których wiemy, że należą do języka, które nie są opisywane przez reguły
\item otagowaną listą frekwencyjną.
\end{itemize}
Reguła przyłożona do formy ucina fsuf i przykleja lsuf.
Celem jest aproksymacja wartości P(lemma,cat,interp|form).
Pytanie 1: $P((form,lemma,cat,interp) \in S)$
Pytanie 2: $P((form,lemma,cat,interp) \not\in S \wedge form \in S)$
Załóżmy, że reguły i wyjątki mają postać taką, że do danej formy można zaaplikować tylko jedną z nich
(dla żadnej reguły sufix nie jest podciągiem innego sufixu). Wtedy
\[P(lemma,cat,interp|form)\approx P(rule|form)=P(rule|fsuf)\]
(W powyższym drzewie sufixowym w każdym węźle mamy dowiązania do sufixów o jeden znak dłuższych oraz kategorię pozostałe traktową łącznie
Pytanie 3: Czy faktycznie zachodzi powyższa zależność? Jak zmierzyć podobieństwo?
Problem tu jest taki, że lista frekwencyjna jest zbyt mała by precyzyjnie określić p-stwo ok. 40000 reguł
\[P(rule|fsuf)=P(lsuf,cat,interp|fsuf)=P(fsuf|lsuf,cat,interp)\frac{P(lsuf,cat,interp)}{P(fsuf)}\]
$P(fsuf)$ jest prawdopodobieństwem tego, że do języka należy słowo o zadanym sufixie.
Można je oszacować za pomocą listy frekwencyjnej.
Zakładamy, że interp jest niezależne od lsuf, pod warunkiem określonego cat
$P(lsuf,cat,interp)=P(lsuf,cat)P(interp|lsuf,cat)=P(lsuf,cat)P(interp|cat)$
$P(lsuf,cat)$ i $P(interp|cat)$ można oszacować na podstawie listy frekwencyjnej.
$P(fsuf|lsuf,cat,interp)$ wynosi 0, gdy nie ma reguły postaci (fsuf,lsuf,cat,interp);
1, gdy jest dokładnie jedna reguła z (lsuf,cat,interp), a gdy jest ich więcej trzeba
oszacować z listy frekwencyjnej.
Pytanie 4: Czy powyższe przybliżenie jest poprawne, jak często jest więcej niż jedna reguła i ile wynoszą wówczas p-stwa?
Pytanie 5: Co zrobić z niejednoznacznymi interpretacjami?
Zadania poboczne: wytworzenie otagowanej listy frekwencyjnej, wytworzenie zbioru reguł, wskazanie, które reguły opisują sytuacje wyjątkowe.
Zadanie na przyszłość: reguły słowotwórstwa i ich interpretacja semantyczna.
\end{document}