Transcript Document
W1: Lingwistyka
Inżynieria Języka
Nina Suszczańska,
Politechnika Śląska, 2006
INŻYNIERIA JĘZYKA
25.03.2006
Plan
W1: Lingwistyka
W2: Gramatyki
W3: Gramatyki, Statystyka
W4: Zastosowania
2 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Tematyka wykładów
czego dotyczą terminy: przetwarzanie języka naturalnego,
lingwistyka komputerowa, inżynieria lingwistyczna,
inżynieria języka
dziedziny NLP: fonetyka/ortografia, fonologia, morfologia,
składnia, semantyka, pragmatyka
rodzaje danych lingwistycznych i możliwość ich
wykorzystania (słowniki, korpusy)
tradycyjne (formalne) podejście do analizy i syntezy języka,
statystyczne metody przetwarzania języka
zastosowania:
– wyszukiwanie informacji tekstowych,
– organizacja danych tekstowych,
– automatyczne streszczanie tekstów,
– systemy pytań i odpowiedzi,
– tłumaczenie, wspomaganie tłumaczenia.
3 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Literatura
Zygmunt Vetulani, Komunikacja człowieka z maszyną. Komputerowe
modelowanie kompetencji językowej. Warszawa 2004, Akademicka
oficyna Wydawnicza EXIT
Jurafsky Daniel, Martin James H. Speech and Language Processing. An
Introduction to Natural Language Processing, Computational Linguistics,
and Speech Recognition. Upper Saddle River 2000 Prentice Hall.
http://www.cs.colorado.edu/~martin/slp.html
Inne, przykładowe:
Hajič, Jan, materiały do wykładu Introduction to Natural Language
Processing CS Dept., Johns Hopkins Univ. http://www.cs.jhu.edu/~hajic
Manning Christopher D., Schutze Hinrich. Foundations of Statistical
Natural Language Processing. Cambridge 1999 The MIT Press.
Advances in Automatic Text Summarization. Eds. Inderjeet Mani, Mark
T. Maybury. Cambridge 1999 MIT Press.
Jelinek Frederick. Statistical Methods for Speech Recognition. Cambridge
1999 MIT Press.
4 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Językoznawstwo
Językoznawstwo (lingwistyka) jest nauką o języku.
– powstawanie, rozwój i funkcjonowanie języka
– zależności między poszczególnymi językami
Trzy przeciwstawne pary kierunków badań językoznawczych :
– synchroniczne – zajmuje się formą języka w danym momencie;
diachroniczne odkrywa historię języka (grupy języków) i zmiany jego
struktury na przestrzeni czasu
– teoretyczne –modelowanie służące opisywaniu poszczególnych języków
oraz teorie dotyczące uniwersalnych aspektów języka;
stosowane – usiłuje wdrażać te teorie w praktyce
– Makrolingwistyka lub językoznawstwo kontekstualne bada dopasowanie
języka do otaczającego świata,
• funkcje społeczne języka, proces nauki i wzbogacania języka, procesy
wytwarzania i odbioru języka.
Mikrolingwistyka lub językoznawstwo niezależne rozważa język jako byt
niezależny od otaczającego świata
• lingwistyka ogólna lub lingwistyka bez dodatkowych określeń,
• należy rozumieć jako językoznawstwo synchroniczne, teoretyczne
i niezależne jednocześnie. Dziedzina ta jest uważana za jądro
językoznawstwa
5 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Działy językoznawstwa
Językoznawstwo zajmuje się wszelkimi aspektami
języka i zawiera w sobie liczne działy. Należą do nich
między innymi:
- fonetyka
- fonologia
- lingwistyka tekstu
- morfologia
- pragmatyka
- semantyka
- semiotyka
- słowotwórstwo
- syntaktyka
itd.
6 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Interdyscyplinarne kierunki badań
lingwistycznych
Na pograniczu lingwistyki i innych nauk wyodrębniły się
kilkadziesiąt dziedzin badań, w tym:
–
–
–
–
–
–
–
–
Geolingwistyka (geografia lingwistyczna, geografia języka)
Kryptografia
Krytyczna Analiza Dyskursu ( dyskurs)
Juryslingwistyka (ligwistyka prawnicza)
Lingwistyka matematyczna
Lingwistyka stosowana
Lingwistyka kognitywna
Lingwistyka komputerowa
•
•
•
•
•
identyfikacja rozmówcy
przetwarzanie języka naturalnego
przetwarzanie mowy
rozpoznawanie mowy
synteza mowy
itd.
7 z 36
INŻYNIERIA JĘZYKA
Gdzie jest potrzebna wiedza lingwistyczna?
25.03.2006
Dziedziny działalności człowieka, w których
wiedza lingwistyczna jest potrzebna to:
– translatoryka - teoria i praktyka przekładu,
– dydaktyka, obejmująca także nauczanie języka
ojczystego dzieci i młodzieży,
– komunikacja masowa,
– problematyka grup społecznych posługujących się
własnymi językami,
– informatyka, teoria i praktyka sztucznego
intelektu i in.
8 z 36
INŻYNIERIA JĘZYKA
Elementy terminologii
25.03.2006
NLP (Natural Language Processing) – przetwarzanie języka
naturalnego
Kompetencja językowa (kompetencja komunikacyjna)
Komputerowe modelowanie (emulowanie) kompetencji
językowej człowieka
System z emulowaną kompetencją człowieka = system
z kompetencją językową dorównującą ludzkiej
Rozumienie języka
Inżynieria języka naturalnego (Natural Language
Engineering), technologie języka ludzkiego (Human
Language Technologies), inżynieria lingwistyczna
(Linguistic Engineering)
9 z 36
INŻYNIERIA JĘZYKA
Przetwarzanie języka naturalnego różne aspekty
25.03.2006
lingwistyka formalna i komputerowa (Computational
Linguistics)
przetwarzanie języka naturalnego (Natural Language
Processing)
inżynieria lingwistyczna (Linguistic Engineering)
psycholingwistyka komputerowa (Computational
Psycholinguistics)
rozpoznawanie sygnału mowy (Speech Recognition)
10 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Cele NLP
poznawcze (jak jest zbudowany język, na czym polega
posługiwanie się językiem jego rozumienie nauka ...),
gromadzenie danych lingwistycznych (słowniki
ogólne i specjalistyczne, korpusy tekstów, gramatyki, ...)
wykorzystywanie języka naturalnego w systemach
komputerowych:
–
–
–
–
–
–
wyszukiwanie informacji,
automatyczne streszczanie tekstów,
systemy pytań i odpowiedzi,
organizacja danych tekstowych,
wspomaganie tłumaczenia
itd.
11 z 36
INŻYNIERIA JĘZYKA
Dziedzina lingwistyki komputerowej
25.03.2006
Wszystko, co jest powiązano z
rozpoznawaniem mowy i przetwarzaniem
danych powiązanych z tym zagadnieniem
Zadanie lingwistyki komputerowej polega w
tym, żeby rozwijać oprogramowanie, które
daje możliwość rozwiązać problemy
powstające w związku z opracowaniem
językowych danych
12 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Gdzie jest potrzebna lingwistyka
komputerowa (1)
Wspomaganie przy opracowaniu tekstów, w tym
poprawianie typowych błędów oraz błędów
ortograficznych, sprawdzanie poprawności zdania, np.
składniowej
Podział słów na sylaby w programach automatycznego
przenoszenia słów
Pomoc przy napisaniu tekstów, np. poszukiwanie
prawidłowej terminologii lub synonimów
Poszukiwanie kontekstów, w tym według reguł
związków między poszukiwanymi wyrazami lub według
ich znaczenia
Pomoc przy tłumaczeniu tekstów na obce języki
13 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Gdzie jest potrzebna lingwistyka
komputerowa (2)
Dialog z komputerem w języku naturalnym
Przetwarzanie języka mówionego czy migowego
w pisany i na odwrót
Opracowanie danych tekstowych, np. bibliografii
wykorzystanej przy napisaniu tekstu, automatyczne
układanie konspektu lub streszczenia tekstu
Dostarczanie informacji na dużą skale — od
poszukiwania odpowiedniej literatury w bazie danych
biblioteki do odpowiedzi na zapytanie generowanej
przez system ekspertowy bazujący się na dużych bazach
wiedzy
Programy nauczania języka, multimedialne słowniki, np.
słowniki z dostępem fonicznym („mówiące”), słowniki
„migające” oraz inne programy ćwiczeniowe
14 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Czym zajmuje się inżynieria
lingwistyczna
Inżynieria lingwistyczna to opracowywanie metod
i konstruowanie narzędzi umożliwiających automatyczne
przetwarzanie języka naturalnego.
NLP to ciąg przekształceń:
wypowiedź
tekst w języku
naturalnym
reprezentacja
semantyczna
(np. logiczna)
reakcja
(wykonanie operacji,
sformułowanie
odpowiedzi)
synteza mowy
15 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Zadania inżynierii lingwistycznej
rozpoznawanie mowy
– rozpoznawanie sygnału mowy w otoczeniu szumu
– korekcja błędów wymowy
– czytanie z ust(?)
rozumienie języka
generowanie wypowiedzi w języku
naturalnym
wyszukiwanie informacji (information
retrieval)
selekcja informacji (information extraction)
wnioskowanie
16 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Inżynieria języka
Teoria i praktyka są równie ważne w lingwistyce
komputerowej.
Rozwiązania teoretyczne powinny być sprawdzone
w eksperymentach komputerowych.
Z tego powodu z lingwistyki komputerowej
wyodrębniła się część nazywana inżynierią
językową, której zadaniem jest konstruowanie
modeli i ich implementacja.
Inżynieria językowa jest szczególną częścią
lingwistyki komputerowej, i jej rola jest bardzo
ważna.
17 z 36
INŻYNIERIA JĘZYKA
Wiedza o języku a realizacja
wyznaczonego celu
Zrozumienie polecenia
•analiza językowa
(identyfikacja słów, ich form,
związków między nimi)
•odniesienie do
rzeczywistości
25.03.2006
Wybór odpowiedzi
ew. odrzucenie polecenia
mimo możliwości
wykonania go
Sformułowanie odpowiedzi
•wybór słów, ich form,
porządku
•pragmatyka: uprzejma
odmowa, podziękowanie
•odniesienie do poprzedniej
części dialogu (np. ten, to, on)
18 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Model lingwistyczny
Punkt wyjścia – teorie utworzone przez lingwistów
Aktualizacja modelu do konkretnego projektu:
– Uzupełnienie i sprecyzowanie wykorzystywanych teorii
języka
– Rozszerzenie wyjściowego modelu o zjawiska do tej pory
pomijane
– Ujednolicenie opisu teoretycznego uwzględnionych
zjawisk w przypadku kompilacji kilku modeli
teoretycznych
19 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Zadania inżyniera języka (1)
Bardzo skomplikowane
W wielu przypadkach inżynier językowy musi sam
zgromadzić dane z interesującej go dziedziny języka
ludzkiego.
Zgromadzone dane służą do wyboru odpowiedniej teorii
opracowanej przez lingwistów,
ale wymagają opracowania własnej teorii przetwarzania
takiej, która pozwoliłaby w miarę łatwą implementację.
Innymi słowy, informatyk występujący w roli inżyniera
języka opracowuje opis teoretyczny modelowanego
fragmentu języka, czyli tworzy model lingwistyczny,
jednocześnie występując w roli twórczej badaczy języka.
Wieloletnie doświadczenie pokazało, że niewiedza
szczegółów budowy języka, rozwiązanie problemów ad-hoc
nie może doprowadzić do sukcesu
20 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Zadania inżyniera języka (2)
Użytkownik – uczy się obcować się z komputerem
Lingwista-teoretyk szlifuje opisy poszczególnych
zjawisk językowych
Inżynier języka (informatyk!) powinien
skonstruować algorytmy, które doprowadziłyby do
pożądanych wyników.
Do też można przytoczyć miarkowania o tym, że
zdarza się tak, że inżynierowi czasami także
przychodzą do głowy genialne idee
21 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Cele modelowania
Test Turinga: maszyna naśladuje człowieka w sposób
nieodróżnialny dla słuchacza (czytelnika) (poza problemami
czysto językowymi także np. psychologiczne, związane
z indywidualnymi możliwościami człowieka)
– „przepowiednia” Turinga - pod koniec XX w. maszyna
dysponująca pamięcią 10GB będzie miała 30% szans na
„oszukanie”, że jest człowiekiem w ciągu 5-minutowej
rozmowy (NIESTETY? NIE, ale np. zaskakująco sprawne
są chatterboty służące do konwersacji z człowiekiem,
pierwszy - ELIZA,Weizenbaum, 1966)
Ogromna przepaść między możliwościami człowieka, a
możliwościami systemów komputerowych (w odróżnieniu od
operowania na liczbach czy dużych zbiorach informacji
strukturalnych gdzie widać dużą przewagę systemów
komputerowych)
Rozumienie i prawidłowe reagowanie na wypowiedzi (teksty)
w języku naturalnym wymaga udziału wiedzy spoza tekstu
(z nieograniczonego praktycznie zakresu) i skomplikowanych (nie
poznanych do końca, nieklasycznych) metod wnioskowania.
22 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Eliza, wirtualny psychoanalityk
przykład rozmowy
– użytkownik: „Mam zły dzień”
– Eliza: „Czy przyszedłeś do mnie, bo masz zły dzień?”
przykład rozmowy
– użytkownik: „Czuje się świetnie, dziękuję ci.”
– Eliza: „Jak długo czujesz się świetnie, dziękuję mi?”
Elizę można obejrzeć pod adresem: http://ecceliza.cjb.net
23 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Inne popularne boty
A.L.I.C.E Dostępna pod adresem:
http://www.alicebot.org
Claude
http://www.cs.cmu.edu/.../classics/racter/cld110.zip
Elvis http://www.catcom.net
Nicole - wirtualny asystent firmy NativeMinds.
(niedostępna)
Ramona - wirtualna artystka Wszystko na stronie
Autora dotyczącej sztucznej inteligencji:
http://www.kurzweilai.net
Anna - Polski bot autorstwa Tomasza Kandefera.
Julie1 - Wirtulana członkini i reprezentantka GovCon
Fido - Pierwszy komercyjny chatterbot w Polsce
24 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Zakres zastosowania wiedzy
Komputer jest maszyną, język należy do
strefy uczuć. Jak daleko posunięte mogą być
prowadzone obliczenia w języku?
Czy może komputer zademonstrować
pewnego dnia ludzkie uczucie, i czy wtedy
jest ten komputer narzędziem do opracowania
symboli?
Gdzie są granicy symulacji komputerowej
komunikowania się?
25 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Trochę historii (1)
Podstawy (lata 40-te, 50-te)
automaty; ( Turing, 1936; model obliczeń),
„neurony”; McCulloch i Pitts, 1943
automaty skończone, wyrażenia regularne; Kleene, 1951
i 1956
zastosowanie modeli Markova do analizy języka; Shanon,
1948
wykorzystanie automatów do opisu gramtyk, Chomsky
(1956)
formalny opis języka, gramatyki bezkontekstowe,
Chomsky 1956 (niezależnie Backus i Naur, 1959 i 1960)
zdefiniowanie entropii jako miary pojemności informacyjnej,
wyniki dla języka angielskiego, Shanon,
spektrograf dźwiękowy (Koenig, 1946) i pierwszy system
analizy mowy (cyfry), Bell Labs, Davis, (1952)
26 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Trochę historii (2)
Dwa obozy, 1957-1970
– przetwarzanie symboliczne (formalne),
• gramatyka generatywna, Chomsky
– pierwszy system parsujący: TDAP (Transformations and Discourse
Analysis Project, Zelig Harris, 1962
• sztuczna inteligencja (AI), McCarthy, Minsky …
– logiki nieklasycznem systemy automatycznego dowodzenia
twierdzeń
– metody statystyczne
• Bledsoe & Browning (1959) system rozpoznawania tekstu
w oparciu o metodę Bayesa
– pierwsze prace korpusowe
• korpus Browna amerykańskiego angielskiego (1 mln słów z 400
tekstów)
27 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Trochę historii (3)
Cztery podejścia, 1970-1983
– metody statystyczne
• IBM Thomas J. Watson Research Center: Jelinek, Bahl,
Mercer
• Carnegie Mellon Uniwersity: Baker
• AT&T BellLaboratories (rozpoznawanie i analiza mowy)
– metody oparte o logiki formalne
• Colmerauer, gramatyki metamorficzne, Prolog
• Kay, gramatyki funkcyjne
• Bresnan, Kaplan, LFG
– natural-language-understanding field, SHRUDLU,
Winograd, 1972, Shank
– modelowanie dyskursu, Grosz, 1977, Allen
28 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Trochę historii (4)
Ponowne „odkrycie”: metody empiryczne
i automaty stanów skończonych, 1983-1993
– wykorzystanie automatów do analizy morfologicznej
(Kaplan, Kay, 1981)
– metody analizy statystycznej mowy (IBM Research
Centre)
– ...
Połączenie wysiłków, 1994
– włączenie metod statystycznych do wszystkich
dziedzin NLP
29 z 36
INŻYNIERIA JĘZYKA
Systemy przetwarzania języka (1)
25.03.2006
ScanSoft Inc., US: tradycyjna specjalność cyfryzacja
obrazu/tekstu pisanego
– RealSpeak (Text-To-Speach system, 19 języków, w tym polski)
• http:/www.scansoft.com/realspeak
– Dragon NaturallySpeaking (rozpoznawanie mowy, zamiana na tekst,
wspomaganie tworzenia dokumentów biurowych)
Nuance, USA http:/www.nuance.com
– Nuance: rozpoznawanie mowy (m.in. voice-driven systems)
– synteza mowy Nuance Vocalizer (UK and US English; inne języki
w połączeniu z modułami np. ScanSoft)
– Voice Authentication (rozpoznanie użytkownika po głosie)
Telisma, France
– telco-grade speech modules
– philsoft: rozpoznawanie mowy (ASR)
30 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Systemy przetwarzania języka (2)
Lingtech A/S, Dania
– PaTrans (efekt projektu EURORTA): tłumaczenie
w dziedzinie medycyny i farmacji
Morphologics, Węgry
– korektory pisowni
– analizatory morfologiczne (w tym bardzo dobry polski)
PROject MT Ltd, Rosja - PROMPT; system tłumaczący
Temis, France http:/www.temis-group.com/temis/sx.htm
– InsightDiscover Extractor (ekstrakcja informacji ze
swobodnego tekstu, 7 języków)
FlexAnswer - system dialogowy
Linguamatic, UK; Eleka Linguistic Engeenering, Kraj
Basków; voiceINTERconnect, Niemcy; Systran, Francja....
31 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Informatyczno-technologiczne
prace w Polsce (1)
Nurt logiczny: Gramatyka współczesnego języka
polskiego
– Stanisław Karolak
– Zuzanna Topolińska i in.
Paradygmat zależnościowy
– Zygmunt Saloni
– Marek Świdziński
– Tomasz Obrębski (parser, 2002)
Gramatyki generatywne
– Kazimierz Polański (czasownik) (1980)
– Katarzyna Węgrzynek (przymiotniki) (1995)
– Grażyna Vetulani (rzeczownik) (2000)
32 z 36
INŻYNIERIA JĘZYKA
Informatyczno-technologiczne
prace w Polsce (2)
Formalizm HPSG (Head-driven Phrase Structure
Grammar)
– Leonard Bolc
– Adam Przepiorkowski i in.
Formalizm DRT (Discourse Representation Theory),
modelowanie znaczenia polskiej frazy nominalnej
– Maciej Piasecki (2003)
Formalizm DCG (Definite Clause Grammar)
– Stanisław Szpakowicz (1983)
– Janusz Bień i in.
Formalizm SSG (System of Syntactical Groups)
25.03.2006
– Wiaczysław Gładki (1975)
– Nina Suszczańska (gramatyka 1981, parser 1998)
33 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Lingwistyka a informatyka
Wielowątkowość przetwarzania języka
– Różne techniki dla szczegółowych podzadań
•
•
•
•
Analiza morfologiczna
Parsing
Analiza semantyczna
Analiza kontekstu i sytuacji itp.
Wzajemne oddziaływanie i inspiracje
– Gramatyki formalne – podstawowy formalny informatyki
– bazują na pracach lingwistów
• Kazimierz Ajdukiewicz (1890-1963) – gramatyki kategorialne
• Noam Chomski – gramatyki generatywne
Formalizacja wymaga od lingwistów opisów
szczegółowych, czasem badań dodatkowych
34 z 36
INŻYNIERIA JĘZYKA
25.03.2006
Informacje w sieci
HLT Cenral (Human Language Technologies)
– htp://www.hltcentral.org
– „ HLTCentral web site was established as an online
information resource of human language technologies and
related topics of interest to the HLT community at large. It
covers news, R&D, technological and business developments in
the field of speech, language, multilinguality, automatic
translation, localisation and related areas. Its coverage of HLT
news and developments is worldwide - with a unique European
perspective.”
ELRA European Language Resources Associacion organizacja zajmująca się zbieraniem i udostęnianiem
danych językowych (członkostwo jest płatne)
http://www.elra.info
35 z 36
INŻYNIERIA JĘZYKA
25.03.2006
36 z 36