Recent Changes · Search:

Functional Programming

Type Inference

Toss

  • (incorporates former Speagram)

Emacs

Kurs Pascala

Artificial General Intelligence

AI:

Algorithmic Game Theory: Prediction Markets (po polsku)

Programming in Java

kurs pracy w systemie Linux

Evolutionary Algorithms

Animation

Data Stores and Data Mining

Language Understanding

Systemy Inteligentnych Agentów

Przetwarzanie Języka Naturalnego

Programowanie Funkcjonalne

PmWiki

pmwiki.org

add user

edit SideBar

NLP.Gramatyki History

Hide minor edits - Show changes to output

May 06, 2007, at 03:29 AM by lukstafi - semantics
Changed lines 3-4 from:
''[Na marginesie: słÃ³w'' '''węzeł''' ''i'' '''wierzchołek''' ''używam zamiennie (tzn. używam pierwszego bo jest krótsze).]''
to:
''[Na marginesie: słÄ‚Å‚w'' '''węzeł''' ''i'' '''wierzchołek''' ''używam zamiennie (tzn. używam pierwszego bo jest krÄ‚Å‚tsze).]''
Changed lines 8-9 from:
Rozbiór zdania nie musi zatrzymywać się na poziomie słowa: dzięki automatycznemu podziałowi słowa na morfemy możemy zmniejszyć wielkość słownika, a nawet radzić sobie z nieznanymi słowami. Dla przykładu, system konwersacyjny może swobodnie zapytać użytkownika o znaczenie wyrazu, kiedy jego rola gramatyczna jest dzięki analizie w pełni określona i znane są wzorce odmiany.
to:
RozbiÄ‚Å‚r zdania nie musi zatrzymywać się na poziomie słowa: dzięki automatycznemu podziałowi słowa na morfemy możemy zmniejszyć wielkość słownika, a nawet radzić sobie z nieznanymi słowami. Dla przykładu, system konwersacyjny może swobodnie zapytać użytkownika o znaczenie wyrazu, kiedy jego rola gramatyczna jest dzięki analizie w pełni określona i znane są wzorce odmiany.
Changed lines 17-18 from:
Ogólnie o parsowaniu: [[http://www.cs.vu.nl/~dick/PTAPG.html | Parsing Techniques - A Practical Guide]]. Istotne hasła: metoda CYK, chart parsing, parsowanie top-down vs. bottom-up, Earley parser, metody LR.
to:
OgÄ‚Å‚lnie o parsowaniu: [[http://www.cs.vu.nl/~dick/PTAPG.html | Parsing Techniques - A Practical Guide]]. Istotne hasła: metoda CYK, chart parsing, parsowanie top-down vs. bottom-up, Earley parser, metody LR.
Changed lines 21-22 from:
[[http://www.cs.chalmers.se/~peb/pubs/p04-chart-pearl.pdf | Functional Pearls: Functional Chart Parsing of Context Free Grammars]]  by Peter Ljunglöf.
to:
[[http://www.cs.chalmers.se/~peb/pubs/p04-chart-pearl.pdf | Functional Pearls: Functional Chart Parsing of Context Free Grammars]]  by Peter LjunglÄ‚Å›f.
Changed lines 28-30 from:
!!! [[#unif]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie więzów)
Drzewa dowodów (proof trees) jako drzewa rozbioru dla gramatyk unifikacyjnych, zobacz [[http://www.ida.liu.se/~ulfni/lpp/ | Logic, Programming and Prolog (2ed)]] rozdz. 3.6. Oczywiście chcemy możliwie szybko odcinać błędne ścieżki wyprowadzeń, dlatego (jak w Prologu), od razu propagujemy rozwiązania generowanych równań. "Funkcję obliczeń" R wyznacza nam algorytm chart-parsera. (Rozdział 3.6 książki o Prologu mówi tylko o doklejaniu płytkich drzew odpowiadających produkcjom, u nas krawędzi z kropką na samym początku, ale idea przenosi się na doklejanie głębszych drzew. Pełne gramatyki unifikacyjne są opisane w rozdziale o "Definite Clause Grammars".)
to:
!!! [[#unif]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie więzÄ‚Å‚w)
Drzewa dowodÄ‚Å‚w (proof trees) jako drzewa rozbioru dla gramatyk unifikacyjnych, zobacz [[http://www.ida.liu.se/~ulfni/lpp/ | Logic, Programming and Prolog (2ed)]] rozdz. 3.6. Oczywiście chcemy możliwie szybko odcinać błędne ścieżki wyprowadzeń, dlatego (jak w Prologu), od razu propagujemy rozwiązania generowanych rÄ‚Å‚wnań. "Funkcję obliczeń" R wyznacza nam algorytm chart-parsera. (Rozdział 3.6 książki o Prologu mÄ‚Å‚wi tylko o doklejaniu płytkich drzew odpowiadających produkcjom, u nas krawędzi z kropką na samym początku, ale idea przenosi się na doklejanie głębszych drzew. Pełne gramatyki unifikacyjne są opisane w rozdziale o "Definite Clause Grammars".)
Changed lines 36-44 from:
# Dzielimy gramatykę na reguły leksykalne/słownikowe i pozostałe. Reguły leksykalne to te, których prawa strona rozpoczyna się od terminala (często będzie to tylko terminal). Tylko nieleksykalne reguły wstawiamy jako "pętelki" w każdą pozycję charta, reguły leksykalne grupujemy w słownik ze słÃ³w w zbiór reguł, i dla każdego słowa wstawiamy do charta przeskakujące to słowo krawędzie.

# Samo wstawianie "pętelek" do charta możemy potraktować leniwie: zgromadzić reguły nieleksykalne w słownik indeksowany (np.) przez część mowy (lub nazwę frazy) i w momencie wybierania z charta krawędzi do przedłużenia, dorzucić krawędzie odpowiadające regułom ze słownika dla potrzebnej części mowy. W ten sposób nie przeglądamy za każdym razem wszystkich reguł (nieleksykalnych).

# Można pokusić się o bardziej skomplikowane optymalizacje. Można badać klasy leksykalne (np. verb = transitive verb + intransitive verb), których derywacje z danej reguły wymagają / nie dopuszczają (tzn. klasy słÃ³w, które muszą / nie mogą się pojawić we frazie, której wyprowadzenia korzeniem jest dana reguła). Można skompilować gramatykę do bardziej wydajnej postaci (bardziej podobnej do postaci Greibach), ale w czasie parsowania rekonstruować drzewo rozbioru względem oryginalnej gramatyki.

!!!! [[#errdesc]] Pomysły na tłumaczenie błędów gramatycznych
Jeśli zdanie jest niepoprawne gramatycznie, to parsing kończy się bez krawędzi obejmujących całe zdanie. Szukamy (dynamicznie) ciągów krawędzi dających minimalne pokrycie rozłączne zdania (tzn. minimalną ilość krawędzi, po których można przeskoczyć z początku na koniec). Budujemy nowy chart, tylko z krawędzi z tych ciągów. Do standardowych reguł chart-parsera dodajemy następujące reguły obsługi błędów:
to:
# Dzielimy gramatykę na reguły leksykalne/słownikowe i pozostałe. Reguły leksykalne to te, ktÄ‚Å‚rych prawa strona rozpoczyna się od terminala (często będzie to tylko terminal). Tylko nieleksykalne reguły wstawiamy jako "pętelki" w każdą pozycję charta, reguły leksykalne grupujemy w słownik ze słÄ‚Å‚w w zbiÄ‚Å‚r reguł, i dla każdego słowa wstawiamy do charta przeskakujące to słowo krawędzie.

# Samo wstawianie "pętelek" do charta możemy potraktować leniwie: zgromadzić reguły nieleksykalne w słownik indeksowany (np.) przez część mowy (lub nazwę frazy) i w momencie wybierania z charta krawędzi do przedłużenia, dorzucić krawędzie odpowiadające regułom ze słownika dla potrzebnej części mowy. W ten sposÄ‚Å‚b nie przeglądamy za każdym razem wszystkich reguł (nieleksykalnych).

# Można pokusić się o bardziej skomplikowane optymalizacje. Można badać klasy leksykalne (np. verb = transitive verb + intransitive verb), ktÄ‚Å‚rych derywacje z danej reguły wymagają / nie dopuszczają (tzn. klasy słÄ‚Å‚w, ktÄ‚Å‚re muszą / nie mogą się pojawić we frazie, ktÄ‚Å‚rej wyprowadzenia korzeniem jest dana reguła). Można skompilować gramatykę do bardziej wydajnej postaci (bardziej podobnej do postaci Greibach), ale w czasie parsowania rekonstruować drzewo rozbioru względem oryginalnej gramatyki.

!!!! [[#errdesc]] Pomysły na tłumaczenie błędÄ‚Å‚w gramatycznych
Jeśli zdanie jest niepoprawne gramatycznie, to parsing kończy się bez krawędzi obejmujących całe zdanie. Szukamy (dynamicznie) ciągÄ‚Å‚w krawędzi dających minimalne pokrycie rozłączne zdania (tzn. minimalną ilość krawędzi, po ktÄ‚Å‚rych można przeskoczyć z początku na koniec). Budujemy nowy chart, tylko z krawędzi z tych ciągÄ‚Å‚w. Do standardowych reguł chart-parsera dodajemy następujące reguły obsługi błędÄ‚Å‚w:
Changed lines 51-53 from:
Nasyć chart przy pomocy poszerzonego zbioru reguł (poszerz odpowiednio używany algorytm parsowania). Zwróć użytkownikowi drzewa rozbioru odpowiadające krawędziom obejmującym całe zdanie wyprowadzone z minimalną ilością zastosowań reguł obsługi błędów, razem z zapamiętanymi komentarzami.

!!! [[#speagram]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: trochę ogólniejsze gramatyki struktur frazowych
to:
Nasyć chart przy pomocy poszerzonego zbioru reguł (poszerz odpowiednio używany algorytm parsowania). ZwrÄ‚Å‚ć użytkownikowi drzewa rozbioru odpowiadające krawędziom obejmującym całe zdanie wyprowadzone z minimalną ilością zastosowań reguł obsługi błędÄ‚Å‚w, razem z zapamiętanymi komentarzami.

!!! [[#speagram]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: trochę ogÄ‚Å‚lniejsze gramatyki struktur frazowych
Changed lines 57-58 from:
Po lewej stronie produkcji, wstawiamy term A opisuj&#261;cy w&#322;asno&#347;ci drzewa rozbioru z korzeniem wyprowadzonym z tej produkcji, zale&#380;ne od w&#322;asno&#347;ci poddrzew. Po prawej stronie produkcji, zamiast nieterminali wstawiamy term A'_i_' opisuj&#261;cy interesuj&#261;ce nas w&#322;asno&#347;ci, oraz relacj&#281; R'_i_', w której term B opisuj&#261;cy potencjalne poddrzewo rozbioru ma by&#263; wzgl&#281;dem termu A'_i_'. Trzy rodzaje relacji wydaj&#261; si&#281; rozs&#261;dne, w &#380;argonie j&#281;zyków programowania nazywaj&#261; si&#281; one: "pozycja inwariantna" (=), "pozycja kowariantna" (<), "pozycja kontrawariantna" (>). Buduj&#261;c drzewo rozbioru zdania pilnujemy niesprzeczno&#347;ci wymaga&#324;. Przyk&#322;ady (''italik&#261;'' oznaczone s&#261; terminale, a znakiem zapytania zmienne w termach w&#322;asno&#347;ci, tzn. w typach):
to:
Po lewej stronie produkcji, wstawiamy term A opisuj&#261;cy w&#322;asno&#347;ci drzewa rozbioru z korzeniem wyprowadzonym z tej produkcji, zale&#380;ne od w&#322;asno&#347;ci poddrzew. Po prawej stronie produkcji, zamiast nieterminali wstawiamy term A'_i_' opisuj&#261;cy interesuj&#261;ce nas w&#322;asno&#347;ci, oraz relacj&#281; R'_i_', w ktĂłrej term B opisuj&#261;cy potencjalne poddrzewo rozbioru ma by&#263; wzgl&#281;dem termu A'_i_'. Trzy rodzaje relacji wydaj&#261; si&#281; rozs&#261;dne, w &#380;argonie j&#281;zykĂłw programowania nazywaj&#261; si&#281; one: "pozycja inwariantna" (=), "pozycja kowariantna" (<), "pozycja kontrawariantna" (>). Buduj&#261;c drzewo rozbioru zdania pilnujemy niesprzeczno&#347;ci wymaga&#324;. Przyk&#322;ady (''italik&#261;'' oznaczone s&#261; terminale, a znakiem zapytania zmienne w termach w&#322;asno&#347;ci, tzn. w typach):
Changed lines 61-62 from:
z przedchodnio&#347;ci, ta produkcja jest równowa&#380;na nast&#281;puj&#261;cym:
to:
z przedchodnio&#347;ci, ta produkcja jest rĂłwnowa&#380;na nast&#281;puj&#261;cym:
Changed lines 66-67 from:
Konstrukcja z j&#281;zyków programowania. [@ let X be Y @] oznacza, &#380;e @@X@@ oblicza si&#281; do @@Y@@. &#379;eby to by&#322;o dopuszczalne, @@Y@@ki musz&#261; by&#263; @@X@@ami, tzn. typ @@Y@@ka musi by&#263; podtypem @@X@@a.
to:
Konstrukcja z j&#281;zykĂłw programowania. [@ let X be Y @] oznacza, &#380;e @@X@@ oblicza si&#281; do @@Y@@. &#379;eby to by&#322;o dopuszczalne, @@Y@@ki musz&#261; by&#263; @@X@@ami, tzn. typ @@Y@@ka musi by&#263; podtypem @@X@@a.
Changed lines 71-73 from:
Przymiotnik opisuj&#261;cy fraz&#281; rzeczownikow&#261; mo&#380;e mie&#263; typ ogólniejszy ni&#380; ta fraza, na przyk&#322;ad mo&#380;e by&#263; rodzaju m&#281;skiego [@gender=m@], który jest nadtypem rodzajów @@m1@@, @@m2@@ i @@m3@@.

to:
Przymiotnik opisuj&#261;cy fraz&#281; rzeczownikow&#261; mo&#380;e mie&#263; typ ogĂłlniejszy ni&#380; ta fraza, na przyk&#322;ad mo&#380;e by&#263; rodzaju m&#281;skiego [@gender=m@], ktĂłry jest nadtypem rodzajĂłw @@m1@@, @@m2@@ i @@m3@@.

Changed lines 77-78 from:
S&#261; dwie mo&#380;liwe interpretacje etykiet brakuj&#261;cych w opisie: sensowna formalnie interpretacja abstrakcyjna oraz praktyczna interpretacja polimorficzna. Interpretacja abstrakcyjna pod niewyspecyfikowane warto&#347;ci etykiet podstawia @@Top@@, a interpretacja polimorficzna ignoruje etykiety nie wyst&#281;puj&#261;ce jednocze&#347;nie po obu stronach porównania. W interpretacji abstrakcyjnej [@ NP[number=singular] @] oznacza zbiór wszystkich fraz rzeczownikowych w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest &#347;ci&#347;le konkretniejszy od tego typu), a w interpretacji polimorficznej [@ NP[number=singular] @] oznacza pewn&#261; fraz&#281; rzeczownikow&#261; w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest i konkretniejszy i ogólniejszy od tego typu). Interpretacja polimorficzna okazuje si&#281; by&#263; wygodniejsza przy pisaniu gramatyk, ''It doesn't work in theory, but it works in practice...'' (Obecnie mamy w Speagramie interpretacj&#281; polimorficzn&#261;.)
to:
S&#261; dwie mo&#380;liwe interpretacje etykiet brakuj&#261;cych w opisie: sensowna formalnie interpretacja abstrakcyjna oraz praktyczna interpretacja polimorficzna. Interpretacja abstrakcyjna pod niewyspecyfikowane warto&#347;ci etykiet podstawia @@Top@@, a interpretacja polimorficzna ignoruje etykiety nie wyst&#281;puj&#261;ce jednocze&#347;nie po obu stronach porĂłwnania. W interpretacji abstrakcyjnej [@ NP[number=singular] @] oznacza zbiĂłr wszystkich fraz rzeczownikowych w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest &#347;ci&#347;le konkretniejszy od tego typu), a w interpretacji polimorficznej [@ NP[number=singular] @] oznacza pewn&#261; fraz&#281; rzeczownikow&#261; w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest i konkretniejszy i ogĂłlniejszy od tego typu). Interpretacja polimorficzna okazuje si&#281; by&#263; wygodniejsza przy pisaniu gramatyk, ''It doesn't work in theory, but it works in practice...'' (Obecnie mamy w Speagramie interpretacj&#281; polimorficzn&#261;.)
Changed lines 97-100 from:
HPSG przypisuje frazom -- pocz&#261;wszy od s&#322;ów po ca&#322;e zdania -- struktury atrybutowe (feature-structures) zawieraj&#261;ce bardzo bogat&#261; informacj&#281;: fono/morfologiczn&#261;, syntaktyczn&#261; i semantyczn&#261;. HPSG sk&#322;ada si&#281; ze s&#322;ownika, zawieraj&#261;cego struktury atrybutowe dla poszczególnych s&#322;ów j&#281;zyka, oraz bardzo niewielu schematów regu&#322;. Do HPSG mo&#380;na stosowa&#263; chart-parsery: wype&#322;nia si&#281; chart przez struktury atrybutowe s&#322;ów zdania i nast&#281;pnie stosuje schematy regu&#322; do konstrukcji/przekszta&#322;cania kraw&#281;dzi charta. Od "zwyk&#322;ych" gramatyk unifikacyjnych (tzn. CFG + struktury atrybutowe) HPSG ró&#380;ni si&#281; wi&#281;c tym, &#380;e produkcje nie s&#261; dane jawnie, tylko wydobywane ze struktur atrybutowych przez schematy regu&#322;.

HPSG jest niederywacyjna (deklaratywna): zupe&#322;nie nieistotne jest, w jaki sposób skonstruowali&#347;my struktur&#281; atrybutow&#261; dla zdania, ta struktura zawiera ca&#322;&#261; potrzebn&#261; informacj&#281;, oraz nietransformacyjna: struktury atrybutowe nie s&#261; modyfikowane, tylko &#322;&#261;czone w wi&#281;ksze struktury przez unifikacj&#281;. Dlatego HPSG mo&#380;na te&#380; parsowa&#263; "czysto wi&#281;zowo" tak jak gramatyki zale&#380;no&#347;ci ([[#p4 | dependency grammars]]).
to:
HPSG przypisuje frazom -- pocz&#261;wszy od s&#322;Ăłw po ca&#322;e zdania -- struktury atrybutowe (feature-structures) zawieraj&#261;ce bardzo bogat&#261; informacj&#281;: fono/morfologiczn&#261;, syntaktyczn&#261; i semantyczn&#261;. HPSG sk&#322;ada si&#281; ze s&#322;ownika, zawieraj&#261;cego struktury atrybutowe dla poszczegĂłlnych s&#322;Ăłw j&#281;zyka, oraz bardzo niewielu schematĂłw regu&#322;. Do HPSG mo&#380;na stosowa&#263; chart-parsery: wype&#322;nia si&#281; chart przez struktury atrybutowe s&#322;Ăłw zdania i nast&#281;pnie stosuje schematy regu&#322; do konstrukcji/przekszta&#322;cania kraw&#281;dzi charta. Od "zwyk&#322;ych" gramatyk unifikacyjnych (tzn. CFG + struktury atrybutowe) HPSG rĂł&#380;ni si&#281; wi&#281;c tym, &#380;e produkcje nie s&#261; dane jawnie, tylko wydobywane ze struktur atrybutowych przez schematy regu&#322;.

HPSG jest niederywacyjna (deklaratywna): zupe&#322;nie nieistotne jest, w jaki sposĂłb skonstruowali&#347;my struktur&#281; atrybutow&#261; dla zdania, ta struktura zawiera ca&#322;&#261; potrzebn&#261; informacj&#281;, oraz nietransformacyjna: struktury atrybutowe nie s&#261; modyfikowane, tylko &#322;&#261;czone w wi&#281;ksze struktury przez unifikacj&#281;. Dlatego HPSG mo&#380;na te&#380; parsowa&#263; "czysto wi&#281;zowo" tak jak gramatyki zale&#380;no&#347;ci ([[#p4 | dependency grammars]]).
Changed lines 108-109 from:
[[http://www.cis.upenn.edu/~xtag/tech-report/node5.html | Atrybutowe leksykalne TAGs]] ([[http://www.cis.upenn.edu/~xtag/ | strona g&#322;ówna projektu xTAG]])
to:
[[http://www.cis.upenn.edu/~xtag/tech-report/node5.html | Atrybutowe leksykalne TAGs]] ([[http://www.cis.upenn.edu/~xtag/ | strona g&#322;Ä‚Å‚wna projektu xTAG]])
Changed lines 111-112 from:
Gramatyki kategorialne s&#261; równie&#380; formalizmem leksykalnym. Ze s&#322;owami zwi&#261;zane s&#261; kategorie (typy), które ilustruj&#261; sposób, w jaki s&#322;owa i frazy &#322;&#261;cz&#261; si&#281; (kombinuj&#261;) ze sob&#261; tworz&#261;c wi&#281;ksze frazy. Regu&#322;y zwyk&#322;ych gramatyk kategorialnych (CG, równowa&#380;nych CFG) to:
to:
Gramatyki kategorialne s&#261; rĂłwnie&#380; formalizmem leksykalnym. Ze s&#322;owami zwi&#261;zane s&#261; kategorie (typy), ktĂłre ilustruj&#261; sposĂłb, w jaki s&#322;owa i frazy &#322;&#261;cz&#261; si&#281; (kombinuj&#261;) ze sob&#261; tworz&#261;c wi&#281;ksze frazy. Regu&#322;y zwyk&#322;ych gramatyk kategorialnych (CG, rĂłwnowa&#380;nych CFG) to:
Changed lines 129-132 from:
Wielomodalne CCG maj&#261; annotacje na uko&#347;nikach mówi&#261;ce, które regu&#322;y mo&#380;na do danej kategorii z&#322;o&#380;onej stosowa&#263;.  Kategorie mog&#261; by&#263; indeksowane strukturami atrybutowymi, które s&#261; unifikowane pomi&#281;dzy kategoriami, które ze sob&#261; kombinuj&#261; (tzn. unifikowane s&#261; struktury atrybutowe które sta&#322;yby przy wyst&#261;pieniach @@Y@@ w powy&#380;szych regu&#322;ach); wynikowe podstawienie jest stosowane do wszystkich struktur w danej derywacji. Ca&#322;e kategorie te&#380; mog&#261; by&#263; zmiennymi.

Do parsowania CCG u&#380;ywa si&#281; chart-parserów, ka&#380;dej spo&#347;ród powy&#380;szych regu&#322; odpowiada regu&#322;a dodawania kraw&#281;dzi do charta.
to:
Wielomodalne CCG maj&#261; annotacje na uko&#347;nikach mÄ‚Å‚wi&#261;ce, ktÄ‚Å‚re regu&#322;y mo&#380;na do danej kategorii z&#322;o&#380;onej stosowa&#263;.  Kategorie mog&#261; by&#263; indeksowane strukturami atrybutowymi, ktÄ‚Å‚re s&#261; unifikowane pomi&#281;dzy kategoriami, ktÄ‚Å‚re ze sob&#261; kombinuj&#261; (tzn. unifikowane s&#261; struktury atrybutowe ktÄ‚Å‚re sta&#322;yby przy wyst&#261;pieniach @@Y@@ w powy&#380;szych regu&#322;ach); wynikowe podstawienie jest stosowane do wszystkich struktur w danej derywacji. Ca&#322;e kategorie te&#380; mog&#261; by&#263; zmiennymi.

Do parsowania CCG u&#380;ywa si&#281; chart-parserĂłw, ka&#380;dej spo&#347;rĂłd powy&#380;szych regu&#322; odpowiada regu&#322;a dodawania kraw&#281;dzi do charta.
Changed lines 138-139 from:
Parsowanie dla gramatyk struktur frazowych istotnie wykorzystuje kolejno&#347;&#263; w&#281;z&#322;ów drzewa. Nie jest to korzystne w przypadku j&#281;zyków o zdaniach ze swobodnym szykiem. Szyk wyrazów nie musi by&#263; istotnym elementem sk&#322;adni: mo&#380;emy rozpatrywa&#263; przynale&#380;no&#347;&#263; do j&#281;zyka modulo permutacja s&#322;ów zdania. Aby parsowa&#263; z pomini&#281;ciem szyku, nale&#380;y znale&#378;&#263; jaki&#347; odpowiednik programowania dynamicznego, który pozwoli inkrementacyjnie budowa&#263; drzewo rozbioru. Ogólnych metod rozwi&#261;zywania problemów o naturze kombinatorycznej dostarcza ''programowanie wi&#281;zów''. Pierwszym j&#281;zykiem programowania wi&#281;zów by&#322; Prolog, ale obecne j&#281;zyki / techniki programowania wi&#281;zów s&#261; skuteczniejsze, zaopatrzone w bogatsze logiki i wydajniejsze mechanizmy (dziedziny). Jak widzieli&#347;my ju&#380; wcze&#347;niej, parsery gramatyk unifikacyjnych buduj&#261; drzewo oblicze&#324; (gramatyki potraktowanej jako) program w Prologu, przyci&#281;te przez algorytm dynamiczny wi&#261;&#380;&#261;cy porz&#261;dek (liniowy) w&#281;z&#322;ów drzewa z porz&#261;dkiem s&#322;ów zdania. Nasz obecny pomys&#322; na parsowanie, to pomini&#281;cie "przycinania z zewn&#261;trz", ale wykorzystanie wspó&#322;czesnych technik programowania wi&#281;zów.
to:
Parsowanie dla gramatyk struktur frazowych istotnie wykorzystuje kolejno&#347;&#263; w&#281;z&#322;Ăłw drzewa. Nie jest to korzystne w przypadku j&#281;zykĂłw o zdaniach ze swobodnym szykiem. Szyk wyrazĂłw nie musi by&#263; istotnym elementem sk&#322;adni: mo&#380;emy rozpatrywa&#263; przynale&#380;no&#347;&#263; do j&#281;zyka modulo permutacja s&#322;Ăłw zdania. Aby parsowa&#263; z pomini&#281;ciem szyku, nale&#380;y znale&#378;&#263; jaki&#347; odpowiednik programowania dynamicznego, ktĂłry pozwoli inkrementacyjnie budowa&#263; drzewo rozbioru. OgĂłlnych metod rozwi&#261;zywania problemĂłw o naturze kombinatorycznej dostarcza ''programowanie wi&#281;zĂłw''. Pierwszym j&#281;zykiem programowania wi&#281;zĂłw by&#322; Prolog, ale obecne j&#281;zyki / techniki programowania wi&#281;zĂłw s&#261; skuteczniejsze, zaopatrzone w bogatsze logiki i wydajniejsze mechanizmy (dziedziny). Jak widzieli&#347;my ju&#380; wcze&#347;niej, parsery gramatyk unifikacyjnych buduj&#261; drzewo oblicze&#324; (gramatyki potraktowanej jako) program w Prologu, przyci&#281;te przez algorytm dynamiczny wi&#261;&#380;&#261;cy porz&#261;dek (liniowy) w&#281;z&#322;Ăłw drzewa z porz&#261;dkiem s&#322;Ăłw zdania. Nasz obecny pomys&#322; na parsowanie, to pomini&#281;cie "przycinania z zewn&#261;trz", ale wykorzystanie wspĂł&#322;czesnych technik programowania wi&#281;zĂłw.
Changed lines 141-144 from:
Aby zaprogramowa&#263; ca&#322;e parsowanie jako problem rozwi&#261;zywania wi&#281;zów, potrzebujemy reprezentowa&#263; dowolne drzewo rozbioru w dziedzinie wi&#281;zów, której u&#380;ywamy. Reprezentowa&#263; dowolne drzewo o li&#347;ciach b&#281;d&#261;cych s&#322;owami ustalonego zdania jest trudno -- jest ich niesko&#324;czenie wiele. Musimy wi&#281;c ograniczy&#263; ilo&#347;&#263; w&#281;z&#322;ów wewn&#281;trznych nie posiadaj&#261;cych rozga&#322;&#281;zie&#324;. Najpro&#347;ciej jest wykluczy&#263; takie w&#281;z&#322;y. Zauwa&#380;my, &#380;e wtedy w&#281;z&#322;ów wewn&#281;trznych jest o jeden mniej ni&#380; li&#347;ci, mo&#380;emy wi&#281;c ka&#380;demu w&#281;z&#322;owi wewn&#281;trznemu przyporz&#261;dkowa&#263; li&#347;&#263;. Mi&#322;o by&#322;oby, gdyby sama gramatyka z ka&#380;dym w&#281;z&#322;em drzewa rozbioru wi&#261;za&#322;a li&#347;&#263;-terminal-s&#322;owo zdania. Okazuje si&#281;, &#380;e takie gramatyki s&#261; naturalne, pracowa&#322; nad nimi m.in. Lucien Tesniere, g&#322;ówn&#261; prac&#281; "Elements de syntaxe structurale" wyda&#322; w 1959, wi&#281;c równolegle z pracami Chomsky'ego.

Samemu rozwi&#261;zywaniu wi&#281;zów jest wszystko jedno, jak&#261; struktur&#281; narzucimy na graf, wi&#281;c mo&#380;emy "zrelaksowa&#263;" prototypowy warunek, &#380;eby struktur&#261; rozbioru by&#322;o drzewo. Spotka&#322;em si&#281; z formalizmami, w których wymaga si&#281;, &#380;eby to by&#322; graf acykliczny (DAG). Praktyczne wydaje si&#281; zezwolenie na cykle, mo&#380;e ograniczone do klik, np. &#380;eby wyra&#380;a&#263; zwi&#261;zki koordynacji (tzn. konstrukcje z&#322;o&#380;one wspó&#322;rz&#281;dnie, np. "A i B"), z którymi "dependency grammars" maj&#261; pewne problemy.
to:
Aby zaprogramowa&#263; ca&#322;e parsowanie jako problem rozwi&#261;zywania wi&#281;zĂłw, potrzebujemy reprezentowa&#263; dowolne drzewo rozbioru w dziedzinie wi&#281;zĂłw, ktĂłrej u&#380;ywamy. Reprezentowa&#263; dowolne drzewo o li&#347;ciach b&#281;d&#261;cych s&#322;owami ustalonego zdania jest trudno -- jest ich niesko&#324;czenie wiele. Musimy wi&#281;c ograniczy&#263; ilo&#347;&#263; w&#281;z&#322;Ăłw wewn&#281;trznych nie posiadaj&#261;cych rozga&#322;&#281;zie&#324;. Najpro&#347;ciej jest wykluczy&#263; takie w&#281;z&#322;y. Zauwa&#380;my, &#380;e wtedy w&#281;z&#322;Ăłw wewn&#281;trznych jest o jeden mniej ni&#380; li&#347;ci, mo&#380;emy wi&#281;c ka&#380;demu w&#281;z&#322;owi wewn&#281;trznemu przyporz&#261;dkowa&#263; li&#347;&#263;. Mi&#322;o by&#322;oby, gdyby sama gramatyka z ka&#380;dym w&#281;z&#322;em drzewa rozbioru wi&#261;za&#322;a li&#347;&#263;-terminal-s&#322;owo zdania. Okazuje si&#281;, &#380;e takie gramatyki s&#261; naturalne, pracowa&#322; nad nimi m.in. Lucien Tesniere, g&#322;Ăłwn&#261; prac&#281; "Elements de syntaxe structurale" wyda&#322; w 1959, wi&#281;c rĂłwnolegle z pracami Chomsky'ego.

Samemu rozwi&#261;zywaniu wi&#281;zĂłw jest wszystko jedno, jak&#261; struktur&#281; narzucimy na graf, wi&#281;c mo&#380;emy "zrelaksowa&#263;" prototypowy warunek, &#380;eby struktur&#261; rozbioru by&#322;o drzewo. Spotka&#322;em si&#281; z formalizmami, w ktĂłrych wymaga si&#281;, &#380;eby to by&#322; graf acykliczny (DAG). Praktyczne wydaje si&#281; zezwolenie na cykle, mo&#380;e ograniczone do klik, np. &#380;eby wyra&#380;a&#263; zwi&#261;zki koordynacji (tzn. konstrukcje z&#322;o&#380;one wspĂł&#322;rz&#281;dnie, np. "A i B"), z ktĂłrymi "dependency grammars" maj&#261; pewne problemy.
Changed lines 146-147 from:
Kompletny tutorial implementacji parsera dla "dependency grammar" na bazie programowania wi&#281;zów: [[http://citeseer.ist.psu.edu/duchier00constraint.html]].
to:
Kompletny tutorial implementacji parsera dla "dependency grammar" na bazie programowania wi&#281;zĂłw: [[http://citeseer.ist.psu.edu/duchier00constraint.html]].
Changed lines 151-154 from:
* dezambiguacji na ró&#380;nych poziomach rozbioru zdania, w&#322;&#261;czaj&#261;c niepewno&#347;&#263; co do u&#380;ytych s&#322;ów,

* przyspieszania parsowania, m.in. poprzez "beam search" (pomijanie mniej prawdopodobnych wariantów)
to:
* dezambiguacji na rĂł&#380;nych poziomach rozbioru zdania, w&#322;&#261;czaj&#261;c niepewno&#347;&#263; co do u&#380;ytych s&#322;Ăłw,

* przyspieszania parsowania, m.in. poprzez "beam search" (pomijanie mniej prawdopodobnych wariantĂłw)
Changed lines 158-159 from:
[[http://www.ircs.upenn.edu/~juliahr/Dissertation/index.html | Data and models for statistical parsing with Combinatory Categorial Grammar]], Chapter 4. A brief introduction to statistical parsing (faktycznie strony 121-152 wersji jednostronnej), ten rozdzia&#322; przedstawia ogólnie parsowanie probabilistyczne (bez odniesie&#324; do CCG).
to:
[[http://www.ircs.upenn.edu/~juliahr/Dissertation/index.html | Data and models for statistical parsing with Combinatory Categorial Grammar]], Chapter 4. A brief introduction to statistical parsing (faktycznie strony 121-152 wersji jednostronnej), ten rozdzia&#322; przedstawia ogĂłlnie parsowanie probabilistyczne (bez odniesie&#324; do CCG).
Changed lines 167-168 from:
[[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al1995co.htm | Allen 1995 : Natural Language Understanding]] /
to:
* [[http://let.uvt.nl/general/people/rmuskens/pubs/comput.pdf | Harry Bunt and Reinhard Muskens, ''Computational Semantics'']]
*
[[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al1995co.htm | Allen 1995 : Natural Language Understanding]] /
Changed lines 3-4 from:
''[Na marginesie: s&#322;ów'' '''w&#281;ze&#322;''' ''i'' '''wierzcho&#322;ek''' ''u&#380;ywam zamiennie (tzn. u&#380;ywam pierwszego bo jest krótsze).]''
to:
''[Na marginesie: s&#322;ów'' '''w&#281;ze&#322;''' ''i'' '''wierzcho&#322;ek''' ''u&#380;ywam zamiennie (tzn. u&#380;ywam pierwszego bo jest krótsze).]''
Changed lines 8-9 from:
Rozbiór zdania nie musi zatrzymywa&#263; si&#281; na poziomie s&#322;owa: dzi&#281;ki automatycznemu podzia&#322;owi s&#322;owa na morfemy mo&#380;emy zmniejszy&#263; wielko&#347;&#263; s&#322;ownika, a nawet radzi&#263; sobie z nieznanymi s&#322;owami. Dla przyk&#322;adu, system konwersacyjny mo&#380;e swobodnie zapyta&#263; u&#380;ytkownika o znaczenie wyrazu, kiedy jego rola gramatyczna jest dzi&#281;ki analizie w pe&#322;ni okre&#347;lona i znane s&#261; wzorce odmiany.
to:
Rozbiór zdania nie musi zatrzymywa&#263; si&#281; na poziomie s&#322;owa: dzi&#281;ki automatycznemu podzia&#322;owi s&#322;owa na morfemy mo&#380;emy zmniejszy&#263; wielko&#347;&#263; s&#322;ownika, a nawet radzi&#263; sobie z nieznanymi s&#322;owami. Dla przyk&#322;adu, system konwersacyjny mo&#380;e swobodnie zapyta&#263; u&#380;ytkownika o znaczenie wyrazu, kiedy jego rola gramatyczna jest dzi&#281;ki analizie w pe&#322;ni okre&#347;lona i znane s&#261; wzorce odmiany.
Changed lines 17-18 from:
Ogólnie o parsowaniu: [[http://www.cs.vu.nl/~dick/PTAPG.html | Parsing Techniques - A Practical Guide]]. Istotne has&#322;a: metoda CYK, chart parsing, parsowanie top-down vs. bottom-up, Earley parser, metody LR.
to:
Ogólnie o parsowaniu: [[http://www.cs.vu.nl/~dick/PTAPG.html | Parsing Techniques - A Practical Guide]]. Istotne has&#322;a: metoda CYK, chart parsing, parsowanie top-down vs. bottom-up, Earley parser, metody LR.
Changed lines 21-22 from:
[[http://www.cs.chalmers.se/~peb/pubs/p04-chart-pearl.pdf | Functional Pearls: Functional Chart Parsing of Context Free Grammars]]  by Peter Ljunglöf.
to:
[[http://www.cs.chalmers.se/~peb/pubs/p04-chart-pearl.pdf | Functional Pearls: Functional Chart Parsing of Context Free Grammars]]  by Peter Ljunglöf.
Changed lines 28-30 from:
!!! [[#unif]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)
Drzewa dowodów (proof trees) jako drzewa rozbioru dla gramatyk unifikacyjnych, zobacz [[http://www.ida.liu.se/~ulfni/lpp/ | Logic, Programming and Prolog (2ed)]] rozdz. 3.6. Oczywi&#347;cie chcemy mo&#380;liwie szybko odcina&#263; b&#322;&#281;dne &#347;cie&#380;ki wyprowadze&#324;, dlatego (jak w Prologu), od razu propagujemy rozwi&#261;zania generowanych równa&#324;. "Funkcj&#281; oblicze&#324;" R wyznacza nam algorytm chart-parsera. (Rozdzia&#322; 3.6 ksi&#261;&#380;ki o Prologu mówi tylko o doklejaniu p&#322;ytkich drzew odpowiadaj&#261;cych produkcjom, u nas kraw&#281;dzi z kropk&#261; na samym pocz&#261;tku, ale idea przenosi si&#281; na doklejanie g&#322;&#281;bszych drzew. Pe&#322;ne gramatyki unifikacyjne s&#261; opisane w rozdziale o "Definite Clause Grammars".)
to:
!!! [[#unif]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)
Drzewa dowodów (proof trees) jako drzewa rozbioru dla gramatyk unifikacyjnych, zobacz [[http://www.ida.liu.se/~ulfni/lpp/ | Logic, Programming and Prolog (2ed)]] rozdz. 3.6. Oczywi&#347;cie chcemy mo&#380;liwie szybko odcina&#263; b&#322;&#281;dne &#347;cie&#380;ki wyprowadze&#324;, dlatego (jak w Prologu), od razu propagujemy rozwi&#261;zania generowanych równa&#324;. "Funkcj&#281; oblicze&#324;" R wyznacza nam algorytm chart-parsera. (Rozdzia&#322; 3.6 ksi&#261;&#380;ki o Prologu mówi tylko o doklejaniu p&#322;ytkich drzew odpowiadaj&#261;cych produkcjom, u nas kraw&#281;dzi z kropk&#261; na samym pocz&#261;tku, ale idea przenosi si&#281; na doklejanie g&#322;&#281;bszych drzew. Pe&#322;ne gramatyki unifikacyjne s&#261; opisane w rozdziale o "Definite Clause Grammars".)
Changed lines 36-44 from:
# Dzielimy gramatyk&#281; na regu&#322;y leksykalne/s&#322;ownikowe i pozosta&#322;e. Regu&#322;y leksykalne to te, których prawa strona rozpoczyna si&#281; od terminala (cz&#281;sto b&#281;dzie to tylko terminal). Tylko nieleksykalne regu&#322;y wstawiamy jako "p&#281;telki" w ka&#380;d&#261; pozycj&#281; charta, regu&#322;y leksykalne grupujemy w s&#322;ownik ze s&#322;ów w zbiór regu&#322;, i dla ka&#380;dego s&#322;owa wstawiamy do charta przeskakuj&#261;ce to s&#322;owo kraw&#281;dzie.

# Samo wstawianie "p&#281;telek" do charta mo&#380;emy potraktowa&#263; leniwie: zgromadzi&#263; regu&#322;y nieleksykalne w s&#322;ownik indeksowany (np.) przez cz&#281;&#347;&#263; mowy (lub nazw&#281; frazy) i w momencie wybierania z charta kraw&#281;dzi do przed&#322;u&#380;enia, dorzuci&#263; kraw&#281;dzie odpowiadaj&#261;ce regu&#322;om ze s&#322;ownika dla potrzebnej cz&#281;&#347;ci mowy. W ten sposób nie przegl&#261;damy za ka&#380;dym razem wszystkich regu&#322; (nieleksykalnych).

# Mo&#380;na pokusi&#263; si&#281; o bardziej skomplikowane optymalizacje. Mo&#380;na bada&#263; klasy leksykalne (np. verb = transitive verb + intransitive verb), których derywacje z danej regu&#322;y wymagaj&#261; / nie dopuszczaj&#261; (tzn. klasy s&#322;ów, które musz&#261; / nie mog&#261; si&#281; pojawi&#263; we frazie, której wyprowadzenia korzeniem jest dana regu&#322;a). Mo&#380;na skompilowa&#263; gramatyk&#281; do bardziej wydajnej postaci (bardziej podobnej do postaci Greibach), ale w czasie parsowania rekonstruowa&#263; drzewo rozbioru wzgl&#281;dem oryginalnej gramatyki.

!!!! [[#errdesc]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
Je&#347;li zdanie jest niepoprawne gramatycznie, to parsing ko&#324;czy si&#281; bez kraw&#281;dzi obejmuj&#261;cych ca&#322;e zdanie. Szukamy (dynamicznie) ci&#261;gów kraw&#281;dzi daj&#261;cych minimalne pokrycie roz&#322;&#261;czne zdania (tzn. minimaln&#261; ilo&#347;&#263; kraw&#281;dzi, po których mo&#380;na przeskoczy&#263; z pocz&#261;tku na koniec). Budujemy nowy chart, tylko z kraw&#281;dzi z tych ci&#261;gów. Do standardowych regu&#322; chart-parsera dodajemy nast&#281;puj&#261;ce regu&#322;y obs&#322;ugi b&#322;&#281;dów:
to:
# Dzielimy gramatyk&#281; na regu&#322;y leksykalne/s&#322;ownikowe i pozosta&#322;e. Regu&#322;y leksykalne to te, których prawa strona rozpoczyna si&#281; od terminala (cz&#281;sto b&#281;dzie to tylko terminal). Tylko nieleksykalne regu&#322;y wstawiamy jako "p&#281;telki" w ka&#380;d&#261; pozycj&#281; charta, regu&#322;y leksykalne grupujemy w s&#322;ownik ze s&#322;ów w zbiór regu&#322;, i dla ka&#380;dego s&#322;owa wstawiamy do charta przeskakuj&#261;ce to s&#322;owo kraw&#281;dzie.

# Samo wstawianie "p&#281;telek" do charta mo&#380;emy potraktowa&#263; leniwie: zgromadzi&#263; regu&#322;y nieleksykalne w s&#322;ownik indeksowany (np.) przez cz&#281;&#347;&#263; mowy (lub nazw&#281; frazy) i w momencie wybierania z charta kraw&#281;dzi do przed&#322;u&#380;enia, dorzuci&#263; kraw&#281;dzie odpowiadaj&#261;ce regu&#322;om ze s&#322;ownika dla potrzebnej cz&#281;&#347;ci mowy. W ten sposób nie przegl&#261;damy za ka&#380;dym razem wszystkich regu&#322; (nieleksykalnych).

# Mo&#380;na pokusi&#263; si&#281; o bardziej skomplikowane optymalizacje. Mo&#380;na bada&#263; klasy leksykalne (np. verb = transitive verb + intransitive verb), których derywacje z danej regu&#322;y wymagaj&#261; / nie dopuszczaj&#261; (tzn. klasy s&#322;ów, które musz&#261; / nie mog&#261; si&#281; pojawi&#263; we frazie, której wyprowadzenia korzeniem jest dana regu&#322;a). Mo&#380;na skompilowa&#263; gramatyk&#281; do bardziej wydajnej postaci (bardziej podobnej do postaci Greibach), ale w czasie parsowania rekonstruowa&#263; drzewo rozbioru wzgl&#281;dem oryginalnej gramatyki.

!!!! [[#errdesc]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
Je&#347;li zdanie jest niepoprawne gramatycznie, to parsing ko&#324;czy si&#281; bez kraw&#281;dzi obejmuj&#261;cych ca&#322;e zdanie. Szukamy (dynamicznie) ci&#261;gów kraw&#281;dzi daj&#261;cych minimalne pokrycie roz&#322;&#261;czne zdania (tzn. minimaln&#261; ilo&#347;&#263; kraw&#281;dzi, po których mo&#380;na przeskoczy&#263; z pocz&#261;tku na koniec). Budujemy nowy chart, tylko z kraw&#281;dzi z tych ci&#261;gów. Do standardowych regu&#322; chart-parsera dodajemy nast&#281;puj&#261;ce regu&#322;y obs&#322;ugi b&#322;&#281;dów:
Changed lines 51-53 from:
Nasy&#263; chart przy pomocy poszerzonego zbioru regu&#322; (poszerz odpowiednio u&#380;ywany algorytm parsowania). Zwró&#263; u&#380;ytkownikowi drzewa rozbioru odpowiadaj&#261;ce kraw&#281;dziom obejmuj&#261;cym ca&#322;e zdanie wyprowadzone z minimaln&#261; ilo&#347;ci&#261; zastosowa&#324; regu&#322; obs&#322;ugi b&#322;&#281;dów, razem z zapami&#281;tanymi komentarzami.

!!! [[#speagram]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: troch&#281; ogólniejsze gramatyki struktur frazowych
to:
Nasy&#263; chart przy pomocy poszerzonego zbioru regu&#322; (poszerz odpowiednio u&#380;ywany algorytm parsowania). Zwró&#263; u&#380;ytkownikowi drzewa rozbioru odpowiadaj&#261;ce kraw&#281;dziom obejmuj&#261;cym ca&#322;e zdanie wyprowadzone z minimaln&#261; ilo&#347;ci&#261; zastosowa&#324; regu&#322; obs&#322;ugi b&#322;&#281;dów, razem z zapami&#281;tanymi komentarzami.

!!! [[#speagram]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: troch&#281; ogólniejsze gramatyki struktur frazowych
Changed lines 57-58 from:
Po lewej stronie produkcji, wstawiamy term A opisuj&#261;cy w&#322;asno&#347;ci drzewa rozbioru z korzeniem wyprowadzonym z tej produkcji, zale&#380;ne od w&#322;asno&#347;ci poddrzew. Po prawej stronie produkcji, zamiast nieterminali wstawiamy term A'_i_' opisuj&#261;cy interesuj&#261;ce nas w&#322;asno&#347;ci, oraz relacj&#281; R'_i_', w której term B opisuj&#261;cy potencjalne poddrzewo rozbioru ma by&#263; wzgl&#281;dem termu A'_i_'. Trzy rodzaje relacji wydaj&#261; si&#281; rozs&#261;dne, w &#380;argonie j&#281;zyków programowania nazywaj&#261; si&#281; one: "pozycja inwariantna" (=), "pozycja kowariantna" (<), "pozycja kontrawariantna" (>). Buduj&#261;c drzewo rozbioru zdania pilnujemy niesprzeczno&#347;ci wymaga&#324;. Przyk&#322;ady (''italik&#261;'' oznaczone s&#261; terminale, a znakiem zapytania zmienne w termach w&#322;asno&#347;ci, tzn. w typach):
to:
Po lewej stronie produkcji, wstawiamy term A opisuj&#261;cy w&#322;asno&#347;ci drzewa rozbioru z korzeniem wyprowadzonym z tej produkcji, zale&#380;ne od w&#322;asno&#347;ci poddrzew. Po prawej stronie produkcji, zamiast nieterminali wstawiamy term A'_i_' opisuj&#261;cy interesuj&#261;ce nas w&#322;asno&#347;ci, oraz relacj&#281; R'_i_', w której term B opisuj&#261;cy potencjalne poddrzewo rozbioru ma by&#263; wzgl&#281;dem termu A'_i_'. Trzy rodzaje relacji wydaj&#261; si&#281; rozs&#261;dne, w &#380;argonie j&#281;zyków programowania nazywaj&#261; si&#281; one: "pozycja inwariantna" (=), "pozycja kowariantna" (<), "pozycja kontrawariantna" (>). Buduj&#261;c drzewo rozbioru zdania pilnujemy niesprzeczno&#347;ci wymaga&#324;. Przyk&#322;ady (''italik&#261;'' oznaczone s&#261; terminale, a znakiem zapytania zmienne w termach w&#322;asno&#347;ci, tzn. w typach):
Changed lines 61-62 from:
z przedchodnio&#347;ci, ta produkcja jest równowa&#380;na nast&#281;puj&#261;cym:
to:
z przedchodnio&#347;ci, ta produkcja jest równowa&#380;na nast&#281;puj&#261;cym:
Changed lines 66-67 from:
Konstrukcja z j&#281;zyków programowania. [@ let X be Y @] oznacza, &#380;e @@X@@ oblicza si&#281; do @@Y@@. &#379;eby to by&#322;o dopuszczalne, @@Y@@ki musz&#261; by&#263; @@X@@ami, tzn. typ @@Y@@ka musi by&#263; podtypem @@X@@a.
to:
Konstrukcja z j&#281;zyków programowania. [@ let X be Y @] oznacza, &#380;e @@X@@ oblicza si&#281; do @@Y@@. &#379;eby to by&#322;o dopuszczalne, @@Y@@ki musz&#261; by&#263; @@X@@ami, tzn. typ @@Y@@ka musi by&#263; podtypem @@X@@a.
Changed lines 71-73 from:
Przymiotnik opisuj&#261;cy fraz&#281; rzeczownikow&#261; mo&#380;e mie&#263; typ ogólniejszy ni&#380; ta fraza, na przyk&#322;ad mo&#380;e by&#263; rodzaju m&#281;skiego [@gender=m@], który jest nadtypem rodzajów @@m1@@, @@m2@@ i @@m3@@.

to:
Przymiotnik opisuj&#261;cy fraz&#281; rzeczownikow&#261; mo&#380;e mie&#263; typ ogólniejszy ni&#380; ta fraza, na przyk&#322;ad mo&#380;e by&#263; rodzaju m&#281;skiego [@gender=m@], który jest nadtypem rodzajów @@m1@@, @@m2@@ i @@m3@@.

Changed lines 77-78 from:
S&#261; dwie mo&#380;liwe interpretacje etykiet brakuj&#261;cych w opisie: sensowna formalnie interpretacja abstrakcyjna oraz praktyczna interpretacja polimorficzna. Interpretacja abstrakcyjna pod niewyspecyfikowane warto&#347;ci etykiet podstawia @@Top@@, a interpretacja polimorficzna ignoruje etykiety nie wyst&#281;puj&#261;ce jednocze&#347;nie po obu stronach porównania. W interpretacji abstrakcyjnej [@ NP[number=singular] @] oznacza zbiór wszystkich fraz rzeczownikowych w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest &#347;ci&#347;le konkretniejszy od tego typu), a w interpretacji polimorficznej [@ NP[number=singular] @] oznacza pewn&#261; fraz&#281; rzeczownikow&#261; w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest i konkretniejszy i ogólniejszy od tego typu). Interpretacja polimorficzna okazuje si&#281; by&#263; wygodniejsza przy pisaniu gramatyk, ''It doesn't work in theory, but it works in practice...'' (Obecnie mamy w Speagramie interpretacj&#281; polimorficzn&#261;.)
to:
S&#261; dwie mo&#380;liwe interpretacje etykiet brakuj&#261;cych w opisie: sensowna formalnie interpretacja abstrakcyjna oraz praktyczna interpretacja polimorficzna. Interpretacja abstrakcyjna pod niewyspecyfikowane warto&#347;ci etykiet podstawia @@Top@@, a interpretacja polimorficzna ignoruje etykiety nie wyst&#281;puj&#261;ce jednocze&#347;nie po obu stronach porównania. W interpretacji abstrakcyjnej [@ NP[number=singular] @] oznacza zbiór wszystkich fraz rzeczownikowych w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest &#347;ci&#347;le konkretniejszy od tego typu), a w interpretacji polimorficznej [@ NP[number=singular] @] oznacza pewn&#261; fraz&#281; rzeczownikow&#261; w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest i konkretniejszy i ogólniejszy od tego typu). Interpretacja polimorficzna okazuje si&#281; by&#263; wygodniejsza przy pisaniu gramatyk, ''It doesn't work in theory, but it works in practice...'' (Obecnie mamy w Speagramie interpretacj&#281; polimorficzn&#261;.)
Added lines 87-90:
!!!! Government & Binding Theory

[[http://www.ifi.unizh.ch/CL/gschneid/dreitaegig.pdf |  An Introduction to Government & Binding]]

Changed lines 97-100 from:
HPSG przypisuje frazom -- pocz&#261;wszy od s&#322;ów po ca&#322;e zdania -- struktury atrybutowe (feature-structures) zawieraj&#261;ce bardzo bogat&#261; informacj&#281;: fono/morfologiczn&#261;, syntaktyczn&#261; i semantyczn&#261;. HPSG sk&#322;ada si&#281; ze s&#322;ownika, zawieraj&#261;cego struktury atrybutowe dla poszczególnych s&#322;ów j&#281;zyka, oraz bardzo niewielu schematów regu&#322;. Do HPSG mo&#380;na stosowa&#263; chart-parsery: wype&#322;nia si&#281; chart przez struktury atrybutowe s&#322;ów zdania i nast&#281;pnie stosuje schematy regu&#322; do konstrukcji/przekszta&#322;cania kraw&#281;dzi charta. Od "zwyk&#322;ych" gramatyk unifikacyjnych (tzn. CFG + struktury atrybutowe) HPSG &#380;ni si&#281; wi&#281;c tym, &#380;e produkcje nie s&#261; dane jawnie, tylko wydobywane ze struktur atrybutowych przez schematy regu&#322;.

HPSG jest niederywacyjna (deklaratywna): zupe&#322;nie nieistotne jest, w jaki sposób skonstruowali&#347;my struktur&#281; atrybutow&#261; dla zdania, ta struktura zawiera ca&#322;&#261; potrzebn&#261; informacj&#281;, oraz nietransformacyjna: struktury atrybutowe nie s&#261; modyfikowane, tylko &#322;&#261;czone w wi&#281;ksze struktury przez unifikacj&#281;. Dlatego HPSG mo&#380;na te&#380; parsowa&#263; "czysto wi&#281;zowo" tak jak gramatyki zale&#380;no&#347;ci ([[#p4 | dependency grammars]]).
to:
HPSG przypisuje frazom -- pocz&#261;wszy od s&#322;ów po ca&#322;e zdania -- struktury atrybutowe (feature-structures) zawieraj&#261;ce bardzo bogat&#261; informacj&#281;: fono/morfologiczn&#261;, syntaktyczn&#261; i semantyczn&#261;. HPSG sk&#322;ada si&#281; ze s&#322;ownika, zawieraj&#261;cego struktury atrybutowe dla poszczególnych s&#322;ów j&#281;zyka, oraz bardzo niewielu schematów regu&#322;. Do HPSG mo&#380;na stosowa&#263; chart-parsery: wype&#322;nia si&#281; chart przez struktury atrybutowe s&#322;ów zdania i nast&#281;pnie stosuje schematy regu&#322; do konstrukcji/przekszta&#322;cania kraw&#281;dzi charta. Od "zwyk&#322;ych" gramatyk unifikacyjnych (tzn. CFG + struktury atrybutowe) HPSG ró&#380;ni si&#281; wi&#281;c tym, &#380;e produkcje nie s&#261; dane jawnie, tylko wydobywane ze struktur atrybutowych przez schematy regu&#322;.

HPSG jest niederywacyjna (deklaratywna): zupe&#322;nie nieistotne jest, w jaki sposób skonstruowali&#347;my struktur&#281; atrybutow&#261; dla zdania, ta struktura zawiera ca&#322;&#261; potrzebn&#261; informacj&#281;, oraz nietransformacyjna: struktury atrybutowe nie s&#261; modyfikowane, tylko &#322;&#261;czone w wi&#281;ksze struktury przez unifikacj&#281;. Dlatego HPSG mo&#380;na te&#380; parsowa&#263; "czysto wi&#281;zowo" tak jak gramatyki zale&#380;no&#347;ci ([[#p4 | dependency grammars]]).
Changed lines 108-109 from:
[[http://www.cis.upenn.edu/~xtag/tech-report/node5.html | Atrybutowe leksykalne TAGs]] ([[http://www.cis.upenn.edu/~xtag/ | strona g&#322;ówna projektu xTAG]])
to:
[[http://www.cis.upenn.edu/~xtag/tech-report/node5.html | Atrybutowe leksykalne TAGs]] ([[http://www.cis.upenn.edu/~xtag/ | strona g&#322;ówna projektu xTAG]])
Changed lines 111-112 from:
Gramatyki kategorialne s&#261; równie&#380; formalizmem leksykalnym. Ze s&#322;owami zwi&#261;zane s&#261; kategorie (typy), które ilustruj&#261; sposób, w jaki s&#322;owa i frazy &#322;&#261;cz&#261; si&#281; (kombinuj&#261;) ze sob&#261; tworz&#261;c wi&#281;ksze frazy. Regu&#322;y zwyk&#322;ych gramatyk kategorialnych (CG, równowa&#380;nych CFG) to:
to:
Gramatyki kategorialne s&#261; równie&#380; formalizmem leksykalnym. Ze s&#322;owami zwi&#261;zane s&#261; kategorie (typy), które ilustruj&#261; sposób, w jaki s&#322;owa i frazy &#322;&#261;cz&#261; si&#281; (kombinuj&#261;) ze sob&#261; tworz&#261;c wi&#281;ksze frazy. Regu&#322;y zwyk&#322;ych gramatyk kategorialnych (CG, równowa&#380;nych CFG) to:
Changed lines 129-132 from:
Wielomodalne CCG maj&#261; annotacje na uko&#347;nikach mówi&#261;ce, które regu&#322;y mo&#380;na do danej kategorii z&#322;o&#380;onej stosowa&#263;.  Kategorie mog&#261; by&#263; indeksowane strukturami atrybutowymi, które s&#261; unifikowane pomi&#281;dzy kategoriami, które ze sob&#261; kombinuj&#261; (tzn. unifikowane s&#261; struktury atrybutowe które sta&#322;yby przy wyst&#261;pieniach @@Y@@ w powy&#380;szych regu&#322;ach); wynikowe podstawienie jest stosowane do wszystkich struktur w danej derywacji. Ca&#322;e kategorie te&#380; mog&#261; by&#263; zmiennymi.

Do parsowania CCG u&#380;ywa si&#281; chart-parserów, ka&#380;dej spo&#347;ród powy&#380;szych regu&#322; odpowiada regu&#322;a dodawania kraw&#281;dzi do charta.
to:
Wielomodalne CCG maj&#261; annotacje na uko&#347;nikach mówi&#261;ce, które regu&#322;y mo&#380;na do danej kategorii z&#322;o&#380;onej stosowa&#263;.  Kategorie mog&#261; by&#263; indeksowane strukturami atrybutowymi, które s&#261; unifikowane pomi&#281;dzy kategoriami, które ze sob&#261; kombinuj&#261; (tzn. unifikowane s&#261; struktury atrybutowe które sta&#322;yby przy wyst&#261;pieniach @@Y@@ w powy&#380;szych regu&#322;ach); wynikowe podstawienie jest stosowane do wszystkich struktur w danej derywacji. Ca&#322;e kategorie te&#380; mog&#261; by&#263; zmiennymi.

Do parsowania CCG u&#380;ywa si&#281; chart-parserów, ka&#380;dej spo&#347;ród powy&#380;szych regu&#322; odpowiada regu&#322;a dodawania kraw&#281;dzi do charta.
Changed lines 138-139 from:
Parsowanie dla gramatyk struktur frazowych istotnie wykorzystuje kolejno&#347;&#263; w&#281;z&#322;ów drzewa. Nie jest to korzystne w przypadku j&#281;zyków o zdaniach ze swobodnym szykiem. Szyk wyrazów nie musi by&#263; istotnym elementem sk&#322;adni: mo&#380;emy rozpatrywa&#263; przynale&#380;no&#347;&#263; do j&#281;zyka modulo permutacja s&#322;ów zdania. Aby parsowa&#263; z pomini&#281;ciem szyku, nale&#380;y znale&#378;&#263; jaki&#347; odpowiednik programowania dynamicznego, który pozwoli inkrementacyjnie budowa&#263; drzewo rozbioru. Ogólnych metod rozwi&#261;zywania problemów o naturze kombinatorycznej dostarcza ''programowanie wi&#281;zów''. Pierwszym j&#281;zykiem programowania wi&#281;zów by&#322; Prolog, ale obecne j&#281;zyki / techniki programowania wi&#281;zów s&#261; skuteczniejsze, zaopatrzone w bogatsze logiki i wydajniejsze mechanizmy (dziedziny). Jak widzieli&#347;my ju&#380; wcze&#347;niej, parsery gramatyk unifikacyjnych buduj&#261; drzewo oblicze&#324; (gramatyki potraktowanej jako) program w Prologu, przyci&#281;te przez algorytm dynamiczny wi&#261;&#380;&#261;cy porz&#261;dek (liniowy) w&#281;z&#322;ów drzewa z porz&#261;dkiem s&#322;ów zdania. Nasz obecny pomys&#322; na parsowanie, to pomini&#281;cie "przycinania z zewn&#261;trz", ale wykorzystanie wspó&#322;czesnych technik programowania wi&#281;zów.
to:
Parsowanie dla gramatyk struktur frazowych istotnie wykorzystuje kolejno&#347;&#263; w&#281;z&#322;ów drzewa. Nie jest to korzystne w przypadku j&#281;zyków o zdaniach ze swobodnym szykiem. Szyk wyrazów nie musi by&#263; istotnym elementem sk&#322;adni: mo&#380;emy rozpatrywa&#263; przynale&#380;no&#347;&#263; do j&#281;zyka modulo permutacja s&#322;ów zdania. Aby parsowa&#263; z pomini&#281;ciem szyku, nale&#380;y znale&#378;&#263; jaki&#347; odpowiednik programowania dynamicznego, który pozwoli inkrementacyjnie budowa&#263; drzewo rozbioru. Ogólnych metod rozwi&#261;zywania problemów o naturze kombinatorycznej dostarcza ''programowanie wi&#281;zów''. Pierwszym j&#281;zykiem programowania wi&#281;zów by&#322; Prolog, ale obecne j&#281;zyki / techniki programowania wi&#281;zów s&#261; skuteczniejsze, zaopatrzone w bogatsze logiki i wydajniejsze mechanizmy (dziedziny). Jak widzieli&#347;my ju&#380; wcze&#347;niej, parsery gramatyk unifikacyjnych buduj&#261; drzewo oblicze&#324; (gramatyki potraktowanej jako) program w Prologu, przyci&#281;te przez algorytm dynamiczny wi&#261;&#380;&#261;cy porz&#261;dek (liniowy) w&#281;z&#322;ów drzewa z porz&#261;dkiem s&#322;ów zdania. Nasz obecny pomys&#322; na parsowanie, to pomini&#281;cie "przycinania z zewn&#261;trz", ale wykorzystanie wspó&#322;czesnych technik programowania wi&#281;zów.
Changed lines 141-144 from:
Aby zaprogramowa&#263; ca&#322;e parsowanie jako problem rozwi&#261;zywania wi&#281;zów, potrzebujemy reprezentowa&#263; dowolne drzewo rozbioru w dziedzinie wi&#281;zów, której u&#380;ywamy. Reprezentowa&#263; dowolne drzewo o li&#347;ciach b&#281;d&#261;cych s&#322;owami ustalonego zdania jest trudno -- jest ich niesko&#324;czenie wiele. Musimy wi&#281;c ograniczy&#263; ilo&#347;&#263; w&#281;z&#322;ów wewn&#281;trznych nie posiadaj&#261;cych rozga&#322;&#281;zie&#324;. Najpro&#347;ciej jest wykluczy&#263; takie w&#281;z&#322;y. Zauwa&#380;my, &#380;e wtedy w&#281;z&#322;ów wewn&#281;trznych jest o jeden mniej ni&#380; li&#347;ci, mo&#380;emy wi&#281;c ka&#380;demu w&#281;z&#322;owi wewn&#281;trznemu przyporz&#261;dkowa&#263; li&#347;&#263;. Mi&#322;o by&#322;oby, gdyby sama gramatyka z ka&#380;dym w&#281;z&#322;em drzewa rozbioru wi&#261;za&#322;a li&#347;&#263;-terminal-s&#322;owo zdania. Okazuje si&#281;, &#380;e takie gramatyki s&#261; naturalne, pracowa&#322; nad nimi m.in. Lucien Tesniere, g&#322;ówn&#261; prac&#281; "Elements de syntaxe structurale" wyda&#322; w 1959, wi&#281;c równolegle z pracami Chomsky'ego.

Samemu rozwi&#261;zywaniu wi&#281;zów jest wszystko jedno, jak&#261; struktur&#281; narzucimy na graf, wi&#281;c mo&#380;emy "zrelaksowa&#263;" prototypowy warunek, &#380;eby struktur&#261; rozbioru by&#322;o drzewo. Spotka&#322;em si&#281; z formalizmami, w których wymaga si&#281;, &#380;eby to by&#322; graf acykliczny (DAG). Praktyczne wydaje si&#281; zezwolenie na cykle, mo&#380;e ograniczone do klik, np. &#380;eby wyra&#380;a&#263; zwi&#261;zki koordynacji (tzn. konstrukcje z&#322;o&#380;one wspó&#322;rz&#281;dnie, np. "A i B"), z którymi "dependency grammars" maj&#261; pewne problemy.
to:
Aby zaprogramowa&#263; ca&#322;e parsowanie jako problem rozwi&#261;zywania wi&#281;zów, potrzebujemy reprezentowa&#263; dowolne drzewo rozbioru w dziedzinie wi&#281;zów, której u&#380;ywamy. Reprezentowa&#263; dowolne drzewo o li&#347;ciach b&#281;d&#261;cych s&#322;owami ustalonego zdania jest trudno -- jest ich niesko&#324;czenie wiele. Musimy wi&#281;c ograniczy&#263; ilo&#347;&#263; w&#281;z&#322;ów wewn&#281;trznych nie posiadaj&#261;cych rozga&#322;&#281;zie&#324;. Najpro&#347;ciej jest wykluczy&#263; takie w&#281;z&#322;y. Zauwa&#380;my, &#380;e wtedy w&#281;z&#322;ów wewn&#281;trznych jest o jeden mniej ni&#380; li&#347;ci, mo&#380;emy wi&#281;c ka&#380;demu w&#281;z&#322;owi wewn&#281;trznemu przyporz&#261;dkowa&#263; li&#347;&#263;. Mi&#322;o by&#322;oby, gdyby sama gramatyka z ka&#380;dym w&#281;z&#322;em drzewa rozbioru wi&#261;za&#322;a li&#347;&#263;-terminal-s&#322;owo zdania. Okazuje si&#281;, &#380;e takie gramatyki s&#261; naturalne, pracowa&#322; nad nimi m.in. Lucien Tesniere, g&#322;ówn&#261; prac&#281; "Elements de syntaxe structurale" wyda&#322; w 1959, wi&#281;c równolegle z pracami Chomsky'ego.

Samemu rozwi&#261;zywaniu wi&#281;zów jest wszystko jedno, jak&#261; struktur&#281; narzucimy na graf, wi&#281;c mo&#380;emy "zrelaksowa&#263;" prototypowy warunek, &#380;eby struktur&#261; rozbioru by&#322;o drzewo. Spotka&#322;em si&#281; z formalizmami, w których wymaga si&#281;, &#380;eby to by&#322; graf acykliczny (DAG). Praktyczne wydaje si&#281; zezwolenie na cykle, mo&#380;e ograniczone do klik, np. &#380;eby wyra&#380;a&#263; zwi&#261;zki koordynacji (tzn. konstrukcje z&#322;o&#380;one wspó&#322;rz&#281;dnie, np. "A i B"), z którymi "dependency grammars" maj&#261; pewne problemy.
Changed lines 146-147 from:
Kompletny tutorial implementacji parsera dla "dependency grammar" na bazie programowania wi&#281;zów: [[http://citeseer.ist.psu.edu/duchier00constraint.html]].
to:
Kompletny tutorial implementacji parsera dla "dependency grammar" na bazie programowania wi&#281;zów: [[http://citeseer.ist.psu.edu/duchier00constraint.html]].
Changed lines 151-154 from:
* dezambiguacji na &#380;nych poziomach rozbioru zdania, w&#322;&#261;czaj&#261;c niepewno&#347;&#263; co do u&#380;ytych s&#322;ów,

* przyspieszania parsowania, m.in. poprzez "beam search" (pomijanie mniej prawdopodobnych wariantów)
to:
* dezambiguacji na ró&#380;nych poziomach rozbioru zdania, w&#322;&#261;czaj&#261;c niepewno&#347;&#263; co do u&#380;ytych s&#322;ów,

* przyspieszania parsowania, m.in. poprzez "beam search" (pomijanie mniej prawdopodobnych wariantów)
Changed lines 158-159 from:
[[http://www.ircs.upenn.edu/~juliahr/Dissertation/index.html | Data and models for statistical parsing with Combinatory Categorial Grammar]], Chapter 4. A brief introduction to statistical parsing (faktycznie strony 121-152 wersji jednostronnej), ten rozdzia&#322; przedstawia ogólnie parsowanie probabilistyczne (bez odniesie&#324; do CCG).
to:
[[http://www.ircs.upenn.edu/~juliahr/Dissertation/index.html | Data and models for statistical parsing with Combinatory Categorial Grammar]], Chapter 4. A brief introduction to statistical parsing (faktycznie strony 121-152 wersji jednostronnej), ten rozdzia&#322; przedstawia ogólnie parsowanie probabilistyczne (bez odniesie&#324; do CCG).
January 27, 2007, at 08:57 PM by 192.168.3.130 -
Changed line 79 from:
!! Formalizmy lingwistyczne u&#380;ywane w NLP
to:
!! [[#ling]] Formalizmy lingwistyczne u&#380;ywane w NLP
Changed line 133 from:
!! Gramatyki zale&#380;no&#347;ci (dependency grammars)
to:
!! [[#depgram]] Gramatyki zale&#380;no&#347;ci (dependency grammars)
Changed line 136 from:
!!! Struktura (drzewa) rozbioru
to:
!!! [[#deptree]] Struktura (drzewa) rozbioru
January 27, 2007, at 08:55 PM by 192.168.3.130 -
Changed line 7 from:
!! [[#p1]] Analiza morfologiczna (Computational Morphology, word tagging)
to:
!! [[#morf]] Analiza morfologiczna (Computational Morphology, word tagging)
Changed line 14 from:
!! [[#p2]] Parsowanie gramatyk struktur frazowych
to:
!! [[#pars]] Parsowanie gramatyk struktur frazowych
Changed line 19 from:
!!! [[#p21]] Praser CFG: algorytm Earleya.
to:
!!! [[#cfg]] Praser CFG: algorytm Earleya.
Changed line 23 from:
!!! [[#p22]] Parsery "shift-reduce" w kontek&#347;cie NLP
to:
!!! [[#lr]] Parsery "shift-reduce" w kontek&#347;cie NLP
Changed line 28 from:
!!! [[#p23]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)
to:
!!! [[#unif]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)
Changed lines 31-33 from:
!!! [[#p24]] Usprawnianie chart-parsera

!!!! [[#p241]] Pomys&#322;y na optymalizacj&#281;
to:
!!! [[#chart]] Usprawnianie chart-parsera

!!!! [[#chartopt]] Pomys&#322;y na optymalizacj&#281;
Changed line 42 from:
!!!! [[#p242]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
to:
!!!! [[#errdesc]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
Changed line 53 from:
!!! [[#p25]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: troch&#281; ogólniejsze gramatyki struktur frazowych
to:
!!! [[#speagram]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: troch&#281; ogólniejsze gramatyki struktur frazowych
Changed line 56 from:
!!!! [[#p251]] Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
to:
!!!! Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
Changed line 74 from:
!!!! [[#p252]] Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
to:
!!!! Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
Changed line 79 from:
!! [[#p3]] Formalizmy lingwistyczne u&#380;ywane w NLP
to:
!! Formalizmy lingwistyczne u&#380;ywane w NLP
Changed line 82 from:
!!! [[#p31]] Gramatyki transformacyjne
to:
!!! [[#transf]] Gramatyki transformacyjne
Changed line 87 from:
!!! [[#p32]] Lexical Functional Grammar (LFG)
to:
!!! [[#lfg]] Lexical Functional Grammar (LFG)
Changed line 92 from:
!!! [[#p33]] Head-driven Phrase Structure Grammar (HPSG)
to:
!!! [[#hpsg]] Head-driven Phrase Structure Grammar (HPSG)
Changed line 103 from:
!!! [[#p34]] (Lexicalized) Tree Adjoining Grammar (TAG, xTAG)
to:
!!! [[#xtag]] (Lexicalized) Tree Adjoining Grammar (TAG, xTAG)
Changed line 106 from:
!!! [[#p35]] Unification Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)
to:
!!! [[#ccg]] Unification Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)
Changed line 133 from:
!! [[#p4]] Gramatyki zale&#380;no&#347;ci (dependency grammars)
to:
!! Gramatyki zale&#380;no&#347;ci (dependency grammars)
Changed line 136 from:
!!! [[#p41]] Struktura (drzewa) rozbioru
to:
!!! Struktura (drzewa) rozbioru
Changed line 141 from:
!!! [[#p42]] Constraint Programming
to:
!!! [[#constr]] Constraint Programming
Changed line 144 from:
!! [[#p5]] Gramatyki probabilistyczne, parsowanie probabilistyczne
to:
!! [[#prob]] Gramatyki probabilistyczne, parsowanie probabilistyczne
Changed lines 156-157 from:
!!! [[#p51]] Parsery probabilistyczne z modelowaniem zale&#380;no&#347;ci w strukturze predykatowo-argumentowej
to:
!!! [[#probdep]] Parsery probabilistyczne z modelowaniem zale&#380;no&#347;ci w strukturze predykatowo-argumentowej
Changed lines 161-162 from:
!! [[#p6]] Od sk&#322;adni do semantyki
to:
!! [[#sem]] Od sk&#322;adni do semantyki
Changed line 167 from:
!!! [[#p61]] Gramatyki Montague'a
to:
!!! [[#montag]] Gramatyki Montague'a
Changed line 170 from:
!!! [[#p62]] Underspecification
to:
!!! [[#underspec]] Underspecification
Changed lines 173-175 from:
!!! [[#p63]] Przetwarzanie dyskursu

!!!! [[#p631]] Discourse Representation Theory
to:
!!! [[#disc]] Przetwarzanie dyskursu

!!!! [[#drt]] Discourse Representation Theory
January 27, 2007, at 08:50 PM by 192.168.3.130 -
Deleted lines 2-29:
# [[#p1 | Analiza morfologiczna (Computational Morphology, word tagging) ]]
# [[#p2 | Parsowanie gramatyk struktur frazowych]]
## [[#p21 | Praser CFG: algorytm Earleya.]]
## [[#p22 | Parsery "shift-reduce" w kontek&#347;cie NLP.]]
## [[#p23 | Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)]]
## [[#p24 | Usprawnianie chart-parsera]]
### [[#p241 | Pomys&#322;y na optymalizacj&#281;]]
### [[#p242 | Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych]]
## [[#p25 | Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych]]
### [[#p251 | Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.]]
### [[#p252 | Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.]]
# [[#p3 | Formalizmy lingwistyczne u&#380;ywane w NLP]]
## [[#p31 | Gramatyki transformacyjne]]
## [[#p32 | Lexical Functional Grammar (LFG)]]
## [[#p33 | Head-driven Phrase Structure Grammar (HPSG)]]
## [[#p34 | (Lexicalized) Tree Adjoining Grammar (TAG, xTAG)]]
## [[#p35 | Unification Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)]]
# [[#p4 | Gramatyki zale&#380;no&#347;ci (dependency grammars)]]
## [[#p41 | Struktura (drzewa) rozbioru]]
## [[#p42 | Constraint Programming]]
# [[#p5 | Gramatyki probabilistyczne, parsowanie probabilistyczne]]
## [[#p51 | Parsery probabilistyczne z modelowaniem zale&#380;no&#347;ci w strukturze predykatowo-argumentowej]]
# [[#p6 | Od sk&#322;adni do semantyki]]
## [[#p61 | Gramatyki Montague'a]]
## [[#p62 | Underspecification]]
## [[#p63 | Przetwarzanie dyskursu]]
### [[#p631 | Discourse Representation Theory]]

January 27, 2007, at 08:49 PM by 192.168.3.130 -
Added lines 1-2:
(:toc:)
Added lines 43-44:
Ogólnie o parsowaniu: [[http://www.cs.vu.nl/~dick/PTAPG.html | Parsing Techniques - A Practical Guide]]. Istotne has&#322;a: metoda CYK, chart parsing, parsowanie top-down vs. bottom-up, Earley parser, metody LR.
Added line 22:
## [[#p51 | Parsery probabilistyczne z modelowaniem zale&#380;no&#347;ci w strukturze predykatowo-argumentowej]]
Changed lines 180-181 from:
!!! Parsery probabilistyczne z modelowaniem zale&#380;no&#347;ci w strukturze predykatowo-argumentowej
to:
!!! [[#p51]] Parsery probabilistyczne z modelowaniem zale&#380;no&#347;ci w strukturze predykatowo-argumentowej
Changed lines 177-178 from:
[[http://www.ircs.upenn.edu/~juliahr/Dissertation/index.html | Data and models for statistical parsing with Combinatory Categorial Grammar]], Chapter 4. A brief introduction to statistical parsing (faktycznie strony 121-152 wersji jednostronnej).
to:
[[http://www.ircs.upenn.edu/~juliahr/Dissertation/index.html | Data and models for statistical parsing with Combinatory Categorial Grammar]], Chapter 4. A brief introduction to statistical parsing (faktycznie strony 121-152 wersji jednostronnej), ten rozdzia&#322; przedstawia ogólnie parsowanie probabilistyczne (bez odniesie&#324; do CCG).

!!! Parsery probabilistyczne z modelowaniem zale&#380;no&#347;ci w strukturze predykatowo-argumentowej

Koncepcja zaczerpni&#281;ta z [[#p4 | "dependency grammars"]] pozwala na optymalniejsze pos&#322;ugiwanie si&#281; gramatykami probabilistycznymi.
[[http://www.ircs.upenn.edu/~juliahr/Papers/ACL2003/HockenmaierACL2003.pdf | Parsing with generative models of predicate-argument structure]]

Added line 185:
Changed lines 172-173 from:
* przyspieszania parsowania, poprzez "beam search" (pomijanie mniej prawdopodobnych wariantów)
to:
* przyspieszania parsowania, m.in. poprzez "beam search" (pomijanie mniej prawdopodobnych wariantów)

[[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al1995co.htm | Allen 1995: Natural Language Understanding]] /
[[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al199507.htm | Chapter 7 - Ambiguity Resolution: Statistical Methods]] / [[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al199507.htm#chap7_4 | 7.4 Obtaining Lexical Probabilities]], [[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al199507.htm#chap7_5 | 7.5 Probabilistic Context-Free Grammars]], [[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al199507.htm#chap7_6 | 7.6 Best-First Parsing]], [[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al199507.htm#chap7_7 | 7.7 A Simple Context-Dependent Best-First Parser]]

[[http://www.ircs.upenn.edu/~juliahr/Dissertation/index.html | Data and models for statistical parsing with Combinatory Categorial Grammar]], Chapter 4. A brief introduction to statistical parsing (faktycznie strony 121-152 wersji jednostronnej).

Changed lines 4-10 from:
## [[#p22 | Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)]]
## [[#p23 | Usprawnianie chart-parsera]]
### [[#p231 | Pomys
&#322;y na optymalizacj&#281;]]
### [[#p232 | Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych]]
## [[#p24 | Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych]]
### [[#p241 | Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.]]
### [[#p242 | Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.]]
to:
## [[#p22 | Parsery "shift-reduce" w kontek&#347;cie NLP.]]
## [[#p23 | Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)]]
## [[#p24 | Usprawnianie chart-parsera
]]
### [[#p241 | Pomys&#322;y na optymalizacj&#281;]]
### [[#p242 | Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych]]
## [[#p25 | Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych]]
### [[#p251 | Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.]]
### [[#p252
| Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.]]
Changed line 43 from:
Zacznijmy od parsowania CFG:
to:
Zacznijmy od parsowania pe&#322;nego CFG:
Changed lines 46-51 from:
!!! [[#p22]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)
to:
!!! [[#p22]] Parsery "shift-reduce" w kontek&#347;cie NLP
[[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al1995co.htm | Allen 1995 : Natural Language Understanding]] / [[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al199506.htm | Chapter 6: Toward Efficient Parsing]]

Dla gramatyk CCG: [[http://homepages.inf.ed.ac.uk/s9764747/PAPERS/McConvilleMScThesis.pdf | Incremental natural language understanding with combinatory categorial grammar]].

!!! [[#p23
]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)
Changed lines 54-56 from:
!!! [[#p23]] Usprawnianie chart-parsera

!!!! [[#p231]] Pomys&#322;y na optymalizacj&#281;
to:
!!! [[#p24]] Usprawnianie chart-parsera

!!!! [[#p241]] Pomys&#322;y na optymalizacj&#281;
Changed line 65 from:
!!!! [[#p232]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
to:
!!!! [[#p242]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
Changed line 76 from:
!!! [[#p24]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: troch&#281; ogólniejsze gramatyki struktur frazowych
to:
!!! [[#p25]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: troch&#281; ogólniejsze gramatyki struktur frazowych
Changed line 79 from:
!!!! [[#p241]] Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
to:
!!!! [[#p251]] Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
Changed line 97 from:
!!!! [[#p242]] Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
to:
!!!! [[#p252]] Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
Changed lines 175-178 from:
to:
[[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al1995co.htm | Allen 1995 : Natural Language Understanding]] /
[[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al95p2.htm | Part II: Semantic Interpretation]] /
[[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al199508.htm | Chapter 8 : Semantics and Logical Form]], [[http://www.uni-giessen.de/~g91062/Seminare/gk-cl/Allen95/al199509.htm | Chapter 9 : Linking Syntax and Semantics]]

Changed lines 142-143 from:
Wielomodalne CCG maj&#261; annotacje na uko&#347;nikach mówi&#261;ce, które regu&#322;y mo&#380;na do danej kategorii z&#322;o&#380;onej stosowa&#263;.
to:
Wielomodalne CCG maj&#261; annotacje na uko&#347;nikach mówi&#261;ce, które regu&#322;y mo&#380;na do danej kategorii z&#322;o&#380;onej stosowa&#263;.  Kategorie mog&#261; by&#263; indeksowane strukturami atrybutowymi, które s&#261; unifikowane pomi&#281;dzy kategoriami, które ze sob&#261; kombinuj&#261; (tzn. unifikowane s&#261; struktury atrybutowe które sta&#322;yby przy wyst&#261;pieniach @@Y@@ w powy&#380;szych regu&#322;ach); wynikowe podstawienie jest stosowane do wszystkich struktur w danej derywacji. Ca&#322;e kategorie te&#380; mog&#261; by&#263; zmiennymi.
Changed lines 20-25 from:
# [[#p5 | Od sk&#322;adni do semantyki]]
## [[#p51 | Gramatyki Montague'a]]
## [[#p52 | Underspecification]]
## [[#p53 | Przetwarzanie dyskursu]]
### [[#p531 | Discourse Representation Theory]]
to:
# [[#p5 | Gramatyki probabilistyczne, parsowanie probabilistyczne]]
# [[#p6 | Od sk&#322;adni do semantyki]]
## [[#p61 | Gramatyki Montague'a]]
## [[#p62 | Underspecification]]
## [[#p63 | Przetwarzanie dyskursu]]
### [[#p631
| Discourse Representation Theory]]
Added lines 124-145:
Gramatyki kategorialne s&#261; równie&#380; formalizmem leksykalnym. Ze s&#322;owami zwi&#261;zane s&#261; kategorie (typy), które ilustruj&#261; sposób, w jaki s&#322;owa i frazy &#322;&#261;cz&#261; si&#281; (kombinuj&#261;) ze sob&#261; tworz&#261;c wi&#281;ksze frazy. Regu&#322;y zwyk&#322;ych gramatyk kategorialnych (CG, równowa&#380;nych CFG) to:

# [@ (X / Y) Y ==> X @] (aplikacja)

# [@ Y (X \ Y) ==> X @]

Kombinatoryczne gramatyki kategorialne (o mocy "mildly context sensitive") maj&#261; dodatkowo regu&#322;y

# [@ (X / Y) (Y / Z) ==> X / Z @] (z&#322;o&#380;enie)

# [@ (X \ Y) (Y \ Z) ==> X \ Z @]

# [@ X ==> T / (T \ X) @] (podniesienie typu)

# [@ (X / Y) (Y \ Z) ==> X \ Z @] (z&#322;o&#380;enie krzy&#380;owe)

# [@ (Y / Z) (X \ Y) ==> X / Z @]

Wielomodalne CCG maj&#261; annotacje na uko&#347;nikach mówi&#261;ce, które regu&#322;y mo&#380;na do danej kategorii z&#322;o&#380;onej stosowa&#263;.

Do parsowania CCG u&#380;ywa si&#281; chart-parserów, ka&#380;dej spo&#347;ród powy&#380;szych regu&#322; odpowiada regu&#322;a dodawania kraw&#281;dzi do charta.

Changed lines 161-163 from:
!! [[#p5]] Od sk&#322;adni do semantyki

!!! [[
#p51]] Gramatyki Montague'a
to:
!! [[#p5]] Gramatyki probabilistyczne, parsowanie probabilistyczne
S
&#261; u&#380;yteczne m.in. dla:

* dezambiguacji na ró&
#380;nych poziomach rozbioru zdania, w&#322;&#261;czaj&#261;c niepewno&#347;&#263; co do u&#380;ytych s&#322;ów,

* przyspieszania parsowania, poprzez "beam search" (pomijanie mniej prawdopodobnych wariantów)

!! [[#p6]] Od sk&#322;adni do semantyki

!!! [[#p61
]] Gramatyki Montague'a
Changed line 173 from:
!!! [[#p52]] Underspecification
to:
!!! [[#p62]] Underspecification
Changed lines 176-178 from:
!!! [[#p53]] Przetwarzanie dyskursu

!!!! [[#p531]] Discourse Representation Theory
to:
!!! [[#p63]] Przetwarzanie dyskursu

!!!! [[#p631]] Discourse Representation Theory
January 12, 2007, at 03:04 AM by 83.27.169.140 -
Changed lines 70-71 from:
Speagram to jednocze&#347;nie j&#281;zyk programowania oraz dynamiczny (programowalny) parser. (Uwagi dotycz&#261; wersji SVN [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/]], intensywnie rozwijanej od sierpnia do pa&#378;dziernika b.r. [[http://dev.openwengo.com/trac/openwengo/trac.cgi/wiki/CodeCampWengoPhoneNaturalLanguage]] -- projekt zako&#324;czony fiaskiem).
to:
Speagram to jednocze&#347;nie j&#281;zyk programowania oraz dynamiczny (programowalny) parser. (Uwagi dotycz&#261; wersji SVN [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/]], intensywnie rozwijanej od sierpnia do pa&#378;dziernika 2006 [[http://dev.openwengo.com/trac/openwengo/trac.cgi/wiki/CodeCampWengoPhoneNaturalLanguage]] -- projekt zako&#324;czony fiaskiem).
January 12, 2007, at 03:03 AM by 83.27.169.140 -
Changed lines 69-71 from:
!!! [[#p24]] Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych
Speagram to jednocze&#347;nie j&#281;zyk programowania oraz dynamiczny (programowalny) parser.
to:
!!! [[#p24]] Obecny [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/ | Speagram]]: troch&#281; ogólniejsze gramatyki struktur frazowych
Speagram to jednocze&#347;nie j&#281;zyk programowania oraz dynamiczny (programowalny)
parser. (Uwagi dotycz&#261; wersji SVN [[http://svn.sourceforge.net/viewvc/speagram/trunk/speagram/]], intensywnie rozwijanej od sierpnia do pa&#378;dziernika b.r. [[http://dev.openwengo.com/trac/openwengo/trac.cgi/wiki/CodeCampWengoPhoneNaturalLanguage]] -- projekt zako&#324;czony fiaskiem).
January 12, 2007, at 02:46 AM by 83.27.169.140 -
Changed lines 111-112 from:
HPSG jest niederywacyjna: zupe&#322;nie nieistotne jest, w jaki sposób skonstruowali&#347;my struktur&#281; atrybutow&#261; dla zdania, ta struktura zawiera ca&#322;&#261; potrzebn&#261; informacj&#281;. Dlatego HPSG mo&#380;na te&#380; parsowa&#263; "czysto wi&#281;zowo" tak jak gramatyki zale&#380;no&#347;ci ([[#p4 | dependency grammars]]).
to:
HPSG jest niederywacyjna (deklaratywna): zupe&#322;nie nieistotne jest, w jaki sposób skonstruowali&#347;my struktur&#281; atrybutow&#261; dla zdania, ta struktura zawiera ca&#322;&#261; potrzebn&#261; informacj&#281;, oraz nietransformacyjna: struktury atrybutowe nie s&#261; modyfikowane, tylko &#322;&#261;czone w wi&#281;ksze struktury przez unifikacj&#281;. Dlatego HPSG mo&#380;na te&#380; parsowa&#263; "czysto wi&#281;zowo" tak jak gramatyki zale&#380;no&#347;ci ([[#p4 | dependency grammars]]).
January 12, 2007, at 02:28 AM by 83.27.169.140 -
Added lines 111-112:
HPSG jest niederywacyjna: zupe&#322;nie nieistotne jest, w jaki sposób skonstruowali&#347;my struktur&#281; atrybutow&#261; dla zdania, ta struktura zawiera ca&#322;&#261; potrzebn&#261; informacj&#281;. Dlatego HPSG mo&#380;na te&#380; parsowa&#263; "czysto wi&#281;zowo" tak jak gramatyki zale&#380;no&#347;ci ([[#p4 | dependency grammars]]).
January 12, 2007, at 02:16 AM by 83.27.169.140 -
Added lines 109-114:
HPSG przypisuje frazom -- pocz&#261;wszy od s&#322;ów po ca&#322;e zdania -- struktury atrybutowe (feature-structures) zawieraj&#261;ce bardzo bogat&#261; informacj&#281;: fono/morfologiczn&#261;, syntaktyczn&#261; i semantyczn&#261;. HPSG sk&#322;ada si&#281; ze s&#322;ownika, zawieraj&#261;cego struktury atrybutowe dla poszczególnych s&#322;ów j&#281;zyka, oraz bardzo niewielu schematów regu&#322;. Do HPSG mo&#380;na stosowa&#263; chart-parsery: wype&#322;nia si&#281; chart przez struktury atrybutowe s&#322;ów zdania i nast&#281;pnie stosuje schematy regu&#322; do konstrukcji/przekszta&#322;cania kraw&#281;dzi charta. Od "zwyk&#322;ych" gramatyk unifikacyjnych (tzn. CFG + struktury atrybutowe) HPSG ró&#380;ni si&#281; wi&#281;c tym, &#380;e produkcje nie s&#261; dane jawnie, tylko wydobywane ze struktur atrybutowych przez schematy regu&#322;.

Wa&#380;ne miejsce: [[http://hpsg.stanford.edu/]]

Kurs LFG i HPSG: [[http://www.cl.uni-bremen.de/~stefan/Lehre/Konstanz2001/]] ([[http://www.cl.uni-bremen.de/~stefan/PS/konstanz2001-slides.pdf | slajdy dla HPSG]])

January 12, 2007, at 12:49 AM by 83.27.169.140 -
Changed lines 104-105 from:
[[http://www.essex.ac.uk/linguistics/LFG/ | Strona domowa LFG]]
to:
[[http://www.essex.ac.uk/linguistics/LFG/ | Strona domowa LFG]] (m. in. [[http://users.ox.ac.uk/~cpgl0015/lfg.pdf | wprowadzenie do LFG]])
January 12, 2007, at 12:45 AM by 83.27.169.140 -
Changed line 16 from:
## [[#p35 | Unificational Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)]]
to:
## [[#p35 | Unification Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)]]
Added lines 104-105:
[[http://www.essex.ac.uk/linguistics/LFG/ | Strona domowa LFG]]
Changed line 114 from:
!!! [[#p35]] Unificational Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)
to:
!!! [[#p35]] Unification Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)
January 12, 2007, at 12:22 AM by 83.27.169.140 -
Changed lines 110-111 from:
[[http://www.cis.upenn.edu/~xtag/]]
to:
[[http://www.cis.upenn.edu/~xtag/tech-report/node5.html | Atrybutowe leksykalne TAGs]] ([[http://www.cis.upenn.edu/~xtag/ | strona g&#322;ówna projektu xTAG]])
Changed lines 113-115 from:
[[http://www.dfki.de/~gj/lectures/050404-08.fi.helsinki.kit/]]
[[http://groups.inf.ed.ac.uk/ccg/publications.html]]
to:
Publikacje dot. CCG: [[http://groups.inf.ed.ac.uk/ccg/publications.html]] (m. in. [[ftp://ftp.cogsci.ed.ac.uk/pub/steedman/ccg/manifesto.pdf | wprowadzenie do CCG]]).

Multi-modalne CCG: [[http://www.dfki.de/~gj/lectures/050404-08.fi.helsinki.kit/
]]
January 12, 2007, at 12:02 AM by 83.27.169.140 -
Changed lines 110-111 from:
to:
[[http://www.cis.upenn.edu/~xtag/]]
Changed lines 113-114 from:

to:
[[http://www.dfki.de/~gj/lectures/050404-08.fi.helsinki.kit/]]
[[http://groups.inf.ed.ac.uk/ccg/publications.html]]

January 11, 2007, at 05:37 PM by 83.27.169.140 -
Changed lines 2-24 from:
# [[#p2 | Gramatyki struktur frazowych]]
## [[#p21 | Parsowanie]]
### [[#p211 | Praser CFG: algorytm Earleya.]]
### [[#p212 | Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)]]
### [[#p213 | Usprawnianie chart-parsera]]
#### [[#p2131 | Pomys&#322;y na optymalizacj&#281;]]
#### [[#p2132 | Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych]]
## [[#p22 | Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych]]
### [[#p221 | Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.]]
### [[#p222 | Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.]]
## [[#p23 | Formalizmy lingwistyczne u&
#380;ywane w NLP]]
### [[#p231 | Gramatyki transformacyjne
]]
### [[#p232 | Lexical Functional Grammar (LFG)]]
### [[#p233 | Head-driven Phrase Structure Grammar (HPSG)]]
# [[#p3 | Gramatyki zale&#380;no&#347;ci (dependency grammars)]]
## [[#p31 | Struktura (drzewa) rozbioru]]
## [[#p32 | Constraint Programming]]
# [[#p4 | Od sk&#322;adni do semantyki]]
## [[#p41 | Gramatyki Montague'a]]
## [[#p42 | Underspecification]]
## [[#p43 | Przetwarzanie dyskursu]]
### [[#p431
| Discourse Representation Theory]]
to:
# [[#p2 | Parsowanie gramatyk struktur frazowych]]
## [[#p21 | Praser CFG: algorytm Earleya.]]
## [[#p22 | Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)]]
## [[#p23 | Usprawnianie chart-parsera]]
### [[#p231 | Pomys
&#322;y na optymalizacj&#281;]]
### [[#p232 | Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych]]
## [[#p24 | Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych]]
### [[#p241 | Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.]]
### [[#p242 | Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.]]
# [[#p3 | Formalizmy lingwistyczne u&#380;ywane w NLP]]
## [[#p31 | Gramatyki transformacyjne]]
## [[#p32 | Lexical Functional Grammar (LFG)]]
## [[
#p33 | Head-driven Phrase Structure Grammar (HPSG)]]
## [[#p34 | (Lexicalized) Tree Adjoining Grammar (TAG, xTAG)]]
## [[#p35 | Unificational Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)]]
# [[#p4 | Gramatyki zale&#380;no&#347;ci (dependency grammars)]]
## [[#p41 | Struktura (drzewa) rozbioru]]
## [[#p42 | Constraint Programming]]
# [[#p5 | Od sk&#322;adni do semantyki]]
## [[#p51 | Gramatyki Montague'a]]
## [[#p52 | Underspecification]]
## [[
#p53 | Przetwarzanie dyskursu]]
### [[#p531 | Discourse Representation Theory]]
Changed line 37 from:
!! [[#p2]] Gramatyki struktur frazowych
to:
!! [[#p2]] Parsowanie gramatyk struktur frazowych
Changed lines 40-42 from:
!!! [[#p21]] Parsowanie

!!!! [[#p211
]] Praser CFG: algorytm Earleya.
to:
!!! [[#p21]] Praser CFG: algorytm Earleya.
Changed line 44 from:
!!!! [[#p212]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)
to:
!!! [[#p22]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)
Changed lines 47-49 from:
!!!! [[#p213]] Usprawnianie chart-parsera

!!!!! [[#p2131]] Pomys&#322;y na optymalizacj&#281;
to:
!!! [[#p23]] Usprawnianie chart-parsera

!!!! [[#p231]] Pomys&#322;y na optymalizacj&#281;
Changed line 58 from:
!!!!! [[#p2132]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
to:
!!!! [[#p232]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
Changed line 69 from:
!!! [[#p22]] Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych
to:
!!! [[#p24]] Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych
Changed line 72 from:
!!!! [[#p221]] Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
to:
!!!! [[#p241]] Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
Changed line 90 from:
!!!! [[#p222]] Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
to:
!!!! [[#p242]] Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
Changed line 95 from:
!!! [[#p23]] Formalizmy lingwistyczne u&#380;ywane w NLP
to:
!! [[#p3]] Formalizmy lingwistyczne u&#380;ywane w NLP
Changed line 98 from:
!!!! [[#p231]] Gramatyki transformacyjne
to:
!!! [[#p31]] Gramatyki transformacyjne
Changed line 103 from:
!!!! [[#p232]] Lexical Functional Grammar (LFG)
to:
!!! [[#p32]] Lexical Functional Grammar (LFG)
Changed line 106 from:
!!!! [[#p233]] Head-driven Phrase Structure Grammar (HPSG)
to:
!!! [[#p33]] Head-driven Phrase Structure Grammar (HPSG)
Changed lines 109-114 from:
!! [[#p3]] Gramatyki zale&#380;no&#347;ci (dependency grammars)
to:
!!! [[#p34]] (Lexicalized) Tree Adjoining Grammar (TAG, xTAG)

!!! [[#p35]] Unificational Categorial Grammar, Combinatory Categorial Grammar (UCG, CCG)


!! [[#p4
]] Gramatyki zale&#380;no&#347;ci (dependency grammars)
Changed line 117 from:
!!! [[#p31]] Struktura (drzewa) rozbioru
to:
!!! [[#p41]] Struktura (drzewa) rozbioru
Changed line 122 from:
!!! [[#p32]] Constraint Programming
to:
!!! [[#p42]] Constraint Programming
Changed lines 125-127 from:
!! [[#p4]] Od sk&#322;adni do semantyki

!!! [[#p41]] Gramatyki Montague'a
to:
!! [[#p5]] Od sk&#322;adni do semantyki

!!! [[#p51]] Gramatyki Montague'a
Changed line 130 from:
!!! [[#p42]] Underspecification
to:
!!! [[#p52]] Underspecification
Changed lines 133-135 from:
!!! [[#p43]] Przetwarzanie dyskursu

!!!! [[#p431]] Discourse Representation Theory
to:
!!! [[#p53]] Przetwarzanie dyskursu

!!!! [[#p531]] Discourse Representation Theory
December 24, 2006, at 01:38 AM by 83.27.162.249 -
Changed lines 57-58 from:
# Mo&#380;na pokusi&#263; si&#281; o bardziej skomplikowane optymalizacje. Mo&#380;na bada&#263; klasy leksykalne (np. verb = transitive verb + intransitive verb), których derywacje z danej regu&#322;y wymagaj&#261; / nie dopuszczaj&#261;. Mo&#380;na skompilowa&#263; gramatyk&#281; do bardziej wydajnej postaci (bardziej podobnej do postaci Greibach), ale w czasie parsowania rekonstruowa&#263; drzewo rozbioru wzgl&#281;dem oryginalnej gramatyki.
to:
# Mo&#380;na pokusi&#263; si&#281; o bardziej skomplikowane optymalizacje. Mo&#380;na bada&#263; klasy leksykalne (np. verb = transitive verb + intransitive verb), których derywacje z danej regu&#322;y wymagaj&#261; / nie dopuszczaj&#261; (tzn. klasy s&#322;ów, które musz&#261; / nie mog&#261; si&#281; pojawi&#263; we frazie, której wyprowadzenia korzeniem jest dana regu&#322;a). Mo&#380;na skompilowa&#263; gramatyk&#281; do bardziej wydajnej postaci (bardziej podobnej do postaci Greibach), ale w czasie parsowania rekonstruowa&#263; drzewo rozbioru wzgl&#281;dem oryginalnej gramatyki.
Changed lines 60-61 from:
Je&#347;li zdanie jest niepoprawne gramatycznie, to parsing ko&#324;czy si&#281; bez kraw&#281;dzi obejmuj&#261;cych ca&#322;e zdanie. Szukamy (dynamicznie) ci&#261;gów kraw&#281;dzi daj&#261;cych minimalne pokrycie roz&#322;&#261;czne zdania. Budujemy nowy chart, tylko z kraw&#281;dzi z tych ci&#261;gów. Do standardowych regu&#322; chart-parsera dodajemy nast&#281;puj&#261;ce regu&#322;y obs&#322;ugi b&#322;&#281;dów:
to:
Je&#347;li zdanie jest niepoprawne gramatycznie, to parsing ko&#324;czy si&#281; bez kraw&#281;dzi obejmuj&#261;cych ca&#322;e zdanie. Szukamy (dynamicznie) ci&#261;gów kraw&#281;dzi daj&#261;cych minimalne pokrycie roz&#322;&#261;czne zdania (tzn. minimaln&#261; ilo&#347;&#263; kraw&#281;dzi, po których mo&#380;na przeskoczy&#263; z pocz&#261;tku na koniec). Budujemy nowy chart, tylko z kraw&#281;dzi z tych ci&#261;gów. Do standardowych regu&#322; chart-parsera dodajemy nast&#281;puj&#261;ce regu&#322;y obs&#322;ugi b&#322;&#281;dów:
December 24, 2006, at 01:24 AM by 83.27.162.249 -
Changed lines 21-24 from:
to:
## [[#p42 | Underspecification]]
## [[#p43 | Przetwarzanie dyskursu]]
### [[#p431 | Discourse Representation Theory]]

Added lines 125-131:

!!! [[#p42]] Underspecification
[[http://www.coli.uni-saarland.de/courses/underspecification-06/page.php?id=schedule]]

!!! [[#p43]] Przetwarzanie dyskursu

!!!! [[#p431]] Discourse Representation Theory
December 24, 2006, at 12:29 AM by 83.27.162.249 -
Changed lines 13-14 from:
### [[#p231 | Lexical Functional Grammar (LFG)]]
### [[#p232 | Head-driven Phrase Structure Grammar (HPSG)]]
to:
### [[#p231 | Gramatyki transformacyjne]]
### [[#p232 | Lexical Functional Grammar (LFG)]]
### [[#p233
| Head-driven Phrase Structure Grammar (HPSG)]]
Changed lines 96-99 from:
!!!! [[#p231]] Lexical Functional Grammar (LFG)

!!!!
[[#p232]] Head-driven Phrase Structure Grammar (HPSG)
to:
!!!! [[#p231]] Gramatyki transformacyjne
Gramatyki transformacyjne
("szko&#322;a Chomskiego").

[[http://www.ling.upenn.edu/~beatrice/syntax-textbook/index.html]]

!!!! [[#p232]] Lexical Functional
Grammar (LFG)
[[http://emsah.uq.edu.au/linguistics/Working%20Papers/ananda_ling/LFG_Summary.htm]]

!!!! [[#p233]] Head-driven Phrase Structure Grammar (HPSG)
[[http://emsah.uq.edu.au/linguistics/Working%20Papers/ananda_ling/HPSG_Summary.htm]]

December 24, 2006, at 12:02 AM by 83.27.162.249 -
Changed lines 93-94 from:
to:
[[http://emsah.uq.edu.au/linguistics/Working%20Papers/ananda_ling/ | Introduction to LFG and HPSG]] by Ananda Lima.
December 23, 2006, at 11:55 PM by 83.27.162.249 -
Changed lines 12-14 from:
## [[#p23 | Head-driven Phrase Structure Grammars]]
to:
## [[#p23 | Formalizmy lingwistyczne u&#380;ywane w NLP]]
### [[#p231 | Lexical Functional Grammar (LFG)]]
### [[#p232 | Head-driven Phrase Structure Grammar (HPSG)
]]
Changed lines 92-93 from:
!!! [[#p23]] Head-driven Phrase Structure Grammars
to:
!!! [[#p23]] Formalizmy lingwistyczne u&#380;ywane w NLP

!!!! [[#p231]] Lexical Functional Grammar (LFG)

!!!![[#p232]] Head-driven Phrase Structure Grammar (HPSG)

December 23, 2006, at 10:46 PM by 83.27.162.249 -
Added line 12:
## [[#p23 | Head-driven Phrase Structure Grammars]]
Changed lines 40-41 from:
Drzewa dowodów (proof trees) jako drzewa rozbioru dla gramatyk unifikacyjnych, zobacz [[http://www.ida.liu.se/~ulfni/lpp/ | Logic, Programming and Prolog (2ed)]] rozdz. 3.6. Oczywi&#347;cie chcemy mo&#380;liwie szybko odcina&#263; b&#322;&#281;dne &#347;cie&#380;ki wyprowadze&#324;, dlatego (jak w Prologu), od razu propagujemy rozwi&#261;zania generowanych równa&#324;. "Funkcj&#281; oblicze&#324;" R wyznacza nam algorytm chart-parsera. (Rozdzia&#322; 3.6 ksi&#261;&#380;ki o Prologu mówi tylko o doklejaniu p&#322;ytkich drzew odpowiadaj&#261;cych produkcjom, u nas kraw&#281;dzi z kropk&#261; na samym pocz&#261;tku, ale idea przenosi si&#281; na doklejanie g&#322;&#281;bszych drzew.)
to:
Drzewa dowodów (proof trees) jako drzewa rozbioru dla gramatyk unifikacyjnych, zobacz [[http://www.ida.liu.se/~ulfni/lpp/ | Logic, Programming and Prolog (2ed)]] rozdz. 3.6. Oczywi&#347;cie chcemy mo&#380;liwie szybko odcina&#263; b&#322;&#281;dne &#347;cie&#380;ki wyprowadze&#324;, dlatego (jak w Prologu), od razu propagujemy rozwi&#261;zania generowanych równa&#324;. "Funkcj&#281; oblicze&#324;" R wyznacza nam algorytm chart-parsera. (Rozdzia&#322; 3.6 ksi&#261;&#380;ki o Prologu mówi tylko o doklejaniu p&#322;ytkich drzew odpowiadaj&#261;cych produkcjom, u nas kraw&#281;dzi z kropk&#261; na samym pocz&#261;tku, ale idea przenosi si&#281; na doklejanie g&#322;&#281;bszych drzew. Pe&#322;ne gramatyki unifikacyjne s&#261; opisane w rozdziale o "Definite Clause Grammars".)
Added lines 51-52:
# Mo&#380;na pokusi&#263; si&#281; o bardziej skomplikowane optymalizacje. Mo&#380;na bada&#263; klasy leksykalne (np. verb = transitive verb + intransitive verb), których derywacje z danej regu&#322;y wymagaj&#261; / nie dopuszczaj&#261;. Mo&#380;na skompilowa&#263; gramatyk&#281; do bardziej wydajnej postaci (bardziej podobnej do postaci Greibach), ale w czasie parsowania rekonstruowa&#263; drzewo rozbioru wzgl&#281;dem oryginalnej gramatyki.
Changed lines 54-63 from:
to:
Je&#347;li zdanie jest niepoprawne gramatycznie, to parsing ko&#324;czy si&#281; bez kraw&#281;dzi obejmuj&#261;cych ca&#322;e zdanie. Szukamy (dynamicznie) ci&#261;gów kraw&#281;dzi daj&#261;cych minimalne pokrycie roz&#322;&#261;czne zdania. Budujemy nowy chart, tylko z kraw&#281;dzi z tych ci&#261;gów. Do standardowych regu&#322; chart-parsera dodajemy nast&#281;puj&#261;ce regu&#322;y obs&#322;ugi b&#322;&#281;dów:

:b&#322;&#261;d typu:poszerz kraw&#281;d&#378; o przyleg&#322;&#261; zupe&#322;n&#261; kraw&#281;d&#378; (z kropk&#261; na ko&#324;cu), odpowiednio przesuwaj&#261;c kropk&#281; lewej kraw&#281;dzi, bez sprawdzania zgodno&#347;ci nieterminali, np. kraw&#281;dzie [@[i -> j] A => B.CD, [j -> k] E => FG.@], dodaj [@[i -> k] A => BC.D@], zapami&#281;taj "b&#322;&#261;d typu: oczekiwane C, znaleziono E"

:wtr&#261;cenie:wyd&#322;u&#380; kraw&#281;d&#378; do ko&#324;ca przyleg&#322;ej zupe&#322;nej kraw&#281;dzi, bez przesuwania kropki, np. kraw&#281;dzie [@[i -> j] A => B.CD, [j -> k] E => FG.@], dodaj [@[i -> k] A => B.CD@], zapami&#281;taj "wtr&#261;cenie: nieoczekiwane E"

:opuszczenie:przesu&#324; kropk&#281; bez wyd&#322;u&#380;ania kraw&#281;dzi, np. kraw&#281;d&#378; [@[i -> j] A => B.CD@], dodaj [@[i -> j] A => BC.D@], zapami&#281;taj "opuszczenie: pomini&#281;to C"

Nasy&#263; chart przy pomocy poszerzonego zbioru regu&#322; (poszerz odpowiednio u&#380;ywany algorytm parsowania). Zwró&#263; u&#380;ytkownikowi drzewa rozbioru odpowiadaj&#261;ce kraw&#281;dziom obejmuj&#261;cym ca&#322;e zdanie wyprowadzone z minimaln&#261; ilo&#347;ci&#261; zastosowa&#324; regu&#322; obs&#322;ugi b&#322;&#281;dów, razem z zapami&#281;tanymi komentarzami.

Added lines 90-91:
!!! [[#p23]] Head-driven Phrase Structure Grammars
Changed lines 6-8 from:
### [[#p213 | Pomys&#322;y na optymalizacj&#281; parsera]]
to:
### [[#p213 | Usprawnianie chart-parsera]]
#### [[#p2131 | Pomys&#322;y na optymalizacj&#281;]]
#### [[#p2132 | Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych
]]
Changed lines 41-42 from:
!!!! [[#p213]] Pomys&#322;y na optymalizacj&#281; parsera
to:
!!!! [[#p213]] Usprawnianie chart-parsera

!!!!! [[#p2131]] Pomys&#322;y na optymalizacj&#281;
Dla ustalenia uwagi udoskonalamy algorytm Earleya: bottom-up left-to-right

# Dzielimy gramatyk&#281; na regu&#322;y leksykalne/s&#322;ownikowe i pozosta&#322;e. Regu&#322;y leksykalne to te, których prawa strona rozpoczyna si&#281; od terminala (cz&#281;sto b&#281;dzie to tylko terminal). Tylko nieleksykalne regu&#322;y wstawiamy jako "p&#281;telki" w ka&#380;d&#261; pozycj&#281; charta, regu&#322;y leksykalne grupujemy w s&#322;ownik ze s&#322;ów w zbiór regu&#322;, i dla ka&#380;dego s&#322;owa wstawiamy do charta przeskakuj&#261;ce to s&#322;owo kraw&#281;dzie.

# Samo wstawianie "p&#281;telek" do charta mo&#380;emy potraktowa&#263; leniwie: zgromadzi&#263; regu&#322;y nieleksykalne w s&#322;ownik indeksowany (np.) przez cz&#281;&#347;&#263; mowy (lub nazw&#281; frazy) i w momencie wybierania z charta kraw&#281;dzi do przed&#322;u&#380;enia, dorzuci&#263; kraw&#281;dzie odpowiadaj&#261;ce regu&#322;om ze s&#322;ownika dla potrzebnej cz&#281;&#347;ci mowy. W ten sposób nie przegl&#261;damy za ka&#380;dym razem wszystkich regu&#322; (nieleksykalnych).

!!!!! [[#p2132]] Pomys&#322;y na t&#322;umaczenie b&#322;&#281;dów gramatycznych

Added lines 18-19:
''Uwaga: notatki s&#261; w trakcie opracowywania i mog&#261; zawiera&#263; powa&#380;ne b&#322;&#281;dy.''
Changed lines 37-38 from:
to:
Drzewa dowodów (proof trees) jako drzewa rozbioru dla gramatyk unifikacyjnych, zobacz [[http://www.ida.liu.se/~ulfni/lpp/ | Logic, Programming and Prolog (2ed)]] rozdz. 3.6. Oczywi&#347;cie chcemy mo&#380;liwie szybko odcina&#263; b&#322;&#281;dne &#347;cie&#380;ki wyprowadze&#324;, dlatego (jak w Prologu), od razu propagujemy rozwi&#261;zania generowanych równa&#324;. "Funkcj&#281; oblicze&#324;" R wyznacza nam algorytm chart-parsera. (Rozdzia&#322; 3.6 ksi&#261;&#380;ki o Prologu mówi tylko o doklejaniu p&#322;ytkich drzew odpowiadaj&#261;cych produkcjom, u nas kraw&#281;dzi z kropk&#261; na samym pocz&#261;tku, ale idea przenosi si&#281; na doklejanie g&#322;&#281;bszych drzew.)
Changed lines 19-20 from:
Rozbiór zdania nie musi zatrzymywa&#263; si&#281; na poziomie s&#322;owa: automatycznemu podzia&#322;owi s&#322;owa na morfemy mo&#380;emy zmniejszy&#263; wielko&#347;&#263; s&#322;ownika, a nawet radzi&#263; sobie z nieznanymi s&#322;owami. Dla przyk&#322;adu, system konwersacyjny mo&#380;e swobodnie zapyta&#263; u&#380;ytkownika o znaczenie wyrazu, kiedy jego rola gramatyczna jest dzi&#281;ki analizie w pe&#322;ni okre&#347;lona i znane s&#261; wzorce odmiany.
to:
Rozbiór zdania nie musi zatrzymywa&#263; si&#281; na poziomie s&#322;owa: dzi&#281;ki automatycznemu podzia&#322;owi s&#322;owa na morfemy mo&#380;emy zmniejszy&#263; wielko&#347;&#263; s&#322;ownika, a nawet radzi&#263; sobie z nieznanymi s&#322;owami. Dla przyk&#322;adu, system konwersacyjny mo&#380;e swobodnie zapyta&#263; u&#380;ytkownika o znaczenie wyrazu, kiedy jego rola gramatyczna jest dzi&#281;ki analizie w pe&#322;ni okre&#347;lona i znane s&#261; wzorce odmiany.
Changed line 12 from:
## [[#p32]] Constraint Programming
to:
## [[#p32 | Constraint Programming]]
Changed line 8 from:
### [[#p221 | Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.]
to:
### [[#p221 | Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.]]
Added lines 1-15:
# [[#p1 | Analiza morfologiczna (Computational Morphology, word tagging) ]]
# [[#p2 | Gramatyki struktur frazowych]]
## [[#p21 | Parsowanie]]
### [[#p211 | Praser CFG: algorytm Earleya.]]
### [[#p212 | Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)]]
### [[#p213 | Pomys&#322;y na optymalizacj&#281; parsera]]
## [[#p22 | Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych]]
### [[#p221 | Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.]
### [[#p222 | Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.]]
# [[#p3 | Gramatyki zale&#380;no&#347;ci (dependency grammars)]]
## [[#p31 | Struktura (drzewa) rozbioru]]
## [[#p32]] Constraint Programming
# [[#p4 | Od sk&#322;adni do semantyki]]
## [[#p41 | Gramatyki Montague'a]]

Changed line 18 from:
!! Analiza morfologiczna (Computational Morphology, word tagging)
to:
!! [[#p1]] Analiza morfologiczna (Computational Morphology, word tagging)
Changed line 25 from:
!! Gramatyki struktur frazowych
to:
!! [[#p2]] Gramatyki struktur frazowych
Changed lines 28-31 from:
!!! Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych
Speagram to jednocze&#347;nie j&#281;zyk programowania oraz dynamiczny (programowalny) parser.

!!!!
Praser CFG: algorytm Earleya.
to:
!!! [[#p21]] Parsowanie

!!!! [[
#p211]] Praser CFG: algorytm Earleya.
Changed lines 34-36 from:
!!!! Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
Nast&#281;pnie dodajemy atrybuty: po
lewej stronie produkcji, wstawiamy term A opisuj&#261;cy w&#322;asno&#347;ci drzewa rozbioru z korzeniem wyprowadzonym z tej produkcji, zale&#380;ne od w&#322;asno&#347;ci poddrzew. Po prawej stronie produkcji, zamiast nieterminali wstawiamy term A'_i_' opisuj&#261;cy interesuj&#261;ce nas w&#322;asno&#347;ci, oraz relacj&#281; R'_i_', w której term B opisuj&#261;cy potencjalne poddrzewo rozbioru ma by&#263; wzgl&#281;dem termu A'_i_'. Trzy rodzaje relacji wydaj&#261; si&#281; rozs&#261;dne, w &#380;argonie j&#281;zyków programowania nazywaj&#261; si&#281; one: "pozycja inwariantna" (=), "pozycja kowariantna" (<), "pozycja kontrawariantna" (>). Buduj&#261;c drzewo rozbioru zdania pilnujemy niesprzeczno&#347;ci wymaga&#324;. Przyk&#322;ady (''italik&#261;'' oznaczone s&#261; terminale, a znakiem zapytania zmienne w termach w&#322;asno&#347;ci, tzn. w typach):
to:
!!!! [[#p212]] Inkrementacyjna unifikacja (inkrementacyjne rozstrzyganie wi&#281;zów)

!!!! [[
#p213]] Pomys&#322;y na optymalizacj&#281; parsera

!!! [[#p22]] Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych
Speagram to jednocze&#347;nie j&#281;zyk programowania oraz dynamiczny (programowalny) parser.

!!!! [[#p221]] Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
Po
lewej stronie produkcji, wstawiamy term A opisuj&#261;cy w&#322;asno&#347;ci drzewa rozbioru z korzeniem wyprowadzonym z tej produkcji, zale&#380;ne od w&#322;asno&#347;ci poddrzew. Po prawej stronie produkcji, zamiast nieterminali wstawiamy term A'_i_' opisuj&#261;cy interesuj&#261;ce nas w&#322;asno&#347;ci, oraz relacj&#281; R'_i_', w której term B opisuj&#261;cy potencjalne poddrzewo rozbioru ma by&#263; wzgl&#281;dem termu A'_i_'. Trzy rodzaje relacji wydaj&#261; si&#281; rozs&#261;dne, w &#380;argonie j&#281;zyków programowania nazywaj&#261; si&#281; one: "pozycja inwariantna" (=), "pozycja kowariantna" (<), "pozycja kontrawariantna" (>). Buduj&#261;c drzewo rozbioru zdania pilnujemy niesprzeczno&#347;ci wymaga&#324;. Przyk&#322;ady (''italik&#261;'' oznaczone s&#261; terminale, a znakiem zapytania zmienne w termach w&#322;asno&#347;ci, tzn. w typach):
Changed line 59 from:
!!!! Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
to:
!!!! [[#p222]] Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
Changed line 64 from:
!! Gramatyki zale&#380;no&#347;ci (dependency grammars)
to:
!! [[#p3]] Gramatyki zale&#380;no&#347;ci (dependency grammars)
Changed line 67 from:
!!! Struktura (drzewa) rozbioru
to:
!!! [[#p31]] Struktura (drzewa) rozbioru
Changed line 72 from:
!!! Constraint Programming
to:
!!! [[#p32]] Constraint Programming
Added lines 74-78:

!! [[#p4]] Od sk&#322;adni do semantyki

!!! [[#p41]] Gramatyki Montague'a
[[http://www-personal.umich.edu/~akao/MontagueGrammar.pdf]]
Added lines 50-52:

!!! Constraint Programming
Kompletny tutorial implementacji parsera dla "dependency grammar" na bazie programowania wi&#281;zów: [[http://citeseer.ist.psu.edu/duchier00constraint.html]].
Changed line 46 from:
!!! Struktura drzewa rozbioru
to:
!!! Struktura (drzewa) rozbioru
Added line 49:
Samemu rozwi&#261;zywaniu wi&#281;zów jest wszystko jedno, jak&#261; struktur&#281; narzucimy na graf, wi&#281;c mo&#380;emy "zrelaksowa&#263;" prototypowy warunek, &#380;eby struktur&#261; rozbioru by&#322;o drzewo. Spotka&#322;em si&#281; z formalizmami, w których wymaga si&#281;, &#380;eby to by&#322; graf acykliczny (DAG). Praktyczne wydaje si&#281; zezwolenie na cykle, mo&#380;e ograniczone do klik, np. &#380;eby wyra&#380;a&#263; zwi&#261;zki koordynacji (tzn. konstrukcje z&#322;o&#380;one wspó&#322;rz&#281;dnie, np. "A i B"), z którymi "dependency grammars" maj&#261; pewne problemy.
Added lines 1-2:
''[Na marginesie: s&#322;ów'' '''w&#281;ze&#322;''' ''i'' '''wierzcho&#322;ek''' ''u&#380;ywam zamiennie (tzn. u&#380;ywam pierwszego bo jest krótsze).]''
Changed lines 47-48 from:
Aby zaprogramowa&#263; ca&#322;e parsowanie jako problem rozwi&#261;zywania wi&#281;zów, potrzebujemy reprezentowa&#263; drzewo rozbioru w dziedzinie wi&#281;zów, której u&#380;ywamy.
to:
Aby zaprogramowa&#263; ca&#322;e parsowanie jako problem rozwi&#261;zywania wi&#281;zów, potrzebujemy reprezentowa&#263; dowolne drzewo rozbioru w dziedzinie wi&#281;zów, której u&#380;ywamy. Reprezentowa&#263; dowolne drzewo o li&#347;ciach b&#281;d&#261;cych s&#322;owami ustalonego zdania jest trudno -- jest ich niesko&#324;czenie wiele. Musimy wi&#281;c ograniczy&#263; ilo&#347;&#263; w&#281;z&#322;ów wewn&#281;trznych nie posiadaj&#261;cych rozga&#322;&#281;zie&#324;. Najpro&#347;ciej jest wykluczy&#263; takie w&#281;z&#322;y. Zauwa&#380;my, &#380;e wtedy w&#281;z&#322;ów wewn&#281;trznych jest o jeden mniej ni&#380; li&#347;ci, mo&#380;emy wi&#281;c ka&#380;demu w&#281;z&#322;owi wewn&#281;trznemu przyporz&#261;dkowa&#263; li&#347;&#263;. Mi&#322;o by&#322;oby, gdyby sama gramatyka z ka&#380;dym w&#281;z&#322;em drzewa rozbioru wi&#261;za&#322;a li&#347;&#263;-terminal-s&#322;owo zdania. Okazuje si&#281;, &#380;e takie gramatyki s&#261; naturalne, pracowa&#322; nad nimi m.in. Lucien Tesniere, g&#322;ówn&#261; prac&#281; "Elements de syntaxe structurale" wyda&#322; w 1959, wi&#281;c równolegle z pracami Chomsky'ego.
Added lines 43-45:

!!! Struktura drzewa rozbioru
Aby zaprogramowa&#263; ca&#322;e parsowanie jako problem rozwi&#261;zywania wi&#281;zów, potrzebujemy reprezentowa&#263; drzewo rozbioru w dziedzinie wi&#281;zów, której u&#380;ywamy.
Added lines 41-42:
!! Gramatyki zale&#380;no&#347;ci (dependency grammars)
Parsowanie dla gramatyk struktur frazowych istotnie wykorzystuje kolejno&#347;&#263; w&#281;z&#322;ów drzewa. Nie jest to korzystne w przypadku j&#281;zyków o zdaniach ze swobodnym szykiem. Szyk wyrazów nie musi by&#263; istotnym elementem sk&#322;adni: mo&#380;emy rozpatrywa&#263; przynale&#380;no&#347;&#263; do j&#281;zyka modulo permutacja s&#322;ów zdania. Aby parsowa&#263; z pomini&#281;ciem szyku, nale&#380;y znale&#378;&#263; jaki&#347; odpowiednik programowania dynamicznego, który pozwoli inkrementacyjnie budowa&#263; drzewo rozbioru. Ogólnych metod rozwi&#261;zywania problemów o naturze kombinatorycznej dostarcza ''programowanie wi&#281;zów''. Pierwszym j&#281;zykiem programowania wi&#281;zów by&#322; Prolog, ale obecne j&#281;zyki / techniki programowania wi&#281;zów s&#261; skuteczniejsze, zaopatrzone w bogatsze logiki i wydajniejsze mechanizmy (dziedziny). Jak widzieli&#347;my ju&#380; wcze&#347;niej, parsery gramatyk unifikacyjnych buduj&#261; drzewo oblicze&#324; (gramatyki potraktowanej jako) program w Prologu, przyci&#281;te przez algorytm dynamiczny wi&#261;&#380;&#261;cy porz&#261;dek (liniowy) w&#281;z&#322;ów drzewa z porz&#261;dkiem s&#322;ów zdania. Nasz obecny pomys&#322; na parsowanie, to pomini&#281;cie "przycinania z zewn&#261;trz", ale wykorzystanie wspó&#322;czesnych technik programowania wi&#281;zów.
Changed lines 39-40 from:
S&#261; dwie mo&#380;liwe interpretacje etykiet brakuj&#261;cych w opisie: sensowna formalnie interpretacja abstrakcyjna oraz praktyczna interpretacja polimorficzna. Interpretacja abstrakcyjna pod niewyspecyfikowane warto&#347;ci etykiet podstawia @@Top@@, a interpretacja polimorficzna ignoruje etykiety nie wyst&#281;puj&#261;ce jednocze&#347;nie po obu stronach porównania. W interpretacji abstrakcyjnej [@ NP[number=singular] @] oznacza zbiór wszystkich fraz rzeczownikowych w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest &#347;ci&#347;le konkretniejszy od tego typu), a w interpretacji polimorficznej [@ NP[number=singular] @] oznacza pewn&#261; fraz&#281; rzeczownikow&#261; w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest i konkretniejszy i ogólniejszy od tego typu). Interpretacja polimorficzna okazuje si&#281; by&#263; wygodniejsza przy pisaniu gramatyk, ''It doesn't work in theory, but it works in practice...'' (Obecnie mamy w Speagramie interpretacj&#281; polimorficzn&#261;, uzyska&#322;em j&#261; z abstrakcyjnej przez wyci&#281;cie fragmentów kodu.)
to:
S&#261; dwie mo&#380;liwe interpretacje etykiet brakuj&#261;cych w opisie: sensowna formalnie interpretacja abstrakcyjna oraz praktyczna interpretacja polimorficzna. Interpretacja abstrakcyjna pod niewyspecyfikowane warto&#347;ci etykiet podstawia @@Top@@, a interpretacja polimorficzna ignoruje etykiety nie wyst&#281;puj&#261;ce jednocze&#347;nie po obu stronach porównania. W interpretacji abstrakcyjnej [@ NP[number=singular] @] oznacza zbiór wszystkich fraz rzeczownikowych w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest &#347;ci&#347;le konkretniejszy od tego typu), a w interpretacji polimorficznej [@ NP[number=singular] @] oznacza pewn&#261; fraz&#281; rzeczownikow&#261; w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest i konkretniejszy i ogólniejszy od tego typu). Interpretacja polimorficzna okazuje si&#281; by&#263; wygodniejsza przy pisaniu gramatyk, ''It doesn't work in theory, but it works in practice...'' (Obecnie mamy w Speagramie interpretacj&#281; polimorficzn&#261;.)
Changed lines 37-38 from:
W Speagramie typy (czyli cechy) s&#261; symbolami lub odwzorowaniami z etykiet w typy. Mamy te&#380; ''domy&#347;lne etykiety symboli'': je&#347;li domy&#347;ln&#261; etykiet&#261; symbolu @@NP@@ jest @@cat@@ a domy&#347;ln&#261; etykiet&#261; symbolu @@masculine@@ jest @@gender@@, to [@ NP[gender=masculine, number=?n] = [cat=NP, gender=?g, number=?n] = masculine[cat=NP, number=?n] @].
to:
W Speagramie typy (czyli cechy) s&#261; symbolami lub odwzorowaniami z etykiet w typy. Mamy te&#380; ''domy&#347;lne etykiety symboli'': je&#347;li domy&#347;ln&#261; etykiet&#261; symbolu @@NP@@ jest @@POS@@ a domy&#347;ln&#261; etykiet&#261; symbolu @@masculine@@ jest @@gender@@, to [@ NP[gender=masculine, number=?n] = [POS=NP, gender=?g, number=?n] = masculine[POS=NP, number=?n] @].
Changed lines 37-40 from:
W Speagramie typy (czyli cechy) s&#261; symbolami lub odwzorowaniami z etykiet w typy. Tzn. je&#347;li domy&#347;ln&#261; etykiet&#261; symbolu @@NP@@ jest @@cat@@, to [@NP[gender=?g, number=?n] = [cat=NP, gender=?g, number=?n]@].
to:
W Speagramie typy (czyli cechy) s&#261; symbolami lub odwzorowaniami z etykiet w typy. Mamy te&#380; ''domy&#347;lne etykiety symboli'': je&#347;li domy&#347;ln&#261; etykiet&#261; symbolu @@NP@@ jest @@cat@@ a domy&#347;ln&#261; etykiet&#261; symbolu @@masculine@@ jest @@gender@@, to [@ NP[gender=masculine, number=?n] = [cat=NP, gender=?g, number=?n] = masculine[cat=NP, number=?n] @].

S&#261; dwie mo&#380;liwe interpretacje etykiet brakuj&#261;cych w opisie: sensowna formalnie interpretacja abstrakcyjna oraz praktyczna interpretacja polimorficzna. Interpretacja abstrakcyjna pod niewyspecyfikowane warto&#347;ci etykiet podstawia @@Top@@, a interpretacja polimorficzna ignoruje etykiety nie wyst&#281;puj&#261;ce jednocze&#347;nie po obu stronach porównania. W interpretacji abstrakcyjnej [@ NP[number=singular] @] oznacza zbiór wszystkich fraz rzeczownikowych w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest &#347;ci&#347;le konkretniejszy od tego typu), a w interpretacji polimorficznej [@ NP[number=singular] @] oznacza pewn&#261; fraz&#281; rzeczownikow&#261; w liczbie pojedynczej ([@ NP[gender=masculie, number=singular] @] jest i konkretniejszy i ogólniejszy od tego typu). Interpretacja polimorficzna okazuje si&#281; by&#263; wygodniejsza przy pisaniu gramatyk, ''It doesn't work in theory, but it works in practice...'' (Obecnie mamy w Speagramie interpretacj&#281; polimorficzn&#261;, uzyska&#322;em j&#261; z abstrakcyjnej przez wyci&#281;cie fragmentów kodu.)

Changed lines 8-37 from:
!!
to:
!! Gramatyki struktur frazowych
Mam na my&#347;li gramatyki bazuj&#261;ce na CFG lub na gramatykach kategorialnych, wspierane przez wi&#281;zy wyra&#380;aj&#261;ce ograniczenia sk&#322;adniowe i semantyczne. Cz&#281;sto s&#261; one nazywane gramatykami unifikacyjnymi lub atrybutowymi.

!!! Obecny Speagram: troch&#281; ogólniejsze gramatyki struktur frazowych
Speagram to jednocze&#347;nie j&#281;zyk programowania oraz dynamiczny (programowalny) parser.

!!!! Praser CFG: algorytm Earleya.
Zacznijmy od parsowania CFG:
[[http://www.cs.chalmers.se/~peb/pubs/p04-chart-pearl.pdf | Functional Pearls: Functional Chart Parsing of Context Free Grammars]]  by Peter Ljunglöf.

!!!! Nieterminale to typy, ale typy mog&#261; posiada&#263; bogat&#261; struktur&#281;.
Nast&#281;pnie dodajemy atrybuty: po lewej stronie produkcji, wstawiamy term A opisuj&#261;cy w&#322;asno&#347;ci drzewa rozbioru z korzeniem wyprowadzonym z tej produkcji, zale&#380;ne od w&#322;asno&#347;ci poddrzew. Po prawej stronie produkcji, zamiast nieterminali wstawiamy term A'_i_' opisuj&#261;cy interesuj&#261;ce nas w&#322;asno&#347;ci, oraz relacj&#281; R'_i_', w której term B opisuj&#261;cy potencjalne poddrzewo rozbioru ma by&#263; wzgl&#281;dem termu A'_i_'. Trzy rodzaje relacji wydaj&#261; si&#281; rozs&#261;dne, w &#380;argonie j&#281;zyków programowania nazywaj&#261; si&#281; one: "pozycja inwariantna" (=), "pozycja kowariantna" (<), "pozycja kontrawariantna" (>). Buduj&#261;c drzewo rozbioru zdania pilnujemy niesprzeczno&#347;ci wymaga&#324;. Przyk&#322;ady (''italik&#261;'' oznaczone s&#261; terminale, a znakiem zapytania zmienne w termach w&#322;asno&#347;ci, tzn. w typach):

  rewrite_rule <- ''let'' (> ?a) ''be'' (< ?a)

z przedchodnio&#347;ci, ta produkcja jest równowa&#380;na nast&#281;puj&#261;cym:

  rewrite_rule <- ''let'' (> ?a) ''be'' (= ?a)
  rewrite_rule <- ''let'' (= ?a) ''be'' (< ?a)

Konstrukcja z j&#281;zyków programowania. [@ let X be Y @] oznacza, &#380;e @@X@@ oblicza si&#281; do @@Y@@. &#379;eby to by&#322;o dopuszczalne, @@Y@@ki musz&#261; by&#263; @@X@@ami, tzn. typ @@Y@@ka musi by&#263; podtypem @@X@@a.

  NP[gender=?g, number=?n] <- (> ADJ[gender=?g, number=?n]) (= NP[gender=?g, number=?n])
  NP[gender=?g, number=?n] <- (= N[gender=?g, number=?n])

Przymiotnik opisuj&#261;cy fraz&#281; rzeczownikow&#261; mo&#380;e mie&#263; typ ogólniejszy ni&#380; ta fraza, na przyk&#322;ad mo&#380;e by&#263; rodzaju m&#281;skiego [@gender=m@], który jest nadtypem rodzajów @@m1@@, @@m2@@ i @@m3@@.


!!!! Etykiety i cechy. Interpretacja brakuj&#261;cych etykiet.
W Speagramie typy (czyli cechy) s&#261; symbolami lub odwzorowaniami z etykiet w typy. Tzn. je&#347;li domy&#347;ln&#261; etykiet&#261; symbolu @@NP@@ jest @@cat@@, to [@NP[gender=?g, number=?n] = [cat=NP, gender=?g, number=?n]@].
Added lines 1-8:
!! Analiza morfologiczna (Computational Morphology, word tagging)
Rozbiór zdania nie musi zatrzymywa&#263; si&#281; na poziomie s&#322;owa: automatycznemu podzia&#322;owi s&#322;owa na morfemy mo&#380;emy zmniejszy&#263; wielko&#347;&#263; s&#322;ownika, a nawet radzi&#263; sobie z nieznanymi s&#322;owami. Dla przyk&#322;adu, system konwersacyjny mo&#380;e swobodnie zapyta&#263; u&#380;ytkownika o znaczenie wyrazu, kiedy jego rola gramatyczna jest dzi&#281;ki analizie w pe&#322;ni okre&#347;lona i znane s&#261; wzorce odmiany.

Jedno z zada&#324; polega&#322;o na zapoznaniu si&#281; z gramatykami (czyli.. s&#322;ownikami) programu sprawdzaj&#261;cego pisowni&#281; @@ispell@@: [[http://ficus-www.cs.ucla.edu/geoff/ispell.html]], [[http://ispell-pl.sourceforge.net/]].

Wydajne techniki analizy morfologicznej w OCamlu: [[http://pauillac.inria.fr/~huet/PUBLIC/tagger.pdf]]

!!
Edit · History · Print · Recent Changes · Search · Links
Page last modified on May 06, 2007, at 03:29 AM