24
WUT TWG 2005 WEDT Korpusy i kolokacje Wykład 6 Piotr Gawrysiak [email protected] 2005

WEDT Korpusy i kolokacje

  • Upload
    jed

  • View
    29

  • Download
    1

Embed Size (px)

DESCRIPTION

WEDT Korpusy i kolokacje. Wykład 6 Piotr Gawrysiak [email protected]. 2005. Korpusy. „ Korpus to dowolny zbiór tekstów, w którym czegoś szukamy. O korpusach w tym znaczeniu mówią najczęściej językoznawcy, ale także archiwiści, historycy i informatycy ” – wydawnictwo PWN - PowerPoint PPT Presentation

Citation preview

Page 1: WEDT Korpusy i kolokacje

WUTTWG

2005

WEDT

Korpusy i kolokacje

Wykład 6

Piotr [email protected]

2005

Page 2: WEDT Korpusy i kolokacje

WUTTWG

2005Korpusy• „Korpus to dowolny zbiór tekstów, w którym czegoś szukamy. O

korpusach w tym znaczeniu mówią najczęściej językoznawcy, ale także archiwiści, historycy i informatycy” – wydawnictwo PWN

• http://korpus.pwn.pl (7.5 mln słów dostępnych za darmo – ale bez możliwości pobrania)

• http://korpus.pl (korpus IPI PAN – 300 mln)

• korpus – zbiór tekstów reprezentatywnych dla języka, zapisany w formie elektronicznej, o ile to możliwe zawierający metadane• niezbilansowany – niereprezentatywny dla języka, np. zawierający

jedynie teksty o pewnej tematyce, albo też• zbilansowany - reprezentatywny dla całego języka• jednojęzykowy vs. wielojęzyczny (bitext)• anotowany – zawierający metadane, w szczególności POS tags i/lub

informacje o rozbiorze zdania

• korpus jest zwykle statyczny i jako taki jest „fotografią” języka w pewnej chwili – np. Brown corpus – język angielski z lat 60-tych

Page 3: WEDT Korpusy i kolokacje

WUTTWG

2005Tworzenie korpusów tekstowych

Pierwszy duży korpus - Brown Corpus: Kucera, Francis, lata 60-te XX w.

Organizacje zajmujące się tworzeniem korpusów:

Linguistic Data Consortium (LDC): www.ldc.upenn.eduEuropean Language Resources Association (ELRA): www.icp.grenet.fr/ELRA/Oxford Text Archive (OTA): ota.ahds.ac.ukChild Language Data Exchange System (CHILDES): childes.psy.cmu.edu/International Computer Archive of Modern English (ICAME):

nora.hd.uib.no/icame.html

W Polsce Instytut Informatyki PAN – www.ipipan.waw.pl

• Wiele korpusów nie jest niestety dostępnych bezpłatnie (np. Penn TreeBank), większość repozytoriów bezpłatnych to zwykle czysty tekst, co najwyżej z podziałem na kategorie tematyczne (OTA, Project Gutenberg) i ew. pewnymi dodatkowymi metadanymi dotyczącymi całego pojedynczego dokumentu (Reuters 21578, Reuters RCV1)

• Gdzie szukać korpusów? – warto zacząć na The Corpora List http://torvald.aksis.uib.no/corpora/

• Są także korpusy do zastosowań specjalizowanych – np.Enron Email Archive – dobry do badań nad klasyfikacją wiadomości email : http://www.cs.cmu.edu/~enron/

Page 4: WEDT Korpusy i kolokacje

WUTTWG

2005Tworzenie korpusów - problemy

• ilość danych – im korpus większy, tym lepszy (miliony słów, setki MB czystego tekstu), dzisiaj to stosunkowo niewielki problem, lecz np. każda operacja sortowania listy słów podczas tworzenia Brown Corpus zajmowała 17 godzin na IBM 7070

• formatowanie – znaki niealfabetyczne, wielkość znaków

• tokenizacja – podział tekstu na:• słowa• zdania

• metadane – wybór pomiędzy opisem ręcznym (często niemożliwym do wykonania) a automatycznym (często dającym nienajlepsze wyniki)

Page 5: WEDT Korpusy i kolokacje

WUTTWG

2005Problemy – wielkość liter

• zwykle dla dalszego przetwarzania NLP wielkość liter nie ma znaczenia:• THE == The == the

• co jednak z wielkimi literami w nazwach własnych, na początku zdań?

• w zasadzie wypadałoby oznaczać wystąpienie wszystkich nazw własnych – to jednak wymaga posiadania ich słownika aby było 100% dokładne

• prosta heurystyka – zamieniamy na małe litery początki zdań, oraz słowa pisane wyłącznie wielkimi literami – w ten sposób pozostawiamy wielkość liter w nazwach własnych, ale:• potrzebujemy algorytmu wykrywania końców zdań

(co może nie być łatwe),• nie zawsze słowa pisane wielką literą będą nazwami

własnymi (np. „Ogon to dla nich nie ogon, tylko Mały Dodatkowy Kawałeczek przyczepiony z tyłu.” – Kłapouchy)

Page 6: WEDT Korpusy i kolokacje

WUTTWG

2005Problemy – podział na słowa• podejście naiwne – słowa są ciągami znaków alfabetycznych,

oddzielonych od innych słów białymi znakami, mogą zawierać także apostrofy i myślniki – Kucera, Francis• nie działa np. dla Micro$oft, C|net, 23.13$, itd.

• kropka – słowa nie zawsze są oddzielone białymi znakami, czasami po słowie występuje kropka:• skróty (ale uwaga – wewnątrz skrótu może być więcej kropek) –

Inż., itd., U.S.• kropki zwykle pojawiają się na końcu zdań

• apostrof – szczególne problemy w języku angielskim, apostrof może mieć znaczenie gramatyczne• I’ll -> I will – to muszą być dwa oddzielne słowa, morfologicznie nie

jest bowiem możliwe złączenie czasownika i zaimka• forma dzierżawcza – Peter’s, boys’• zwykle przyjmuje się iż apostrof jest formą słowa, wtedy:

• I’ll -> I + ‘ + ll

• niestety apostrofy mogą się także pojawić jako znaczniki cytowania• trzeba odróżnić boys’ od she said ‘hello boys’

Page 7: WEDT Korpusy i kolokacje

WUTTWG

2005Podział na słowa cd.• myślniki – zwykle trzy główne funkcje

• dzielenie słów przy formatowaniu – wystąpią, gdy pozyskujemy tekst do korpusu z materiału drukowanego, mogą wtedy mylić się z pozostałymi dwoma formami

• oddzielenie poszczególnych morfemów w obrębie leksemu np. co-operative, e-mail, pro-Arab

• jako łączniki oddzielnych słów tworzących związek frazeologiczny np. once-in-a-lifetime, text-based, 26-year-old (przykład zdania: the once-quiet study of superconductivity...

nawet w języku literackim nie ma stałych reguł dotyczących użycia myślników:• wszystkie formy: database, data base oraz data-base są poprawne – czy

stanowią różne sposoby zapisania pojedynczego leksemu?

myślniki mogą być używane zamiast białych znaków do oddzielenia części zdania np.:I am happy-Bill is not.

• homonimy – słowa które mając tą samą formę typograficzną oznaczają różne leksemy np.• zamek (do drzwi) – zamek (króla)

Page 8: WEDT Korpusy i kolokacje

WUTTWG

2005Podział na słowa cd.• białe znaki

• nie zawsze są używane do podziału zdań na słowa np.

język chiński – zupełny brak podziału na słowaWaterloo znajduje się na południe od Kanady

język niemiecki – niektóre rzeczowniki zapisywane bez spacjiLebensversicherungsgesellschaftsangesteller – pracownik firmy ubezpieczeniowej

• czasami pojawiają się w środku słowa (leksemu)Nazwiska, skróty: Mr. John Smith, New York, U. S. A.idiomy: work out, make upnumery telefonów: +48 (22) 67728911

• problem formatów danych jest ogólniejszy – np.jak rozpoznać zapis liczby?

Angielski 123,456.78[0-9](([0-9]+[,])*)([.][0-9]+)

Francuski 123 456,78[0-9](([0-9]+[ ])*)([,][0-9]+

wyrażenia regularne

Page 9: WEDT Korpusy i kolokacje

WUTTWG

2005Podział na zdania (sentence boundary detection)

• podejście naiwne – zdanie to ciąg znaków zakończony ‘.’, ‘!’, lub ‘?’, ale...• kropki występują także w skrótach• zdania złożone zawierają także ‘-’, ‘;’, ‘:’ itp.• zdania mogą mieć strukturę hierarchiczną np.

„You remind me”, she remarked, „of your mother”.ale też„You remind me”, she remarked, „of your mother.”

• podejście lepsze – heurystyka:1) wstępne podziały zdań po . ? !.2) uwzględnienie cudzysłowów występujących po powyższych zdaniachMove

boundary after following quotation marks,3) skasowanie podziału zdania jeśli:

a) jeśli jest poprzedzony znanym skrótem, po którym występuje zwykle nazwa własna – np. Prof. lub vs.

b) jeśli jest poprzedzony znanym skrótem po którym nie występuje słowo rozpoczęte wielką literą

c) jeśli podział zdania wynikał z wystąpienia ‘!’ lub ‘?’ oraz następuje po nim mała litera

• jeszcze lepsze podejścia:• drzewa decyzyjne (Riley, 1989) - analiza częstości występowania

słów przed i po końcach zdań a także długość i wielkość liter słów• sieci neuronowe (Hearst, 1997) – analiza występowania POS słów

przed i po końcach zdań• obecnie jakość wykrywania zdań (rozumianego jako klasyfikacja)

~99% dla angielskiego

to są tak naprawdę dwa zdania

!!!

Page 10: WEDT Korpusy i kolokacje

WUTTWG

2005Metadane (markup)

Rodzaje informacji• oznaczenia końców zdań, akapitów itp.• oznaczenia POS• informacje o strukturze zdań• informacje semantyczne (podział korpusu na części tematyczne itp.)

Schematy kodowania• najstarsze (COCOA) bezpośrednio dodawały metadane do tekstu

korpusu – np. POS tags bezpośrednio „doklejane” do każdego słowa• stosowane także nawiasy w stylu Lisp

[S[NP[AT The][NNS children][VP[VBD ate]] ...• obecnie najczęściej wykorzystywany jakiś dialekt SGML, zwykle XML

(np. w RCV1)

Tag sets• Brown tag set – to już było tydzień temu• Inne - University of Lancaster Tag Set, Penn Treebank Tag Set, British

National Corpus (CLAWS*), Czech National Corpus, IPIPAN tagset (kodowanie binarne – poliqarp)

są spore różnice pomiędzy poszczególnymi zbiorami znaczników np. liczba znaczników - Penn treebank (45), Brown Corpus (87), Claws c5 (62)

Page 11: WEDT Korpusy i kolokacje

WUTTWG

2005

Zawartość korpusów – power laws

1

10

100

1000

10000

0 500 1000 1500 2000 2500 3000 3500

Fre

quency

Word ID

Pozycja Słowo Częstość

1 The 1664

2 And 940

3 To 789

4 A 788

5 It 683

6 You 666

7 I 658

8 She 543

9 Of 538

10 said 473

Prawo Zipf’a

Większość najczęściej występujących słów to stopwords

Through the looking glass

r1

f Zipf, gdzie f – częstość słowa, r - pozycja

Bρ)P(rf Mandelbrot, P, B, - parametry mierzące bogactwo słownictwa

hapax legomena

Page 12: WEDT Korpusy i kolokacje

WUTTWG

2005Związki frazeologiczne (colocations)

związek frazeologiczny (collocation) - przyjęte w użyciu połączenie dwóch lub więcej wyrazów, których znaczenie jest inne niż prosta suma jego części składowych:• strong tea• weapons of mass destruction• make up• the rich and powerful

dodatkowe znaczenie poza znaczeniem słów składowych:strong ~ having great physical strengthstrong tea – strong ~ rich in some active agentidiomy są najbardziej „ekstremalnym” przykładem związków frazeologicznych

ponadto istotne są zwyczaje językowe – mówimy strong tea ale nie powerful tea – powerfull tea będzie zrozumiałe ale nie jest powszechnie używane, ten rodzaj rozróżnienia przekazuje pewien kontekst kulturowy – strong: cigarettes, tea, coffee; powerful: drugs (Halliday, 1966)

znaczenie związków frazeologicznych dla badań nad językiem było szczególnie „pomijane” przez Chomskiego

poważne badania – od lat 60-tych XX wieku„you shall know a word by a company it keeps” – Firth, 1957praktyczne znaczenie w NLP – związki frazeologiczne często są istotnymi

słowami dla danego dokumentu

Page 13: WEDT Korpusy i kolokacje

WUTTWG

2005Colocations

cechy angielskich collocations:• non-compositionality – nie da się wywieść

znaczenia związku ze znaczenia części składowych np. heavy rain

• non-substitutability – np. red light• non-modifiability – np. take exceptions to

typy collocations:• określenia terminologiczne – dysk twardy• idiomy – birds of a feather, take off• nazwy własne – IBM Inc., Winston Churchill• wyrażenia numeryczne – dwa i pół tysiąca

Znajdowanie związków frazeologicznychmetoda najprostsza (naiwna) – „jeśli dwa słowa często występują razem, to tworzą związek frazeologiczny”niestety otrzymane bigramy nie są zwykle bardzo interesujące (NYT Newswire’90 corpus)

to jest szczególnie przydatne

Page 14: WEDT Korpusy i kolokacje

WUTTWG

2005Znajdowanie związków frazeologicznych

poprawianie jakości działania metody frekwencyjnej:

• użycie listy stopwords• filtrowanie związków-kandydatów przez

filtr POS o np. takich regułach (Katz, 1995):

• zastosowanie takiego filtra może znacznie poprawić jakość wyszukiwania – choć oczywiście aby go zastosować musimy dysponować informacją o częściach mowy (przykład tylko dla bigramów):

POS tags

Przykład związku

A N linear function

N N regression coefficients

A A N Gaussian random variable

A N N cumulative distribution function

N A N mean squared error

N N N class probability function

N P N degrees of freedom

Page 15: WEDT Korpusy i kolokacje

WUTTWG

2005Znajdowanie związków frazeologicznych

w ten sposób można też analizować różnice pomiędzy znaczeniami wyrazów, np. strong i powerfull• strong N oraz powerfull N

Page 16: WEDT Korpusy i kolokacje

WUTTWG

2005Związki frazeologiczne o luźnej strukturze

wiele związków ma strukturę, która nie jest stała – mogą to być dwa (lub więcej słów) rozdzielone zmienną liczbą innych słów np.

albo gorzej : she knocked on his door – 3 słowa odległości od

knocked do doorthey knocked at the door – 3 słowa100 women knocked on Donaldson’s door – 5 słów

(bo ‘)a man knocked on the metal front door – 5 słów

jeśli jednak sposób zapisu jest typowy (np. zwykle odległość 1 lub 2-ch słów) to możemy wykorzystać metody statystyczne

Knowledge discovery in databases

Knowledge discovery in large databases

Knowledge discovery in big databases

Page 17: WEDT Korpusy i kolokacje

WUTTWG

2005Średnia i wariancjazachowanie dwóch słów w korpusie tekstu możemy opisać za pomocą średniej i odchylenia standardowego miary odległości pomiędzy nimi (Smadja, 1993)

Page 18: WEDT Korpusy i kolokacje

WUTTWG

2005Średnia i wariancja

dla przykładu z knocked i door mamy odległości {3, 3, 5, 5} a zatem:

przykład odkrytych związków w NYT corpus

4)5533(41 d

15.1))45()45()43()43((31

1

)(22221

22

n

dds

n

i i

średnia bliska 1, odchylenie niewielkie – typ odkrywany przez metodę frenkwencyjną

wysokie odchylenie – brak związku pomiędzy słowami

średnia dużo większa niż 1, niewielkie odchylenie – nowy typ związku – np. hundreds dollars: hundreds of billions of dollars, hundreds of millions of dollars itp.

te najciekawsze, w miarę niewielkie odchylenie – np. Garrison said i said Garrison, Richard {M.} Nixon itd.

Page 19: WEDT Korpusy i kolokacje

WUTTWG

2005Testowanie hipotez statystycznychotrzymane wartości średniej i wariancji mogą być jednak wynikiem przypadku – powstaje pytanie, czy analizując korpus posiadamy wystarczająco dużo odpowiedniego materiału tekstowego?

1) Zdarzenie – współwystąpienie słów w1 i w2

2) Formułujemy hipotezę zerową H0 – zdarzenie jest przypadkowe3) Obliczamy prawdopodobieństwo wystąpienia zdarzenia p zakładając iż H0 jest prawdziwa

4) Odrzucamy H0 na pewnym poziomie ufności (p<0.05, 0.01, 0.005, 0.001) lub przyjmujemy jako prawdziwą w przeciwnym wypadku

Przyjmijmy iż jeśli współwystąpienie słów w1 i w2 jest przypadkowe to:

P(w1w2) = P(w1)P(w2)

Niezbędny jest test statystyczny – np. test t Studenta, który pozwala, na podstawie średniej i wariancji próby, określić prawdopodobieństwo pochodzenia próby z populacji o rozkładzie o średniej

Ns

xt

2

Page 20: WEDT Korpusy i kolokacje

WUTTWG

2005Testowanie hipotez statystycznych - przykładFraza new companies

Sekwencję słów w korpusie traktujemy jako sekwencję wystąpień bigramówMamy zatem szereg zmiennych losowych, 1 – wystąpienie new companies, 0 – brak wystąpienia – są to zatem próby Bernouliego

w NYT corpus:C(new) = 15828, C(companies) = 4675, C(new companies)=8, N=1430766

zgodnie z MLE mamy zatem:

P(new) = (15828/14307668)

P(companies) = (4675/ 14307668)H0:P(new companies) = P(new)P(companies) 3.615 x 10-7

Zatem jeśli hipoteza zerowa jest prawdziwa, to proces losowego generowania bigramów i przypisywania bigramom „new companies” wartości 1, a innym wartości 0 jest procesem Bernouillego z parametrem p = 3.615 x 10-7. Rozkład – rozkład dwumianowy dla n=1, zatem:

= 3.615 x 10-7

s2= p(1-p) p 3.615 x 10-7

999932.0

143076688

61510.314307668

8

2

7

2

Ns

xt

dla poziomu ufności 0.005, wartość graniczna 2.576, a zatem nie możemy odrzucić hipotezy zerowej i tym samym wnioskujemy, iż new companies nie jest związkiem frazeologicznym

Page 21: WEDT Korpusy i kolokacje

WUTTWG

2005Testowanie hipotez statystycznych - przykład

zastosowana do NYT corpus metoda daje tego rodzaju wyniki:

• inne zastosowanie – poszukiwanie słów związanych z różnymi znaczeniami dwóch słów np. poszukujemy tych słów, których użycie wraz ze strong i powerful najlepiej oddaje różnicę znaczeń tych słów

• można także stosować inne testy statystyczne, takie jak X2 – ten test nie zakłada a priori rozkładu normalnego populacji

Page 22: WEDT Korpusy i kolokacje

WUTTWG

2005Wskaźnik wiarygodności (likelihood ratio)Alternatywna metoda testowania hipotez statystycznych (Dunning, 1993):

Hipoteza 1: P(w2|w1) = p = P(w2|w1) – wystąpienia w1 i w2 niezależne

Hipoteza 2: P(w2|w1) = p1 p2 = P(w2|w1) – wystąpienia zależnewtedy:

dla H1: P(w2 | w1)= c2/N, P(w2|w1) = c2/N

dla H2: P(w2 | w1)= c12=p1; P(w2|w1)=(c2-c12)/(N-c1)

Korzystając z podejścia Bayesowskiego możemy oszacować wiarygodność obu tych teorii:

oraz przyjmujemy, iż początkowo wiarygodność obu tych hipotez jest taka sama, a zatem P(H1)=P(H2)=1/2

)()|(

)|(21

121211 wwP

HwwPwwHP )(

)|()|(

21

221212 wwP

HwwPwwHP

)()(

)()|()()|(

)()()|(

)()()|(

)|()|(

2

1

2221

1121

21

2221

21

1121

212

211

HLHL

HPHwwPHPHwwP

wwPHPHwwP

wwPHPHwwP

wwHPwwHP

likelihood ratio

Page 23: WEDT Korpusy i kolokacje

WUTTWG

2005Wskaźnik wiarygodności (likelihood ratio)Alternatywna metoda testowania hipotez statystycznych:

Hipoteza 1: P(w2|w1) = p = P(w2|w1) – wystąpienia w1 i w2 niezależne

Hipoteza 2: P(w2|w1) = p1 p2 = P(w2|w1) – wystąpienia zależnewtedy:

dla H1: P(w2 | w1)= c2/N, P(w2|w1) = c2/N = p gdzie c12 = C(w1w2)

dla H2: P(w2 | w1)= c12=p1; P(w2|w1)=(c2-c12)/(N-c1)

Korzystając z podejścia Bayesowskiego możemy oszacować wiarygodność obu tych teorii:

oraz przyjmujemy, iż początkowo wiarygodność obu tych hipotez jest taka sama, a zatem P(H1)=P(H2)=1/2

)()|(

)|(21

121211 wwP

HwwPwwHP )(

)|()|(

21

221212 wwP

HwwPwwHP

)()(

)()|()()|(

)()()|(

)()()|(

)|()|(

2

1

2221

1121

21

2221

21

1121

212

211

HLHL

HPHwwPHPHwwP

wwPHPHwwP

wwPHPHwwP

wwHPwwHP

likelihood ratio

Page 24: WEDT Korpusy i kolokacje

WUTTWG

2005Wskaźnik wiarygodności (likelihood ratio)

Zakładamy, że rozkład wystąpień słów jest rozkładem dwumianowym, otrzymujemy:

L(H1) = b(c12; c1,p) b(c2-c12; N-c1, p)

L(H2) = b(c12; c1,p1) b(c2-c12; N-c1,p2)

zaś –2log(L(H1)/L(H2)) ma rozkład zgodny z rozkładem Pearsona i może być bezpośrednio porównany z wartościami granicznymi dla 1-go stopnia swobody

rnr p)(1pr

np)n,b(r;r)P(R

r – liczba sukcesów w n próbach

p - prawdopodobieństwo sukcesu w jednej próbie

prawdopodobieństwo wylosowania odpowiedniej liczby – c12 ciągów w1w2 gdy już wylosowano w1

prawdopodobieństwo wylosowania odpowiedniej liczby w2 nie należących do ciągów w1w2

wystąpienie bigramu powerful computers jest e0.5*82.96 = 1.3x1018 bardziej prawdopodobne przy założeniu, iż łaczne wystąpienia tych dwóch słów są nieprzypadkowe