360 likes | 483 Views
W1: Lingwistyka. Inżynieria Języka Nina Suszczańska, Politechnika Śląska, 2006. Plan. W1: Lingwistyka W2: Gramatyki W3: Gramatyki, Statystyka W4: Zastosowania. Tematyka wykładów.
E N D
W1: Lingwistyka Inżynieria Języka Nina Suszczańska, Politechnika Śląska, 2006
Plan • W1: Lingwistyka • W2: Gramatyki • W3: Gramatyki, Statystyka • W4: Zastosowania 2 z 36
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
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
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
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
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
Gdzie jest potrzebna wiedza lingwistyczna? 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
Elementy terminologii • 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
Przetwarzanie języka naturalnego -różne aspekty • 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
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
Dziedzina lingwistyki komputerowej • 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
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
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
wypowiedź reakcja (wykonanie operacji, sformułowanie odpowiedzi) reprezentacja semantyczna(np. logiczna) tekst w języku naturalnym syntezamowy 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ń: 15 z 36
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 • 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
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 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
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
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
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
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
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
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
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
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
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
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
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
Systemy przetwarzania języka (1) • 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
Systemy przetwarzania języka (2) • LingtechA/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; systemtł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; ElekaLinguisticEngeenering, Kraj Basków; voiceINTERconnect, Niemcy; Systran, Francja.... 31 z 36
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
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) • Wiaczysław Gładki (1975) • Nina Suszczańska (gramatyka 1981, parser 1998) 33 z 36
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
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
Koniec 36 z 36