520 likes | 814 Views
Inżynieria lingwistyczna. sprawy organizacyjne . Zasady zaliczania zajęć. Wariant I: egzamin – pytania o podstawowe informacje z wykładów, proste zadania praktyczne (na papierze); lista pytań i przykłady zadań będą podane na min 2 tyg. przed egzaminem Wariant 2:
E N D
Inżynieria lingwistyczna sprawy organizacyjne
Zasady zaliczania zajęć • Wariant I: egzamin – pytania o podstawowe informacje z wykładów, proste zadania praktyczne (na papierze); lista pytań i przykłady zadań będą podane na min 2 tyg. przed egzaminem • Wariant 2: • uczęszczanie na wykład oraz • przygotowanie projektu: będzie to niewielkie zadanie do zrealizowania w systemie SProUT (udostępnię płytę z programem); na ogół wymagało będzie zgromadzenia niewielkiego zbioru danych ok. 200K-500K tekstu z sieci na zadany temat, napisania niewielkiego programu i 1 strony opisu
Plany zatydzień (23.03) • podstawowe fakty o składni • gramatyki formalne za dwa tygodnie (30.03) • cd. opisu składni • unifikacja struktur atrybutów • program SProUT (tokenizacja, analiza morfologiczna, powierzchniowa analiza składniowa) za trzy tygodnie (6.04) • przykładowa gramatyka w systemie SProUT • pierwsza lista tematów projektów
Inżynieria lingwistyczna dokończenie wykładu 1
Poziomy wiedzy o języku naturalnym nazwa dziedziny obszar zainteresowania fonetyka dźwięki fonologia dźwięki należące do języka ortografia zasady pisowni morfologia struktura/formy wyrazów składnia zależności strukturalne między słowami (budowa fraz) semantyka znaczenie pojedynczego zdania pragmatyka znaczenie w kontekście zależności międzyzdaniowe(discourse)
Semantyka ustalenie co jest znaczeniem konkretnego wyrażenia w języku naturalnym (rozpoznanie obiektów, relacji między nimi, ...) czyli „kolejny etap analizy”: maładziewczyka dała bukiet fiołków mamie --> [mała mod dziewczynka] podmiot dać [ bukiet fiołkówmod] dopełnienie [ mama ] dopełnienie --> [małamody dziewczynka]aktor daćakcja [ bukietfiołkówel.skladowy]obiekt [ mama ] odbiorca
Semantyka, problemy • Co to właściwie jestznaczenie wyrażenia w języku naturalnym ? • Jak budować znaczenie zdania ze znaczenia fraz • Niepełność wszystkich dostępnych sposbów opisu znaczenia (zawsze spotkamy sytuację, dla której nie mamy dobrej reguły) • Kłopoty obliczeniowe, jeśli chcemy korzystać z bardziej zaawansowanych sposobów reprezentacji (logiki) • I jak zawsze niejednoznaczności
Semantyka, niejednoznaczności • Piła!okrzyk radości ma widok zgubionej piły, niezbyt pochlebna ocena nauczyciela, wyraz zdegustowania nadużyciem alkoholu (pierwsze dwie interpretacje semantyczne mają taką samą interpretację morfologiczną i syntaktyczną (‘piła’ jest tu rzeczownikiem w mianowniku), trzecia inną (‘piła’ to czasownik) • Uszył jej buty - wyrażenie idiomatyczne lub opis efektu pracy szewca • „nawiasowanie” negacji • Nie zrobisz tego? Nie (nie zrobię albo właśnie, że zrobię) • wiązane zaimków • Jan kazał Piotrowi wyczyścić swoje buty.
Pragmatyka interpretacja wypowiedzi w konkretnym kontekście, w odniesieniu do wiedzy o świecie Informacje zewnętrzne pozwalają człowiekowi poprawnie rozstrzygać wiele niejednoznaczności, np. Pacjent opuścił salę operacyjną w dobrym stanie 1 pacjent opuścił [salę operacyjną] [w dobrym stanie] mod_pacjenta 2 pacjent opuścił [salę operacyjną [w dobrym stanie] mod_sali] (doświadczenie przemawia za interpretacją 1)
Inżynieria lingwistyczna Agnieszka Mykowiecka Instytut Podstaw Informatyki, PAN agn@ipipan.waw.pl materiały z wykładów na stronie: http:\\www.ipipan.waw.pl\~agn\inl.htm
2. Formalny opis języków naturalnych. Tokeny (segmenty) i tokenizacja (segmentacja) Słowa i analiza morfologiczna.
Segmentacja (tokenizacja) • pierwszym zadaniem jest stwierdzenie z jakimi słowami (i innymi elementami tekstu) mamy do czynienia. Ala ma kota. 20.10.2001 Jerzy K. wrócił do Jeleniej Góry. Zadanie tokenizatora: • identyfikacja podstawowych elementów tekstu • ewentualnie podział na zdania
Tokenizacja Najczęściej wyróżniane typy segmentów, czyli klasytokenowe to: • ciąg małych liter poprzedzonych wielką literą, np. Kraków, • ciąg składający się tylko z wielkich liter, np. PZU, • ciąg małych liter, np. dom • ciąg liter małych i wielkich, np. PeKaO • ciąg cyfr, • ciąg cyfr z wewnętrzną kropką lub przecinkiem, • data, • znak interpunkcyjny, • tokeny charakterystyczne dla określonych zastosowań, np. tag języka HTML, adress e-mail, adres strony www.
Podstawowe problemy • Zdanie kończy się zazwyczaj kropką, ale też ‘? ! …’ • Co on powiedział? Idź stąd! • Nie każda kropka kończy zdanie: • daty, liczby: 1.1.2007, 1.000.000, www.pjwstk.edu.pl • skróty zakończone kropką: itd., itp., prof., inż., lek. med. • Niektóre kropki mają znaczenie podwójne: • Bitwa pod Susą miała miejsce w 1629r. W wyniku bitwy Francuzi zajęli w 1630r. Sabaudię. • PRL-u, polsko-angielski
Przykłady • W IEEE 802.11g długość pola synchronizacyjnego wynosi 56 bitów (short preamble), natomiast w 802.11b - 128 bitów. W naszym kraju dla częstotliwości 2,4 GHz, a więc dla sieci 802.11b i g, moc nadajnika nie powinna przekraczać 100mW. Tekst ten napisał dr Bogusław Kowalski. • Jaki problem z podziałem na tokeny i zdania występuje w następujących zdaniach? • Zapytaj o to dr. Kowalskiego. • To było we wrześniu 2004r. We wrześniu 2004r. jeszcze o tym nie pisano. • Zepsuł się por. Maciek zapomniał go dać por. Zdzisławowi. • Za chatą rzeczywiście stał ul. Marii tam jednak nie było. • Mieszkam na ul. Marii Konopnickiej.
Składniki wyrażeń języka naturalnego - wyrazy • typy wyrazów • wyrazy funkcyjne: i, że ... • wyrazy „leksykalne”: koń, szukać ... • idiomy: ciemno choć oko wykol, drzeć koty • frazy o znaczeniu nie będącym funkcją znaczeń składników: biały kruk, skrzynia biegów • powiązania z innymi wyrazami szukaćczego? książka o czym? z czego? czyja? dla kogo? … • słownik: zbiór informacji o słowach i charakterystycznych dla nich związkach z innymi wyrazami
Morfologia - opis słów Morfologia - nauka o budowie słów z morfemów: • temat (stem) - nośnik znaczenia • przed- i przyrostki (affixes) - nośniki cech gramatycznych lub zmiany znaczenia • fleksja (inflectional morphology) uzyskiwanie form o znaczeniu tematu mogących pełnić określone funkcje gramatyczne • słowotwórstwo (derivational morphology) np. zebrać -> zebranie
Słowotwórstwo Wiele słów pochodzi od innych, można by zatem nie umieszczać ich w słownikach, ale reguły słowotwórcze nie są wcale takie regularne: • A writer is someone that writes, and a stinger is something that stings. But finger don’t fing and ... haberdashers don’t haberdash.Richard Lederer, Crazy English • Pisarz to ktoś kto pisze, kąśliwa uwaga kąsa, ale palec nie palcuje, ... palić - palacz , czytać - czytacz chodzić - chodzenie - chód, biegać - bieganie - bieg czekać - czekanie - czek (?!) Słowotwórstwemnie będziemy się zajmować
Budowa morfologiczna języków naturalnych Analityczna: wykorzystanie wyrazów funkcyjnych • angielski, a także włoski, francuski, ..., japoński, chiński • I would have been going Fleksyjna: używanie prefiksów/suffiksów/infiksów, • j. słowiańskie: czeski, rosyjski, polski , … (ale nie bułgarski); francuski, niemiecki, arabski • (Cz. new(acc.))novou (Adj, Fem., Sg., Acc., Non-neg., Pos.) • (Pl. nowa, new(acc.)) nową (Adj, Fem., Sg., Acc.) Aglutynacyjna: każdej kategorii odpowiada osobny morfem • fiński, turecki, węgierski • (Fin. plural): -i-
Cechy wyrazów - kategoria składniowa • Wyrazynależące do danego języka naturalnego dzielą się na wiele (ok. kilkunastu) kategorii składniowych. Wyrazy z tej samej kategorii mogą występować w zdaniach w tym samym miejscu (pomijamy tu sensowność). • Najważniejsze kategorie składniowe to: • czasowniki (śpi, daje, ...)Verbs • rzeczowniki (przypadek, dom, szczęście, ...)Nouns • przymiotniki (wesoły, ...)Adjectives • przysłówki (wesoło, ...)Adverbs • przyimki (na, pod, ...)Prepositions • liczebniki(dwa, sto pięć, ...)Numerals • spójniki podrzędne (który, ponieważ, ...) • spójniki współrzędne (i, lub, oraz, ...)... Conjunctions
Cechy gramatyczne wyrazów • Wyrazy mogą mieć wiele form różniących się wartościami cech gramatycznych: • czasowniki (liczba, osoba, czas)[number, person, time] • rzeczowniki (przypadek, liczba)[case, number] • przymiotniki (przypadek, rodzaj, liczba, stopień) [case, gender, num deg] • przysłówki (stopień)[deg] • Wyrazy mogą też mieć własne (niezmienne) wartości cech: • rzeczowniki: rodzaj • czasowniki: tryb, aspekt
Cechy gramatyczne wyrazów number [liczba]singular(pojedyncza),plural(mnoga); case[przypadek]nominative(mianownik),genetive(dopełniacz),dative(celownik),accusative(biernik),instrumental(narzędnik),locative(miejscownik),vocative(wołacz); person [osoba ]1st(os. 1),2nd(os. 2),3rd(os.3) degree [stopień ]positive(równy),comparative(wyższy), superlative(najwyższy) aspect [aspekt ]imperfect(niedokonany),perfect(dokonany) negation [negacja]affirmative(twierdzenie),negative(zaprzeczenie) time[czas]present(teraźniejszy),past(przeszły), future(przyszły) ...
Cechy gramatyczne wyrazów - rodzaj gender [rodzaj] masc (męski), fem (żeński), neut (nijaki), hum-masc (męskoosobowy) - faceci nonhum-masc (niemęskoosobowy) – psy, kobiety, stoły Dodatkowo warto wprowadzić podział rodzaju męskiego na: hum-masc m1 (facet, lekarz) anim-masc m2 (kot, robak) inanim-masc m3 (stół, ołówek)
Analiza morfologiczna • Analiza morfologiczna to przypisywanie słowu formy podstawowej wyrazu oraz zestawu wartości cech gramatycznych (formą podstawowa dla rzeczowników i przymiotników jest forma mianownika liczby pojedynczej, dla czasowników bezokolicznik) • Rozpoznawanie morfemów, np.koty -> kot +N +PL+nom • metoda: kaskada FST - wyjście z jednego jest wejściem do kolejnego
Wyrażenia regularne Przykłady języków regularnych: • język owcy: be! bee! beee! beeee! … gramatyka:S -> beE E -> ! E -> eE (zapis: E -> ! |eE ) wyrażenie regularne: bee*! (be+!) • liczby całkowite gramatyka: S -> 0S | 1S | … | 9S | 0 | 1 | 2 | … | 9 wyrażenie regularne[0..9][0..9]* ([0..9]+)
Automaty • Istnieje wzajemnie jednoznaczna odpowiedniość między gramatykami regularnymi a automatami skończonymi Automat skończony • Urządzenie sekwencyjne mogące znajdować się w skończonej liczbie stanów, czytające symbol po symbolu. Przeczytanie symbolu zmienia stan urządzenia na inny i przesuwa taśmę wejściową o jedną klatkę na lewo. • Automat skończony zupełny (niekoniecznie deterministyczny) - automat Rabina Scotta (każdy automat skończony jest równoważny deterministycznemu automatowi Rabina-Scotta).
Definicja automatu Automat skończony to piątka < Q, , , qs, Qf >, gdzie • Q - skończony zbiór stanów q0,q1, ... qn • skończony zbiór symboli wejściowych (alfabet) • qs - stan początkowy Q • Qf Q zbiór stanów końcowych (akceptujących) • (q,i) tablica przejść Q -> Q ; dla danego symbolu wejściowego i stanu wartością jest stan automatu
Przykład automatu • język owcy: be! bee! beee! beeee! … gramatyka: S -> beE E -> ! E -> eE wyrażenie regularne: bee*! (be+!) automat: Q={q0,q1,q2,q3} ={a,b,c,...,z, !,?} e b e ! q0 q1 q2 q3 (jeśli alfabet jest duży (tu wszystkie litery) dla zwiększenia czytelności pomija się często przejścia dla symboli uniemożliwiających dojście do stanów akceptujących)
Przykład automatu, 2 • Formy słowaowca: owca, owcy, owcy, owcę, owcą, owcy • gramatyka: S -> owcE E -> a | y | ę | ą wyrażenie regularne: owc[ayęą] automat: q2 q3 ę a q4 owc y q0 q1 q5 ą (tu zakladamy, że mamy już rozpoznany początek i koniec słowa)
Transducery • Transducery to automaty skończone, na łukach których znajdują się pary symboli. Dla każdego przejścia przez automat otrzymujemy wiec parę powiązanych ze sobą słów. Transducer wiąże ze sobą dwa języki regularne. Prosty przykład zamiana symboli 0 i 1 (tzn. 0110 -> 1001) 1:0 q0 0:1
Transducery • Zamiana ciągów ‘ab’ na ‘x’ • ? Oznacza dowolny, nie wymieniony na innych łukach symbol • pojedynczy symbol na łuku oznacza, że kopiujemy go, np. a oznacza a:a
Automaty, rozszerzenia Automat z wyjściem: • Automat Moore’a nad alfabetem wejściowym T i wyjściowym Y nazyamy trójkę <S , M, G>, gdzie S - skończony zbiór stanów, M - funkcja przejścia S x T -> S , G: S -> Y. Automat ze stosem • automat z taśmą wejściową i taśmą (stosem) roboczym Maszyna Turinga • automatz taśmą wejściową prawostronnie nieograniczoną i obustronnie nieograniczoną taśmą roboczą, która może być przesuwana w obu kierunkach
Budowa morfologiczna języków naturalnych Analityczna: wykorzystanie wyrazów funkcyjnych • angielski, a także włoski, francuski, ..., japoński, chiński • I would have been going Fleksyjna: używanie prefiksów/suffiksów/infiksów, • j. słowiańskie: czeski, rosyjski, polski , … (ale nie bułgarski); francuski, niemiecki, arabski • (Cz. new(acc.))novou (Adj, Fem., Sg., Acc., Non-neg., Pos.) • (Pl. nowa, new(acc.)) nową (Adj, Fem., Sg., Acc.) Aglutynacyjna: każdej kategorii odpowiada osobny morfem • fiński, turecki, węgierski • (Fin. plural): -i-
Najprostsza analiza morfologiczna • bardzo prosty automat rozpoznający liczbę mnogą angielskich rzeczowników reg. plural plural (-s) q0 q1 q2 irreg-pl irreg-sg dog (q1), dogs(q2), fox(q2), foxes (q2) • dołączenie słów (przejścia po każdej literze) • modelowanie uogólnień (np. końcówki regularne typu -ing)
Prosty słownik c a t s g r ε o o s e e e car, cars, cat, cats, goose, geese ?fox, foxes
Analiza morfologiczna • Rozpoznawanie morfemów, np. koty -> kot +N +PL • FST (Finite State Transducer) dodanie taśmy (porównywanie, wypisywanie) oznacza mapowanie między dwoma poziomami opisu leksykalny -> powierzchniowy • kaskada FST - wyjście z jednego jest wejściem do kolejnego c a t +N +PL c a t s
FST - Tnum • FSA definiuje język (zbiór ciągów symboli), FST definiuje relację między dwoma zbiorami ciągów symboli: reg. noun stem +N : ε +PL : ^s# q0 q1 q4 q7 irreg-sg-noun-stem +N : ε+SG:# q2 q5 +SG:# q3 q6 + PL : # irreg-pl-noun-stem +N : ε a - skrócony zapis a:a ^ - granica morfemu # - granica słowa
FST - Tstems reg-noun-stem | cat@ :@ (cokolwiek) q0 q1 irreg-sg-noun-stem | goose irreg-pl-noun-stem | g o:e o:e s e foxes poziom leksykalny poziom pośredni f o x +N +PL f o x ^ s #
FST - Tnum Tstems • Analiza morfologiczna - kaskada (złożenie) Tstems i Tnum f o x c a t g +N: d o + PL:^s# +SG:# +PL:# m o:i u: s:c e +N :
Reguły ortograficzne • Dla pośredniej postaci tekstu możemy zdefiniować reguły implementujące różne zasady ortograficzne, np • Wprowadzenie znaczników końca morfemu pozwala na implementację reguł wprowadzania -e- między spółgłoski ‘z’, ‘s’ i ‘x’ a końcówkę -s • reguła ta może być zaimplementowana jako kolejny transducer
Kolejny poziom analizy • Analiza morfologiczna - (foxes) poziom leksykalny poziom pośredni poziom powierzchniowy f o x +N +PL f o x ^ s # f o x e s
Analizatory morfologiczne • Różnice pomiędzy analizatorami: • sposób analizy • reakcja na nieznane słowa • zestaw przyjętych znaczników morfosyntaktycznych (format zwracanych rezultatów) • raczej nie warto budować kolejnego przed sprawdzeniem istniejących
Analizatory dla polskiego • Morfeusz, http://nlp.ipipan.waw.pl/~wolinski/morfeusz/, • PoMor, analizator firmy MorphoLogic, Węgry, • analizator AMOR (IJP UW, Rabiega, Rudolf), • SAM, analizator oparty o indeks a tergo Tokarskiego (2002), dostępny bezpłatnie do celów niekomercyjnych pod adresem: http://www.mimuw.edu.pl/~kszafran/SAM-dists/, obecnie nierozwijany; • LEM, produkt firmy LEX, Poznań; prof. Zygmunt Vetulani, (vetulani@amu.edu.pl), • XeLDA, produkt firmy XEROX: tokenizer i analizator morfologiczny; wersja demo http://www.xrce.xerox.com/competencies/content-analysis/demos/polish • narzędzia Jana Daciuka do analizy morfologicznej: http://www.pg.gda.pl/~jandac/fsa.html • analizator firmy TiP, działający m.in. w programie MsWord, • baza fleksyjna języka polskiego, Kraków, AGH; prof. Wiesław Lubaszewski: http://www.icsr.agh.edu.pl/fleksbaz/, • analizator opracowany na potrzeby systemu tłumaczącego POLENG, Filip Graliński, filipos@venus.wmid.amu.edu.pl.
Synteza morfologiczna • Synteza morfologiczna (proces odwrotny do analizy) to ustalenie formy słowa na podstawie jego formy podstawowej oraz zestawu wartości cech gramatycznych Ponieważ transducery opisują przekształcenia dwukierunkowe, ta sama kaskada transducerów może służyć do analizy i do syntezy morfologicznej. (oczywiście nie każda analiza morfologiczna jest w ten sposób zaimplementowana)
Anotowanie informacjami składniowymi(part of speech tagging) • Przypisywanie słowomkategorii składniowej i wartości cech morfologicznych, np. piła: V, os.3, l. poj. r.ż, cz. przeszły N, l.poj., r. ż., mian. • zastosowanie ( zamiana tekstu na mowę, wyszukiwanie informacji, analiza składniowa, tłumaczenie) • Dane: - zbiór tagów (indeksów, etykiet) tagset • słownik zawierający słowa wraz z ich tagami • tekst do analizy • Można mówić o zadaniu anotowania tekstu w sposób abstrakcyjny, ale znajomość celu wpływa istotnie na sposób wykonania tego zadania
Tagset • Spis wszystkich możliwych kombinacji cech gramatycznych dla danego języka • T Ì C1´C2´... ´Cn • zwykle ciąg liter i cyfr: • system skrótów: NNS (gen. noun, plural) • system pozycujny: pozycja i odpowiada Ci: • AAMP3----2A---- (gen. Adj., Masc., Pl., 3rd case (dative), comparative (2nd degree of comparison), Affirmative (no negation)) • tense, person, variant, etc.: N/A (oznaczone ‘-’) • najbardziej znane: Brown, Penn, Multext[-East], ...
Problemy • Tagi podlegają standardowemu prawu dystrybucji: • większość słów ma tylko jedną kategorię składniową • z pozostałej część większość słów ma dwie kategorie … • Oczywiście, często pojawiające się słowa często mają więcej niż jeden tag: np. lub (czasownik i spójnik), mam (czasownik i rzeczownik), je, lecz, klej, broń • ! Stosunkowo łatwo przypisać tagi poszczególnym słowom, ale nie tak łatwo przypisać tagi słowom w tekście tzn. problemem jest stwierdzenie, które z jednakowo wyglądających słów zostało użyte w danym miejscu tekstu.
Sposoby anotacji (tagowania) 1. Ręcznie opracowane reguły określania tagów: Adverbial-that rule(That is white,I consider that bad. vs. It isn’t that bad.) dane wejściowe: "that" + wszystkie możliwe jego tagi if (+1 A/ADV/QUANT);/* if next word is adj, adverb, or quantier */ (+2 SENT-LIM);/* and following which is a sentence boundary, */ (NOT -1 SVOC/A);/* and the previous word is not a verb like */ /* `consider' which allows adjs as object complements*/ then eliminate non-ADV tags else eliminate ADV tag • osiągana skuteczność to od 91 do 97% 2.wykorzystanie metod statystycznych (dokładny opis później)
Przykładowe wyniki analizy wyniki analizy morfologicznej wynik segmentacji typ segmentu formapodstawowa tag