1. Introduction

Transkrypt

1. Introduction
Książka jest o statystycznej analizie języka naturalnego (nie ma wyraźnej różnicy pomiędzy
podejściem statystycznym oraz symbolicznym/logicznym).
Pierwszy rozdział to podstawy, zdefiniowanie pojęd używanych dalej w książce, omówienie
niezbędnych podstaw statystyki, teorii informacji, lingwistyki.
1. Introduction
Języka naturalnego nie da się jednoznacznie opisad za pomocą reguł. Ta książka porusza podejście
statystyczne do analizy języka (stawia pytanie: "What are the common patterns that occur in
language use?") - wyszukiwanie najczęstszych wzorców występujących w języku.
1.1 Rationalist and Empiricist Approaches to Language
"what prior knowledge to try to build into their model, even if this prior knowledge might be clearly
different from what might be plausibly hypothesized for the brain. This section briefly discusses the
philosophical issues"
racjonalistyczne podejście - można stworzyd system kodując w niego całą strukturę języka
empiryczne - do analizy języka można podejśd tworząc ogólny model języka, wykorzystad statystykę,
rozpoznawanie wzorców i metody uczenia maszynowego.
1.2 Scientific Content
statystyka jako jedno z podejśd do analizy języka
1.2.1 Questions that linguistics should answer
What kinds of things do people say?
What do these things say/ask/request about the world?
Na pierwsze pytanie łatwiej jest odpowiedzied dzięki metodom statystycznym.
Jak wygląda tradycyjne (strukturalne/generatywne) podejście? Opisywana jest gramatyka języka,
zdania dzielone są na gramatyczne i niegramatyczne. Pojawia się jednak problem - nie da się
jednoznacznie określid, czy zdanie jest gramatyczne, bo niektórych struktur czasem używa się
niekonwencjonalnie (i już nie pasuje do opisanego modelu).
1.2.2 Non-categorical phenomena in language
Pojęcia można dzielid na kategorie, ale trzeba zdawad sobie sprawę z ograniczeo takiego podejścia np. niektóre słowa z czasem zmieniają swoje znaczenie, niektóre są jednocześnie kilkoma częściami
mowy (np.: gra - rzeczownik oraz czasownik).
Podejście statystyczne w przypadku słów zmieniających znaczenie jest lepsze niż kategoryzowanie, bo
zmiany takie zachodzą stopniowo.
1.2.3 Language and cognition as probabilistic phenomena
Poznawanie bazuje na probabilistyce (np. albo coś zobaczymy albo nie, albo coś się stanie tak a nie
inaczej...), więc język jako jednak z technik poznawczych również musi byd oparty na
prawdopodobieostwie.
1
Problemy dotyczące słabości kategoryzacji oraz trudności w określaniu, czy zdanie pasuje do
gramatyki zbytnio nam nie przeszkadzają, gdyż takie sytuacje nie występują często.
Z punktu 1.2 można wywnioskowad, że znaczenie słowa jest definiowane przez okoliczności, w jakich
się go używa (Wittgenstein 1968).
1.3 The Ambiguity of Language: Why NLP Is Difficult
Standardowe NLP proste dla prostego zdania ("Our company is training workers.") znajduje aż 3
poprawne analizy syntaktyczne (rysunki w pdf na str. 48,49), gramatykę trzeba zakodowad z ręki. Nie
opisuje się całej gramatyki, ale np. że dany czasownik występuje z dwoma rzeczownikami, ale to
wyklucza metaforyczne użycie.
Statystyczne NLP sobie z tym wszystkim radzi, dodatkowo jest odporne na błędy i łatwo przyswaja
nowe rzeczy.
1.4 Dirty Hands
1.4.1 Lexical resources
teksty, słowniki i słowniki wyrazów bliskoznacznych (zbiór reprezentatywnych tekstów z języka korpus).
Najbardziej znany korpus amerykaoski to Brown Corpus (nie jest darmowy). Słownik - WordNet darmowy. Można je ściągnąd (jakiś polski korpus, który znalazłem, to plik .bz2 ~1.3GB).
1.4.2 Word counts
Na przykładzie Tomka Sawyera:
- najczęściej występujące słowa nie mówią nic o treści (the, and, a, to, of, ...)
- jest 12 słów, z których każde stanowi ponad 1% wszystkich słów w powieści
- 12% tekstu to słowa, które występują nie więcej niż 3 razy
1.4.3 Zipf’s laws
Częstotliwośd występowania słowa ~= 1 / pozycja słowa na liście najczęściej występujących słów.
Jest kilka najczęściej występujących słów, całkiem sporo pojawiających się w miarę często i bardzo
dużo występujących rzadko.
Mandelbrot trochę podkręcił tą relację, aby lepiej pasowała dla słów najrzadziej i najczęściej
występujących.
Inne spostrzeżenia:
- ilośd znaczeo danego słowa jest proporcjonalna do częstości, z jaką występuje
- częstotliwośd występowania słowa jest odwrotnie proporcjonalna do jego długości
- większa częstotliwośd to większa liczba permutacji, w jakich ono występuje
2
1.4.4 Collocations
Połączenia wyrazów. Najczęstsze to przymiotnik-rzeczownik i rzeczownik-rzeczownik.
1.4.5 Concordances
Dwa słowa, które razem mają nowe znaczenie (New York, United States, last year, vice president, real
estate, ...).
Zwykle do wyszukiwania tego używa się jednego programu: Key Word In Context (KWIC)
1.5 Further Reading
... czyli za jaką książkę złapad, jak chcemy więcej. Streścid tego się nie da.
1.6 Exercises
... dwiczenia do samodzielnego wykonania.
2 Mathematical Foundations
teoria
2.1 Elementary Probability Theory
to co było na Rachunku Prawdopodobieostwa i Statystyce Matematycznej
2.1.1 Probability spaces
2.1.2 Conditional probability and independence
2.1.3 Bayes’ theorem
P(B|A) = P(B przekrojone z A) / P(A) = P(A|B)P(B) / P(A)
+ alternatywne formy
2.1.4 Random variables
2.1.5 Expectation and variance
2.1.6 Notation
2.1.7 Joint and conditional distributions
2.1.8 Determining P
2.1.9 Standard distributions
2.1.10 Bayesian statistics
Wikipedia: "Prawdopodobieostwo subiektywne to interpretacja prawdopodobieostwa, według której
prawdopodobieostwo nie musi byd wielkością obiektywną, lecz może byd określone na podstawie
subiektywnej opinii osoby, zależnie od dostępnych jej aktualnie danych."
2.1.11 Exercises
2.2 Essential Information Theory
to co było/będzie na Teorii Informacji
3
2.2.1 Entropy
2.2.2 Joint entropy and conditional entropy
2.2.3 Mutual information
2.2.4 The noisy channel model
2.2.5 Relative entropy or Kullback-Leibler divergence
2.2.6 The relation to language: Cross entropy
2.2.7 The entropy of English
2.2.8 Perplexity
2.2.9 Exercises
2.3 Further Reading
... czyli za jaką książkę złapad, jak chcemy więcej. Streścid tego się nie da.
3 Linguistic Essentials
syntax (sentence structure), morphology (word formation) and semantics (meaning)
3.1 Parts of Speech and Morphology
to co było w szkole...
3.1.1 Nouns and pronouns
3.1.2 Words that accompany nouns: Determiners and adjectives
3.1.3 Verbs
3.1.4 Other parts of speech
3.2 Phrase Structure
3.2.1 Phrase structure grammars
3.2.2 Dependency: Arguments and adjuncts
3.2.3 X’ theory
X-bar theory - teoria, która próbuje zidentyfikowad funkcje syntaktyczne wspólne dla wszystkich
języków (X to N(oun), V(erb), A(djective) lub P(reposition)).
X jest głową zdania (head of a phrase) - najważniejszym wyrazem, a reszta uzupełnieniem.
3.2.4 Phrase structure ambiguity
3.3 Semantics and Pragmatics
lexical semantics - znaczenie pojedynczych słów
4
hyperonym - słowo o bardziej ogólnym sensie (animal jest hypernymem słowa cat)
hyponym - odwrotnie niż wyżej
antonimy - słowa o przeciwnych znaczeniach
synonimy - jednakowe znaczenia
homonimy - słowa które tak samo się pisze, ale znaczą co innego
homophony - homonimy, które się tak samo wymawia
discourse analysis - analiza związku pomiędzy zdaniami w tekście (czy zdanie jest przykładem dla
poprzedniego, rozwinięciem, przeformułowaniem itp.)
Największym problemem takich analiz są relacje anaforyczne ("John helped Peter get out of the cab.
He thanked him." - do kogo odnosi się "he"?). Ustalenie tych relacji jest ważne dla wydobywania
informacji z tekstu.
Discourse analysis jest częścią Pragmatics (nauka o tym, jak wiedza o świecie i konwencje językowe
współgrają z dosłownym znaczeniem zdao). Relacje anaforyczne są zjawiskiem pragmatycznym (np.
"Hurricane Hugo destroyed 20,000 Florida homes. At an estimated cost of one billion dollars, the
disaster has been the most costly in the state’s history." - aby poprawnie to zrozumied, trzeba
wiedzied, że hurricane to disaster).
Większośd pragmatyki została pominięta przez statystyczne NLP, bo zbyt ciężko byłoby to wszystko
wymodelowad.
3.4 Other Areas
fonetyka i fonologia - rozpoznawanie mowy. Ta książka tych tematów nie porusza.
socjolingwistyka - zależności pomiędzy społeczeostwem a językiem
historical linguistics - zmiany języka w czasie
3.5 Further Reading
... czyli za jaką książkę złapad, jak chcemy więcej. Streścid tego się nie da.
3.6 Exercises
4 Corpus-Based Work
4.1 Getting Set Up
4.1.1 Computers
Komputer jest raczej niezbędny (kiedyś radzono sobie nawet na 40KB RAMU).
4.1.2 Corpora
Głównie się płaci za korpus, ale można znaleźd też darmowe. Korpus musi byd reprezentatywny, tzn.
teksty w nim zawarte powinny występowad w języku.
5
Można próbowad go zbalansowad (aby proporcje poszczególnych typów tekstów były odpowiednie),
ale lepiej wrzucad po prostu to co się ma.
4.1.3 Software
Edytor tekstu, coś do wyrażeo regularnych, język programowania (głównie C/C++, Perl, ewentualnie
Python, ostatnio także Java), techniki programowania (mapowanie słów/tokenów na liczby,
operowanie na liczbach kiedy się da - hashtables; zliczanie słów - poprzez sortowanie, a nie zliczanie
w tablicy - wymaga mniej pamięci)
4.2 Looking at Text
Ważny jest markup (opisywanie) tekstu - zwykle w odrębym pliku.
W tym dziale głównie jest o problemach w języku angielskim.
4.2.1 Low-level formatting issues
Junk formatting/content
W tekstach mogą się pojawiad rzeczy niepotrzebne przy analizie tekstów (nagłówki, stopki,
separatory, tabelki, zdjęcia itp.), jeśli tekst pochodzi z OCRa to dodatkowo mogą zdarzad się literówki.
Uppercase and lowercase
Problem jest ze słowami pisanymi wielkimi literami (czy The, the, THE traktowad jako to samo słowo?
a brown (kolor) i Brown (nazwisko)? Można stosowad prostą heurystykę zamieniającą pierwsze litery
zdao na małe (problem np. w Winnie The Pooh, gdzie wielkimi literami oznaczano Bardzo Ważne
Momenty). Można też stworzyd listę nazw własnych, jednak to nie jest proste rozwiązanie.
4.2.2 Tokenization: What is a word?
tokenizacja - wczesny etap przetwarzania tekstu polegający na podzieleniu go na części zwane
tokenami (słowo, liczba, znak interpunkcyjny).
Znaki interpunkcyjne też są ważne, nie można ich pomijad.
Jak rozpoznad słowo? Nie może to byd coś pomiędzy dwoma znakami interpunkcyjnymi, bo np.
$22.50, Micro$oft, .net czy też ;-) powinny byd słowami. Wskazówką jest, aby w angielskim za słowo
traktowad to, co jest pomiędzy 2 białymi znakami. Jakie są główne problemy?
Periods
Słowa nie zawsze są otoczone białymi znakami, np. na koocu zdania jest kropka. Usunąd wszystkich
kropek nie można, bo po skrótach (etc.) powinny zostad. Kolejny problem kiedy skrót występuje na
koocu zdania - wtedy kropka pełni podwójną rolę (haplology).
Single apostrophes
czy I'll, isn't traktowad jako jedno słowo? Człowiek się domyśla, że to 2 słowa: I will, is not. Niektóre
korpusy takie rzeczy rozbijają na 2 słowa. Trzeba uważad, aby po niepoprawnym podziale nie
powstały słowa w rodzaju 's lub n't.
Hyphenation: Different forms representing the same word
Czy słowa oddzielone myślnikiem traktowad jako jedno, czy jako 2? Czasem 1, a czasem 2. Są różne
typy myślników - na koocu liniki, jak łamiemy jakiś wyraz. Niby łatwo to usunąd, ale jednak nie - jeśli
6
łamiemy 2 słowa, które już były oddzielone myślnikiem, to drugiego myślnika się nie wstawia (znowu
haplology).
Drugi rodzaj myślników to np. w e-mail, co-operate, pro-Arab.
Trzeci rodzaj myślników służy poprawnemu grupowaniu słów, np. "the aluminum-export ban", "a
text-based medium".
Czwarty rodzaj - "the 90-cent-an-hour raise", "the 26-year-old".
Problemem jest też nietrzymanie się jednej wersji (np. w tej książce piszą markup, mark-up, mark
up).
Kolejny problem: w UK obok myślnika zwykle są spacje ("mark - up") a w USA nie ("mark-up").
The same form representing multiple words.
Czasem dwie różnie pisane rzeczy mają byd traktowane jako jedno słowo, a czasem 2 pisane
identycznie jako 2 różne słowa (np. saw jako narzędzie albo czas przeszły od see).
Word segmentation in other languages
W niektórych językach nie używa się spacji w ogóle (np. chioski, japooski), w niemieckim czasem
rzeczowniki złożone pisze się łącznie ("Lebensversicherungsgesellschaftsangesrellter" (?life insurance
company employee)).
Whitespace not indicating a word break
Jeśli database traktujemy jako jedno słowo, to "data base" też powinniśmy. Numery telefonów
pisane jako "1234 5678" również powinny byd jednym słowem. Tak samo New York czy San
Francisco. Szczególnie trudny problem jest przy "the New York-New Haven railroad". Niektórzy
chcieliby, aby phrasal verbs (make up, work out) były traktowane jako pojedyncze lexemy
(pojedyncze wpisy w słowniku o jednym znaczeniu), jednak kolejny problem: te słowa mogą byd
rozdzielone innymi ("I couldn?t work the answer out").
Variant coding of information of a certain semantic type
problem zapisu np. numerów telefonicznych - czasem pisze się razem, czasem z myślnikami,
spacjami, nawiasami, czasem jeszcze z numerem kierunkowym itp. (problem przy wyciąganiu
informacji).
Speech corpora
Transkrypty rozmów często zawierają dodatkowo wypełnienia w postaci er, um, itp.
4.2.3 Morphology
Czy sit, sits, sat traktowad jako jedno słowo? Jeśli myślimy o lexemach to tak, ale czasem to daje
gorsze wyniki. Jeśli np. wyszukujemy operating w kontekście "operating systems", i operating byśmy
zamienili na operate, to moglibyśmy otrzymad wyniki podobne do "Bill is operating a tractor".
Analizy morfologiczne dla języka angielskiego dużo nie wnosiły, bo ten język nie ma zbyt bogatej
morfologii, ale tworząc systemy dla wielu języków trzeba mocno pomyśled o takiej analizie.
7
4.2.4 Sentences
What is a sentence?
Pierwsza myśl: coś co się kooczy kropką, znakiem zapytania lub wykrzyknikiem. Jednak wypowiedzi
kooczące się dwukropkiem, średnikiem lub myślnikiem też często mogłyby byd traktowane jako
zdania.
Jeśli cytujemy zdanie, to za koniec zdania powinniśmy traktowad zamknięcie cudzysłowu, a nie
kropkę.
W 1998 udało się stworzyd algorytm określający granice zdao w 99,25% poprawnie.
What are sentences like?
Najczęściej są długie (23 słowa). Wiele narzędzi nie radzi sobie ze zdaniami powyżej 12 wyrazów.
4.3 Marked-up Data
Na pooznaczanych tekstach można zwykle zrobid więcej. Najczęstsze są oznaczenia gramatyczne
opisujące części mowy.
4.3.1 Markup schemes
Do oznaczania tekstów używa się zwykle SGMLa lub częściej XMLa.
4.3.2 Grammatical tagging
Tag sets
Czyli sposoby opisywania części mowy za pomocą kilkuliterowych oznaczeo. Zwykle zbiory tagów są
użyteczne tylko w jednym języku, ze względu na różnice morfologiczne.
Przykłady otagowao dla zbiorów tagów kilku różnych korpusów są w PDF na str. 169, figure 4.2.
Obszerniejsze porównanie: str. 170-171.
Zbiory te różnią się szczegółowością opisywania poszczególnych części mowy.
The design of a tag set
Zbiór tagów powinien byd tak zbudowany, aby częstości występowania słów tak samo otagowanych
były podobne.
4.4 Further Reading
... czyli za jaką książkę złapad, jak chcemy więcej. Streścid tego się nie da.
4.5 Exercises
8