Link Grammar - Instytut Informatyki

Transkrypt

Link Grammar - Instytut Informatyki
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Link Grammar
Inne przykłady
Algorytm
Siła wyrazu
Jakub Michaliszyn
Instytut Informatyki Uniwersytetu Wrocławskiego
25 marca 2007
Informacje o parserze
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Informacje o parserze
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
The Link Grammar Parser
Najpopularniejszy parser Link Grammar można znaleźć pod adresem
http://www.link.cs.cmu.edu/link/.
Informacje o parserze
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
The Link Grammar Parser
Najpopularniejszy parser Link Grammar można znaleźć pod adresem
http://www.link.cs.cmu.edu/link/. Posiada on gotowy słownik
dla języka angielskiego.
Informacje o parserze
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
The Link Grammar Parser
Najpopularniejszy parser Link Grammar można znaleźć pod adresem
http://www.link.cs.cmu.edu/link/. Posiada on gotowy słownik
dla języka angielskiego. Niestety, nie obsługuje polskich znaków.
Informacje o parserze
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
The Link Grammar Parser
Najpopularniejszy parser Link Grammar można znaleźć pod adresem
http://www.link.cs.cmu.edu/link/. Posiada on gotowy słownik
dla języka angielskiego. Niestety, nie obsługuje polskich znaków.Jest
on rozpowszechniany na licencji zbliżonej do GPL, w szczególności w
sieci dostępny jest jego kod źródłowy.
Język an b n
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Język an b n
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Słownik:
a: G+;
b: {B-} & G- & {B+} ;
Język an b n
Link Grammar
Jakub
Michaliszyn
Słownik:
a: G+;
b: {B-} & G- & {B+} ;
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
linkparser> a a a a a b b b b b
++++Time
0.00 seconds (0.00 total)
Found 1 linkage (1 had no P.P. violations)
Unique linkage, cost vector = (UNUSED=0 DIS=0 AND=0 LEN=20)
+--------G--------+
| +------G------+ |
| | +----G----+ | |
| | | +--G--+ | | |
| | | | +G+B+B+B+B+
| | | | | | | | | |
a a a a a b b b b b
Pominięcie znaku
Link Grammar
Jakub
Michaliszyn
Słownik:
a: G+;
b: {B-} & G- & {B+} ;
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
linkparser> a a a a b b b
No complete linkages found.
++++Time 0.02 seconds (0.02 total)
Found 3 linkages (3 had no P.P. violations) at null count 1
Algorytm
Linkage 1, cost vector = (UNUSED=1 DIS=0 AND=0 LEN=7)
Siła wyrazu
+------G------+
|
+--G--+ |
|
| +G+B+B+
|
| | | | |
a [a] a a b b b
Press RETURN for the next linkage
.
Zapobieganie pomijaniu
Link Grammar
Jakub
Michaliszyn
Słownik:
a: G+;
b: {B-} & G- & {B+} ;
Przykłady
Wstęp
Język an b n
Algorytm
linkparser> b b b a a a
No complete linkages found.
++++Time 0.00 seconds (0.02 total)
Found 1 linkage (1 had no P.P. violations) at null count 5
Unique linkage, cost vector = (UNUSED=6 DIS=0 AND=0 LEN=0)
Siła wyrazu
[b] [b] [b] [a] [a] [a]
Używanie kosztów
Inne przykłady
Zapobieganie pomijaniu
Link Grammar
Jakub
Michaliszyn
Słownik:
a: G+;
b: {B-} & G- & {B+} ;
Przykłady
Wstęp
Język an b n
Algorytm
linkparser> b b b a a a
No complete linkages found.
++++Time 0.00 seconds (0.02 total)
Found 1 linkage (1 had no P.P. violations) at null count 5
Unique linkage, cost vector = (UNUSED=6 DIS=0 AND=0 LEN=0)
Siła wyrazu
[b] [b] [b] [a] [a] [a]
Używanie kosztów
Inne przykłady
linkparser> !null
Null links turned off.
linkparser> b b b a a a
No complete linkages found.
++++Time 0.00 seconds (0.02 total)
System kosztów
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Słownik:
slonce: S+ or O- or [S-] or [O+];
pokonal: (S- & O+) or (S+ & O-);
cien: S+ or O- or [S-] or [O+];
System kosztów
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Słownik:
slonce: S+ or O- or [S-] or [O+];
pokonal: (S- & O+) or (S+ & O-);
cien: S+ or O- or [S-] or [O+];
Siła wyrazu
linkparser> slonce pokonal cien
Found 2 linkages (2 had no P.P. violations)
Linkage 1, cost vector = (UNUSED=0 DIS=0 AND=0 LEN=0)
+---S--+---O--+
|
|
|
slonce pokonal cien
System kosztów
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Słownik:
slonce: S+ or O- or [S-] or [O+];
pokonal: (S- & O+) or (S+ & O-);
cien: S+ or O- or [S-] or [O+];
Siła wyrazu
linkparser> slonce pokonal
Found 2 linkages (2 had no
Linkage 1, cost vector =
+---S--+---O--+
|
|
|
slonce pokonal cien
Linkage 2, cost vector =
+---O--+---S--+
|
|
|
slonce pokonal cien
cien
P.P. violations)
(UNUSED=0 DIS=0 AND=0 LEN=0)
(UNUSED=0 DIS=2 AND=0 LEN=0)
The party last week was a big success
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Obserwacja
Nie zawsze najkrótsze łączenie jest najlepsze.
The party last week was a big success
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Obserwacja
Nie zawsze najkrótsze łączenie jest najlepsze.
Algorytm
Siła wyrazu
Linkage 1, cost vector = (UNUSED=0 DIS=1 AND=0 LEN=15)
+---------Ss---------+------Ost------+
+------Mpn-----+
|
+----Dsu----+
+--Ds-+
+--DTi-+
|
|
+---A---+
|
|
|
|
|
|
|
|
the party.n last.a week.t was.v a big.a success.n
Linkage 2, cost vector = (UNUSED=0 DIS=2 AND=0 LEN=14)
+------Ost------+
+---------Ss---------+
+----Dsu----+
+--Ds-+
+--DTi-+--E--+
|
+---A---+
|
|
|
|
|
|
|
|
the party.n last.a week.t was.v a big.a success.n
NLP is cool
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Obserwacja
Dołączony słownik języka angielskiego nie jest bez wad.
NLP is cool
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Obserwacja
Dołączony słownik języka angielskiego nie jest bez wad.
Algorytm
Siła wyrazu
linkparser> Natural Language Processing is cool
Linkage 1, cost vector = (UNUSED=0 DIS=2 AND=0 LEN=8)
+---------A---------+
|
+----G----+---Ss--+--Pa-+
|
|
|
|
|
natural.a Language Processing is.v cool.a
Linkage 2, cost vector = (UNUSED=0 DIS=3 AND=0 LEN=8)
+---------GN--------+
|
+----G----+---Ss--+--Pa-+
|
|
|
|
|
natural.n Language Processing is.v cool.a
Użycie LEFT-WALL
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
linkparser> Paint the sky with stars
Linkage 1, cost vector = (UNUSED=0 DIS=0 AND=0 LEN=8)
+-------MVp------+
+----Os----+
|
+---Wi---+
+-Dmu+
+--Jp-+
|
|
|
|
|
|
LEFT-WALL paint.v the sky.n with stars.n
Linkage 2, cost vector = (UNUSED=0 DIS=1 AND=0 LEN=6)
+----Os----+
+---Wi---+
+-Dmu+--Mp-+--Jp-+
|
|
|
|
|
|
LEFT-WALL paint.v the sky.n with stars.n
Postawowe informacje
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Postawowe informacje
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
n
Język a b
n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Opis algorytmu
Algorytm wykładniczy – sprawdzanie wszystkich możliwych połączeń
dla wszystkich dyzjunktów.
Postawowe informacje
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
n
Język a b
n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Opis algorytmu
Algorytm wykładniczy – sprawdzanie wszystkich możliwych połączeń
dla wszystkich dyzjunktów. Algorytm wielomianowy – dodanie
spamiętywania do algorytmu wykładniczego.
Postawowe informacje
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
n
Język a b
n
Używanie kosztów
Opis algorytmu
Algorytm wykładniczy – sprawdzanie wszystkich możliwych połączeń
dla wszystkich dyzjunktów. Algorytm wielomianowy – dodanie
spamiętywania do algorytmu wykładniczego.
Inne przykłady
Algorytm
Siła wyrazu
Szczegóły
Daniel D. K. Sleator, Davy Temperley, Parsing English with a Link
Grammar, strony 27-31:
http://www.link.cs.cmu.edu/link/ftp-site/link-grammar/
LG-tech-report.pdf
Postawowe informacje
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
n
Język a b
n
Używanie kosztów
Opis algorytmu
Algorytm wykładniczy – sprawdzanie wszystkich możliwych połączeń
dla wszystkich dyzjunktów. Algorytm wielomianowy – dodanie
spamiętywania do algorytmu wykładniczego.
Inne przykłady
Algorytm
Siła wyrazu
Szczegóły
Daniel D. K. Sleator, Davy Temperley, Parsing English with a Link
Grammar, strony 27-31:
http://www.link.cs.cmu.edu/link/ftp-site/link-grammar/
LG-tech-report.pdf
Koszt
O(N 3 )
Categorial Link Grammars
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Categorial Link Grammars
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Bezkontekstowość
Okazuje się, że Link Grammars są równoważne gramatykom
bezkontekstowym.
Categorial Link Grammars
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Bezkontekstowość
Okazuje się, że Link Grammars są równoważne gramatykom
bezkontekstowym. Formalny dowód jest nieco żmudny, więc go
pominiemy.
Categorial Link Grammars
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Bezkontekstowość
Okazuje się, że Link Grammars są równoważne gramatykom
bezkontekstowym. Formalny dowód jest nieco żmudny, więc go
pominiemy. Można natomiast „elegancko”pokazać równoważność
między Link Grammars bez cykli a Categorial Grammars,
wykorzystując formalizm pośredni, zwany Categorial Link Grammars.
Categorial Link Grammars
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Bezkontekstowość
Okazuje się, że Link Grammars są równoważne gramatykom
bezkontekstowym. Formalny dowód jest nieco żmudny, więc go
pominiemy. Można natomiast „elegancko”pokazać równoważność
między Link Grammars bez cykli a Categorial Grammars,
wykorzystując formalizm pośredni, zwany Categorial Link Grammars.
Szczegóły: Erwan Moreau, From link grammars to categorial grammars
http://www.sciences.univ-nantes.fr/info/perso/
permanents/moreau/publis/moreau_cg04.pdf
NDPA
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Szkic dowodu bezkontekstowości
NDPA
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Szkic dowodu bezkontekstowości
Dla danej grmatyki budujemy niedeterministyczny automat
skończony.
NDPA
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Szkic dowodu bezkontekstowości
Dla danej grmatyki budujemy niedeterministyczny automat
skończony. Taki automat niedeterministycznie wybiera dyzjunkt,
następnie ściąga symbole oznaczone minusem (czyli „linki
wychodzące w lewo”) ze stosu i wkłada nań symbole oznaczone
plusem.
NDPA
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Szkic dowodu bezkontekstowości
Dla danej grmatyki budujemy niedeterministyczny automat
skończony. Taki automat niedeterministycznie wybiera dyzjunkt,
następnie ściąga symbole oznaczone minusem (czyli „linki
wychodzące w lewo”) ze stosu i wkłada nań symbole oznaczone
plusem.Trzeba też „ jakoś”dbać o zasadę wykluczania, np. oznaczając
na stosie dodatkowo zerami i jedynkami, czy symbol pochodzi z tego
samego słowa.
NDPA
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Szkic dowodu bezkontekstowości
Dla danej grmatyki budujemy niedeterministyczny automat
skończony. Taki automat niedeterministycznie wybiera dyzjunkt,
następnie ściąga symbole oznaczone minusem (czyli „linki
wychodzące w lewo”) ze stosu i wkłada nań symbole oznaczone
plusem.Trzeba też „ jakoś”dbać o zasadę wykluczania, np. oznaczając
na stosie dodatkowo zerami i jedynkami, czy symbol pochodzi z tego
samego słowa. Nasz automat akceptuje przy pustym stosie. Jeśli
pusty stos jest otrzymany po jakimś słowie przed końcem zdania, to
automat nie akceptuje zdania (bo budowany graf jest niespójny).
NDPA
Link Grammar
Jakub
Michaliszyn
Przykłady
Wstęp
Język an b n
Używanie kosztów
Inne przykłady
Algorytm
Siła wyrazu
Szkic dowodu bezkontekstowości
Dla danej grmatyki budujemy niedeterministyczny automat
skończony. Taki automat niedeterministycznie wybiera dyzjunkt,
następnie ściąga symbole oznaczone minusem (czyli „linki
wychodzące w lewo”) ze stosu i wkłada nań symbole oznaczone
plusem.Trzeba też „ jakoś”dbać o zasadę wykluczania, np. oznaczając
na stosie dodatkowo zerami i jedynkami, czy symbol pochodzi z tego
samego słowa. Nasz automat akceptuje przy pustym stosie. Jeśli
pusty stos jest otrzymany po jakimś słowie przed końcem zdania, to
automat nie akceptuje zdania (bo budowany graf jest niespójny).
Pełen dowód
Daniel D. K. Sleator, Davy Temperley, Parsing English with a Link
Grammar, strony 86-90:
http://www.link.cs.cmu.edu/link/ftp-site/link-grammar/
LG-tech-report.pdf

Podobne dokumenty