UNIWERSYTET GDA SKI WYDZIAŠ MATEMATYKI, FIZYKI I INFORMATYKI. Mateusz Puwaªowski UKRYTE INDEKSOWANIE SEMANTYCZNE



Podobne dokumenty
ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15

Matematyka wykªad 1. Macierze (1) Andrzej Torój. 17 wrze±nia Wy»sza Szkoªa Zarz dzania i Prawa im. H. Chodkowskiej

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.

Metodydowodzenia twierdzeń

Numeryczne zadanie wªasne

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Macierze i Wyznaczniki

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy.

Liniowe zadania najmniejszych kwadratów

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14

Zagadnienia na wej±ciówki z matematyki Technologia Chemiczna

Ekonometria - wykªad 8

1 Bª dy i arytmetyka zmiennopozycyjna

Ekonometria Bayesowska

det A := a 11, ( 1) 1+j a 1j det A 1j, a 11 a 12 a 21 a 22 Wn. 1 (Wyznacznik macierzy stopnia 2:). = a 11a 22 a 33 +a 12 a 23 a 31 +a 13 a 21 a 32

Lekcja 9 - LICZBY LOSOWE, ZMIENNE

Macierze. 1 Podstawowe denicje. 2 Rodzaje macierzy. Denicja

1 Metody iteracyjne rozwi zywania równania f(x)=0

Janusz Adamowski METODY OBLICZENIOWE FIZYKI Zastosowanie eliptycznych równa«ró»niczkowych

Ciaªa i wielomiany. 1 Denicja ciaªa. Ciaªa i wielomiany 1

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Ukªady równa«liniowych

Wst p do sieci neuronowych 2010/2011 wykªad 7 Algorytm propagacji wstecznej cd.

Funkcje, wielomiany. Informacje pomocnicze

CAŠKOWANIE METODAMI MONTE CARLO Janusz Adamowski

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

XVII Warmi«sko-Mazurskie Zawody Matematyczne

Macierze i Wyznaczniki

Metody numeryczne i statystyka dla in»ynierów

Lab. 02: Algorytm Schrage

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Metody numeryczne i statystyka dla in»ynierów

Bash i algorytmy. Elwira Wachowicz. 20 lutego

Lekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz

Optymalizacja R dlaczego warto przesi ± si na Linuxa?

Relacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X.

EGZAMIN MAGISTERSKI, r Matematyka w ekonomii i ubezpieczeniach

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1

Podstawowe działania w rachunku macierzowym

Wybrane poj cia i twierdzenia z wykªadu z teorii liczb

Ekonometria Bayesowska

Lekcja 12 - POMOCNICY

Ekonometria. wiczenia 1 Regresja liniowa i MNK. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

O pewnym zadaniu olimpijskim

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ZADANIA. Maciej Zakarczemny

Metody dowodzenia twierdze«

Temat: Funkcje. Własności ogólne. A n n a R a j f u r a, M a t e m a t y k a s e m e s t r 1, W S Z i M w S o c h a c z e w i e 1

Vincent Van GOGH: M»czyzna pij cy li»ank kawy. Radosªaw Klimek. J zyk programowania Java

3. (8 punktów) EGZAMIN MAGISTERSKI, Biomatematyka

X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne)

Interpolacja funkcjami sklejanymi

POLITECHNIKA WROCŠAWSKA WYDZIAŠ ELEKTRONIKI PRACA DYPLOMOWA MAGISTERSKA

Informacje pomocnicze

Zbiory i odwzorowania

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

2 Liczby rzeczywiste - cz. 2

Problemy optymalizacyjne - zastosowania

Liniowe równania ró»niczkowe n tego rz du o staªych wspóªczynnikach

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Programowanie funkcyjne. Wykªad 13

Ukªady równa«liniowych - rozkªady typu LU i LL'

Interpolacja Lagrange'a, bazy wielomianów

Elementy geometrii w przestrzeni R 3

KLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu

Przeksztaªcenia liniowe

Proste modele o zªo»onej dynamice

Strategie zabezpieczaj ce

Algorytmy zwiazane z gramatykami bezkontekstowymi

Wst p do informatyki. Systemy liczbowe. Piotr Fulma«ski. 21 pa¹dziernika Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

Elementarna statystyka Wnioskowanie o regresji (Inference 2 czerwca for regression) / 13

przewidywania zapotrzebowania na moc elektryczn

Materiaªy do Repetytorium z matematyki

Elementy geometrii analitycznej w przestrzeni

Podstawy modelowania w j zyku UML

Twierdzenie Wainera. Marek Czarnecki. Warszawa, 3 lipca Wydziaª Filozoi i Socjologii Uniwersytet Warszawski

Macierz A: macierz problemów liniowych (IIII); Macierz rozszerzona problemów liniowych (IIII): a 11 a 1m b 1 B = a n1 a nm b n

Podziaª pracy. Cz ± II. 1 Tablica sortuj ca. Rozwi zanie

PRZYPOMNIENIE Ka»d przestrze«wektorow V, o wymiarze dim V = n < nad ciaªem F mo»na jednoznacznie odwzorowa na przestrze«f n n-ek uporz dkowanych:

Rozdziaª 13. Przykªadowe projekty zaliczeniowe

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA. W obu podpunktach zakªadamy,»e kolejno± ta«ców jest wa»na.

Wektory w przestrzeni

Przekroje Dedekinda 1

x y x y x y x + y x y

Arkusz maturalny. Šukasz Dawidowski. 25 kwietnia 2016r. Powtórki maturalne

Baza danych - Access. 2 Budowa bazy danych

Programowanie wspóªbie»ne

2. L(a u) = al( u) dla dowolnych u U i a R. Uwaga 1. Warunki 1., 2. mo»na zast pi jednym warunkiem: L(a u + b v) = al( u) + bl( v)

Granular Computing 9999 pages 15 METODY SZTUCZNEJ INTELIGENCJI - PROJEKTY

Uczenie Wielowarstwowych Sieci Neuronów o

Modele wielorównaniowe. Problem identykacji

Liczenie podziaªów liczby: algorytm Eulera

Równania ró»niczkowe I rz du (RRIR) Twierdzenie Picarda. Anna D browska. WFTiMS. 23 marca 2010

Maszyny Turinga i problemy nierozstrzygalne. Maszyny Turinga i problemy nierozstrzygalne

Ekstremalnie fajne równania

Zadania z PM II A. Strojnowski str. 1. Zadania przygotowawcze z Podstaw Matematyki seria 2

Rozwi zanie równania ró»niczkowego metod operatorow (zastosowanie transformaty Laplace'a).

Ekonometria. wiczenia 2 Werykacja modelu liniowego. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Transkrypt:

UNIWERSYTET GDA SKI WYDZIAŠ MATEMATYKI, FIZYKI I INFORMATYKI Mateusz Puwaªowski Kierunek studiów: INFORMATYKA Numer albumu: 179761 UKRYTE INDEKSOWANIE SEMANTYCZNE Praca magisterska wykonana w Zakªadzie Sztucznej Inteligencji pod kierunkiem prof. dra hab. in». Sªawomira Wierzchonia Gda«sk 2013

Spis tre±ci 1 Modelowanie dokumentów na potrzeby grupowania 6 1.1 Modelowanie dokumentów........................... 6 1.1.1 Pomijanie wyrazów funkcyjnych.................... 6 1.1.2 Stemming i lematyzacja........................ 7 1.1.3 Inne metody modelowania dokumentów................ 8 1.2 Reprezentowanie dokumentów......................... 8 1.2.1 Wa»enie termów w modelu wektorowym............... 8 1.2.2 Mierzenie podobie«stwa w modelu wektorowym........... 11 2 Ukryte indeksowanie semantyczne 13 2.1 Wektory i warto±ci wªasne........................... 13 2.2 Rozkªad wedªug warto±ci osobliwych..................... 14 2.3 Przykªad przetwarzania j zyka naturalnego metod LSI........... 15 3 Probabilistyczne ukryte indeksowanie semantyczne 21 3.1 Model aspektowy................................ 21 3.2 Dopasowywanie modelu za pomoc algorytmu maksymalizacji warto±ci oczekiwanej EM................................... 25 3.3 Ulepszanie algorytmu maksymalizacji warto±ci oczekiwanej......... 26 4 Modelowanie ukrytych tematów w rozmaito±ci dokumentu 28 4.1 Model ukrytej zmiennej z regulacj rozmaito±ci............... 29 4.2 Dopasowywanie modelu przez uogólniony EM................ 31 5 Implementacja opisanych koncepcji 35 5.1 Modelowanie dokumentów........................... 36 5.2 Ukryte indeksowanie semantyczne....................... 37 5.3 Probabilistyczne ukryte indeksowanie semantyczne.............. 38 5.4 Laplasjanowe probabilistyczne ukryte indeksowanie semantyczne...... 39 6 Badanie wydajno±ci zaimplementowanych algorytmów 43 6.1 Reprezentacja tematów............................. 43 6.2 Indeksowanie semantyczne........................... 46 2

6.2.1 Model przestrzeni wektorowej i LSI.................. 46 6.2.2 Warianty probabilistycznego ukrytego indeksowania semantycznego 47 6.3 Miary jako±ci grupowania........................... 48 6.4 Badanie grupowania dokumentów....................... 49 6.4.1 Wariant *-U............................... 49 6.4.2 Wariant *-Q............................... 56 6.4.3 Wyszukiwanie przez zapytania..................... 59 3

Wst p W dzisiejszych czasach umiej tno± skutecznego wyszukiwania informacji to klucz do wiedzy. Internet zmieniª oblicze nauki. Wszystkie dziedziny wiedzy rozwijaj si w zawrotnym tempie, a jedn z gªównych tego przyczyn jest szybki przepªyw informacji. Publikacja napisana w jednym zak tku ±wiata mo»e by niemal natychmiast przeczytana przez naukowca na drugiej póªkuli. Wpisuj c do wyszukiwarki internetowej temat, który nas interesuje, w mgnieniu oka otrzymujemy materiaªy z nim zwi zane. Z drugiej jednak strony zewsz d jeste±my zasypywani reklamami, które to w coraz bardziej podst pny sposób tra- aj do naszych potrzeb. Warto zatrzyma si na chwil i odpowiedzie sobie na pytanie jak to mo»liwe,»e wyszukiwarki internetowe wiedz co mamy na my±li, a reklamodawcy potra podpowiada nam rzeczy, którymi najprawdopodobniej jeste±my zainteresowani. Obecnie istniej algorytmy, które w inteligentny sposób potra rozró»nia zbli»one semantycznie sªowa oraz wyra»enia. Wszystkie one tworzone s w oparciu o proces nazwany ukryt analiza semantyczn. Ukryta analiza semantyczna jest technik ekstrakcji informacji z tekstów, która poprzez redukcj wymiarowo±ci przestrzeni, w której zawarte s wszystkie sªowa, usiªuje odtworzy semantyczn struktur zawarto±ci dokumentów. Pierwszy raz, t metod zaprezentowali Landauer i Dumais [6]. LSA jest teori i matematyczn metod wydobywania wiedzy o kontekstowym znaczeniu sªów z du»ych korpusów tekstów. W tekstach cz sto zdarza si,»e ró»ne sªowa s u»yte do opisania tego samego zdarzenia lub wyst puj ce sªowa maj wiele znacze«. Powoduje to,»e przeszukiwania dokumentu tekstowego wedªug sªów jest niewydajnym sposobem na znalezienie wszystkich dokumentów, które s powi zane z danym sªowem kluczowym. LSA analizuje du» ilo± tekstu i wykorzystuje wyniki do stwierdzenia jak bardzo dwa teksty s do siebie znaczeniowo podobne, chocia» jej zastosowanie w grupowaniu dokumentów jest wci» tematem bada«. Pocz tkowo zostaªa zastosowana do poprawienia jako±ci wyszukiwarek opartych o model wektorowy. Ju» w pierwszych pracach nad LSA Deerwester zauwa»yª,»e analiza oparta na semantyce ukrytej pomaga w rozwi zaniu problemów synonimii (kilka wyrazów maj to samo znaczenie w okre±lonym kontek±cie, np. barwa a kolor) i polisemii (jedno sªowo mo»e mie wiele znacze«, np. zamek) w systemach wydobywania informacji. Badania nad LSA prowadzone s na szerok skal i cz sto potwierdzaj jego skuteczno±. LSA mo»e by u»yta do realizacji przeró»nych zada«, takich jak porz dkowanie dokumentów w logiczne zbiory, wyszukiwanie w tekstach zwrotów odnosz cych si do tego samego tematu czy ltrowania wiadomo±ci e-mail i posortowanie ich wzgl dem odpowied- 4

nich folderów. Praca z LSA i forami internetowymi zaowocowaªa komercyjnym projektem Knowledge Post, którego celem byªo umo»liwienie u»ytkownikom znajdowania komentarzy, które s semantycznie podobne do aktualnie wpisywanego i pokazanie wyników jeszcze przed wysªaniem zapytania [14]. Dzi ki temu u»ytkownik miaª znale¹ posty, które ju» wcze±niej kto± napisaª na interesuj cy go temat. Kolejnym produktem wykorzystuj cym LSA jest Summarist, którego celem jest, jak sama nazwa wskazuje, tworzenie abstraktów dokumentów [13]. LSA znajduje równie» zastosowanie w oczyszczaniu i standaryzowaniu danych. Rozwa»my przykªad, w którym rma zajmuj ca si magazynowaniem danych przechowuje miliony formularzy. Zawieraj one mi dzy innymi dane dotycz ce miejsca zamieszkania czy miejsca pracy. W celu obróbki statystycznej danych musimy mie pewno±,»e dane s spójne, tzn. wpisane we wcze±niej ustalony zesªownikowany sposób. W przypadku, gdy formularze wypeªniane s przez osoby nie maj ce takiej ±wiadomo±ci, te same dane b d si w nieznaczny sposób ró»ni, np. adres zamieszkania zapisany jako ul. Boh. Monte Cassino"mo»na zapisa w peªnej formie ulica Bohaterów Monte Cassino; nazw uczelni mo»emy zapisa jako Uniwersytet Gda«ski lub równowa»nie Uniwersytet w Gda«sku. Czªowiek bez problemu potra zauwa»y,»e pomimo odmiennej formy, zwroty znacz to samo - komputer niestety nie. Tu z pomoc przychodzi zastosowanie ukrytej analizy semantycznej [21]. Jeszcze jednym ciekawym zagadnieniem zwi zanym z LSA jest przeszukiwanie wieloj zycznych zbiorów. Poniewa» zbiory reprezentowane s jako wektory liczb, nie istniej bariery j zykowe, a zwroty równoznaczne identykowane s poprzez statystyk i miary podobie«stwa [22]. W niniejszej pracy zajm si trzema ró»nymi algorytmami zwi zanymi z ukryt analiz semantyczn. W rozdziale pierwszym opisz w jaki sposób b d modelowaª dokumenty do potrzeb analitycznych. Od rozdziaªu drugiego rozpoczn opisywanie idei algorytmów. Najpierw, na prostym przykªadzie opisz dziaªanie podstawowego algorytmu ukrytego indeksowania semantycznego. W rozdziale trzecim zajm si wersj probabilistyczn LSI, a w czwartym rozszerzon jego wersj, wykorzystuj c wªa±ciwo±ci geometryczne ka»dego dokumentu z osobna. W rozdziale pi tym przedstawi w jaki sposób zrealizowaªem implementacj opisanych algorytmów, a w ostatnim - szóstym - wyniki bada«, które wykonaªem na ich podstawie. 5

Rozdziaª 1 Modelowanie dokumentów na potrzeby grupowania 1.1 Modelowanie dokumentów Dokumenty przeznaczone do pogrupowania mo»emy otrzyma w ró»niej postaci. Mog to by oddzielne pliki tekstowe, b d¹ jeden plik tekstowy podzielony na sekcje lub plik w formacie xml, którego w zªy odpowiadaj kolejnym dokumentom. Ka»d form reprezentacji powinni±my sprowadzi do jednej wspólnej, która stanie si naszym punktem pocz tkowym do dalszej pracy nad zagadnieniem zwi zanym z indeksowaniem. Teksty napisane j zykiem naturalnym cz sto s skomplikowane skªadniowo, mog zawiera synonimy, metafory, zb dne zaimki, spójniki i przyimki, a sªowa przybiera ró»n form (odmian ). Taka forma reprezentacji dokumentu zdecydowanie nie jest efektywna. Znaczenie (sens) tekstu mo»emy zrozumie bez wi kszych problemów u»ywaj c prostych, takich samych sªów, w nieodmienionej formie, tj. zaprzesta u»ywania wyrazów bliskoznacznych, synonimów, czy pozostawi wszystkie czasowniki w formie bezokolicznika. Dlatego te» kolejnym krokiem pozwalaj cym na wykorzystanie algorytmów grupowania b dzie przetworzenie tekstu w taki sposób, aby w ªatwy sposób mo»na byªo go wprowadzi do komputera i wykonywa obliczenia. 1.1.1 Pomijanie wyrazów funkcyjnych Czasami, niektóre popularne sªowa pojawiaj ce si w tek±cie wnosz do niego znikom warto± merytoryczn, w zwi zku z czym mog zosta usuni te nie powoduj c strat w jako±ci przekazu jaki niesie za sob dany dokument. Sªowa te nazywane s z angielskiego stop words i maj charakter pomocniczy, funkcyjny, np. a, albo, ale, dlaczego, który, nasz, przecie», ty, wszystkie, zapewne,»e. Pomijanie wyrazów funkcyjnych jest prost metod poprawiania jako±ci reprezentacji tekstów. Wyrazy funkcyjne mo»emy otrzyma na dwa sposoby. Automatycznie, b d¹ korzystaj c z gotowych zbiorów. Automatyczne pozyskanie polega na ustaleniu, które sªowa w danej kolekcji dokumentów wyst puj naj- 6

cz ±ciej i wybraniu cz stotliwo±ci powy»ej której b dziemy odkªada je na tzw. stop li±cie, czyli li±cie zawieraj cej stop words. Gotowe zbiory z ªatwo±ci znajdziemy w Internecie. Usuwanie sªów funkcyjnych nie jest po» dane w ka»dym przypadku, szczególnie w zadaniach wyszukiwania. Niekiedy poprzez usuni cie cz sto wyst puj cych wyrazów nie b dziemy w stanie otrzyma poprawnego wyniku zapytania, np. wpisuj c do wyszukiwarki tytuª utworu zawieraj cy sªowa, z których wszystkie wyst puj na stop li±cie Let It Be. 1.1.2 Stemming i lematyzacja Dokumenty skonstruowane poprawnie gramatycznie, zawsze b d zawieraªy te same sªowa w ró»nej postaci (odmianie), np. praca, pracy, prac lub z dodanymi charakterystycznymi przedrostkami b d¹ przyrostkami ªadny, ªadniejszy, najªadniejszy. Celem stemmingu jak i lematyzacji jest redukcja wariacji form, a tak»e wyrazów pochodnych. Stemming to proces polegaj cy na wydobyciu z wybranego wyrazu tzw. rdzenia, a wi c tej jego cz ±ci, która jest odporna na odmiany przez przyimki, rodzaje itp. Klasycznym przykªadem tej procedury jest algorytm Portera, który znajduje rdzenie dla sªów angielskich. Tego typu algorytmy tworzone s zwykle w oparciu o reguªy specjalnie skonstruowane dla konkretnego j zyka. O ile wykonanie takiego zadania dla j zyka angielskiego jest stosunkowo proste, to dla trudniejszych j zyków nie sprawdza si ono najlepiej. W j zyku francuskim liczba reguª, które musiaªby zosta u»yte do poprawnego sprowadzenia sªów do rdzenia wynosi 60 000 (dla zaledwie kilkudziesi ciu w przypadku j zyka angielskiego), a dla j zyka polskiego kilkukrotnie wi cej 1. Z drugiej strony, lematyzacja oznacza sprowadzenie grupy wyrazów stanowi cych odmian danego zwrotu do wspólnej postaci, umo»liwiaj cej traktowanie ich wszystkich jako te samo sªowo. Lematyzacja odbywa si najcz ±ciej z wykorzystaniem sªowników, w którym zawarte s informacje na temat odmiany wyrazów. Sªowniki mog zawiera dodatkowe informacje, takie jak rodzaj i cz ± mowy. Zauwa»y nale»y,»e efektem dzia- ªania lematyzatora nie mo»e by jedynie forma podstawowa wej±ciowego wyrazu, gdy» istniej pary ró»nych leksemów o jednakowym lemacie. Informacja o rozpoznanym leksemie powinna zawiera, oprócz lematu, równie» jego cze± mowy (która mo»e by podstaw dalszego poprawienia reprezentacji dokumentu) i ewentualnie numer kolejnego homonimu 2 (je»eli istnieje kilka leksemów o jednakowej formie podstawowej i cz ±ci mowy, np. zamek-budowla warowna i zamek-suwak). 1 Blog Pawªa Wróblewskiego http://search.blox.pl/2010/01/myslec-po-polsku.html 2 Homonim - wyraz o takim samym brzmieniu, lecz odmiennym znaczeniu, pochodzeniu i czasami tak»e pisowni (sjp.pl) 7

1.1.3 Inne metody modelowania dokumentów Warto zaznaczy,»e opisane powy»ej dwie metody doskonalenia reprezentacji nie s jedyne. Zostaªy one wybrane poniewa» s najbardziej popularne, a ponadto zostaªy wykorzystane w tej pracy. Aby poprawi wektorowe reprezentacje dokumentów stosowane s ró»ne metody bazuj ce na wªasno±ciach j zyka naturalnego. Umo»liwiaj one ekstrakcje informacji charakterystycznych dla danego dokumentu, przyczyniaj c si do generowania trafniejszych wyników grupowania. Mi dzy innymi s to: selekcja wyrazów o okre±lonej cz ±ci mowy (wa»enie w ró»ny sposób czasowników, rzeczowników, przymiotników itp.); rozpoznawanie fraz - wyst puj ce w tek±cie frazy, czyli zwi zki wyrazów stanowi cych caªo± znaczeniow, powinny by pojedynczymi termami w reprezentacji dokumentów; rozpoznawanie jednostek nazwanych, czyli sekwencji wyrazów, które odnosz si do pojedynczych bytów takich jak osoby, organizacje czy lokalizacje geograczne. Modelowanie dokumentów szerzej opisane jest bardzo dobrze w pracy [20]. 1.2 Reprezentowanie dokumentów Najbardziej powszechnym sposobem reprezentowania dokumentów tekstowych jest model wektorowy (ang. Vector Space Model). Zostaª on zaproponowany w artykule [19]. W modelu tym dokument zapisywany jest jako wektor liczb rzeczywistych [w t1, w t2,..., w tn ], gdzie w ti oznacza wag termu t i, za± Ω = {t 1, t 2,..., t n } jest zbiorem wszystkich termów. Zgodnie z modelem wektorowym, n-elementowy korpus (zbiór n dokumentów tekstowych) reprezentowany jest przez macierz C m n (ang. term-document matrix ), w której kolejne kolumny s wektorami odpowiadaj cymi poszczególnym dokumentom. 1.2.1 Wa»enie termów w modelu wektorowym Wa»enie cz sto±ci termów Wa»enie termów jest bardzo wa»nym skªadnikiem procesu wyszukiwania informacji (i grupowania) w dokumentach tekstowych. Jak wcze±niej wspomniaªem, ka»dy korpus reprezentowany jest przez macierz C m n, która w najprostszej postaci mo»e wygl da nast puj co: 8

Historia Prawo Matematyka Informatyka Filozoa Ekonomia twierdzenie 0 0 1 0 1 1 algorytm 0 0 1 1 0 0 Sokrates 1 1 0 0 1 0 gospodarka 0 1 0 0 0 1 wojna 1 0 0 0 0 0 podatek 0 1 0 0 0 1 proces 0 1 0 1 0 0 W nagªówku mamy nazwy dziedzin nauki, które odpowiadaj tytuªom konkretnych dokumentów, a w wierszach pierwszej kolumny termy w nich wyst puj ce. Ka»demu wyst pieniu termu w dokumencie przypisujemy wag 1, je±li term wyst puje w dokumencie, 0 w przeciwnym wypadku. W wyniku takiego sposobu reprezentacji otrzymujemy wektory (binarne) reprezentuj ce dokumenty, skªadaj ce si z warto±ci 0 i 1, których wymiar jest równy ilo±ci sªów w korpusie. Oczywi±cie taki sposób wa»enia nie jest najlepszy, poniewa» zazwyczaj potrzebujemy informacji o tym, jak cz sto dane sªowo pojawia si w dokumencie, aby móc przyporz dkowa go do po» danej grupy. Przeksztaª my zatem nasz macierz, której warto±ciami b d teraz cz sto±ci sªów wyst puj cych w dokumentach: Historia Prawo Matematyka Informatyka Filozoa Ekonomia twierdzenie 0 0 6 0 10 7 algorytm 0 0 2 9 0 0 Sokrates 1 2 0 0 7 0 gospodarka 0 2 0 0 0 14 wojna 21 0 0 0 0 0 podatek 0 9 0 0 0 12 proces 0 24 0 15 0 0 Teraz z macierzy poza informacj czy term wyst puje w dokumencie, mo»emy odczyta tak»e jak cz sto si on pojawia. Warto zauwa»y,»e taka reprezentacja sprawia,»e niemo»liwa jest do odczytania kolejno± w jakiej wyst puj termy w dokumencie. Podej- ±cie to nazywamy workiem sªów (ang. bag of words). Jest to niew tpliwie wielka wada, szczególnie w j zykach, w których kolejno± sªów ma du»e znaczenie, np. angielski. Dla przykªadu zdanie Jack likes Margaret i Margaret likes Jack maj identyczn reprezentacj wektorow, mimo»e ich znaczenie jest ró»ne. Pomimo,»e mamy ju» macierz, z której wynika jak cz sto dane sªowo pojawia si w dokumencie (co daje nam mo»liwo± gradacji wyników wyszuka«/ grupowania) mo-»emy pokusi si o kolejn jej modykacj. Otó», porz dkuj c dokumenty wzgl dem ich trafno±ci na zadane pytanie nie mo»emy mie pewno±ci,»e dokument, w którym sªowo podatek wyst puje np. 45 jest lepszy ni» dokument, w którym to sªowo wyst puje 36 razy. Zapewne powinni±my je umie±ci wysoko w rankingu, jednak cz stotliwo± wy- 9

st pie«sªów po przekroczeniu pewnej granicy nie powinna mie a» takiego znaczenia. Mówi si,»e trafno± dokumentu ro±nie nieliniowo wzgl dem cz sto±ci wyst pie«sªów. Rozwa»my zatem logarytmiczn cz stotliwo± wa»enia: { 1 + log10 tf t,d je»eli tf t,d > 0 w t,d = 0, w przeciwnym wypadku Taki sposób wa»enia spowoduje,»e waga termu nie b dzie rosªa liniowo wraz ze wzrostem jego cz stotliwo±ci, a co za tym idzie, nasz algorytm wyszukiwania stanie si bardziej odporny na niepotrzebne powtarzanie sªów w dokumentach, czy nawet umy±le wpisywanie tych samych sªów w celu zwi kszenia trafno±ci tekstu. Maj tak reprezentacj, mo»emy ju» w prosty sposób uzyska dokumenty, które s podobne do zadanego pytania wykorzystuj c wzór: score = (1 + log tf t,d ), t q d czyli sumuj c wagi wszystkich termów wyst puj cych zarówno w dokumencie, jak i zapytaniu. Odwrotna cz sto± w dokumencie W tej cz ±ci przedstawi drugi sposób wa»enia, który jest wykorzystywany przy dopasowywaniu dokumentów do zapyta«. Ide stoj c za odwrotn cz sto±ci w dokumencie jest fakt,»e rzadziej wyst puj ce termy nios ze sob wi cej informacji ni» te, które wyst puj cz sto. We¹my na przykªad term mikroprocesor. Je±li taki term wyst pi w zapytaniu, mo»emy by wr cz pewni,»e b dzie pasowaª do niego dokument Informatyka. St d chcemy, aby rzadkie termy miaªy wysokie wagi. Id c w drug stron, rozwa»my pewien term z zapytania, który pojawia sie cz sto w przeszukiwanej kolekcji (np. wzrost, wysoko±, czas). Przy bie» cych ustaleniach, dokumenty posiadaj ce taki term b d bardziej trafne dla zapytania, jednak z praktyki wiemy,»e tak nie jest. Zatem chcemy przypisa tym termom wag odpowiednio wysok, jednak nie wy»sz ni» termom rzadkim. dt t oznacza cz sto± w dokumencie termu t, tzn. liczb dokumentów zawieraj cych t. dt t jest zawsze mniejsza lub równa liczbie dokumentów. Deniujemy idf, czyli odwrotn cz sto± w dokumencie: idf t = log 10 (N/dt t ), gdzie N to ilo± dokumentów. Logarytm u»yty jest w takim samym celu jak miaªo to miejsce przy obliczaniu wagi na podstawie cz sto±ci termu. Warto zaznaczy,»e istnieje tylko jedna warto± idf dla ka»dego termu w kolekcji. 10

Wa»enie cz sto±ci termów - odwrotna cz sto± w dokumencie Z dwóch opisanych powy»ej sposobów wa»enia mo»emy zªo»y kolejn wag, b d c kombinacj tych, opisanych wcze±niej. Jest to po prostu ich iloczyn: w tf idf = w tf (t, d) w idf (t, d). Funkcja przyjmuje wysokie warto±ci dla termów, które wyst puj cz sto w maªej liczbie dokumentów, ±rednie dla termów pojawiaj cych si w wielu dokumentach lub pojawiaj cych si rzadko w niewielu dokumentach i niskie dla termów wyst puj cych w prawie wszystkich lub wszystkich dokumentach. 1.2.2 Mierzenie podobie«stwa w modelu wektorowym Po odpowiednim zwa»eniu termów otrzymali±my V -wymiarow przestrze«wektorow. Termy s osiami przestrzeni, natomiast dokumenty punktami lub wektorami w tej przestrzeni. Wymiar przestrzeni zazwyczaj jest bardzo du»y. W zale»no±ci od korpusu nawet kilkadziesi t tysi cy wymiarów. Warto jednak zauwa»y,»e wi kszo± skªadowych wektorów to zera, tak wi c mamy do czynienia z wektorami bardzo rzadkimi. Je±li zadaniem jest wyszukanie informacji w korpusie to zapytanie tak»e powinno zosta zwa»one i zaprezentowane jako wektor w przestrzeni korpusu. Najbardziej trafne dokumenty zostan ocenione na podstawie blisko±ci do wprowadzonego zapytania. Blisko± okre±lamy na podstawie podobie«stwa wektorów (odlegªo±ci pomi dzy nimi). Pierwszym sposobem zmierzenia odlegªo±ci pomi dzy dwoma wektorami jest obliczenie odlegªo±ci pomi dzy ich ko«cami (odlegªo± euklidesowa). Okazuje si jednak,»e miara ta nie jest najlepszym pomysªem, poniewa» odlegªo± euklidesowa jest du»a dla wektorów o ró»nych dªugo±ciach. Na rysunku 1.2.2 przedstawiona jest przykªadowa przestrze«wektorowa. Zauwa»my,»e dystans pomi dzy q i d2 jest wi kszy ni» pomi dzy q i d1 czy q i d3. Mierz c odlegªo± takim sposobem w kontek±cie wyszukiwania informacji dostaniemy bª dne wyniki. Na rysunku 1.2.2 wida,»e wektor d1 jest bli»ej tematu gospodarka, a wektor d2 bli»ej polityka. Nasze zapytanie zawiera termy, które dotycz zarówno polityki i gospodarki, tak wiec najbardziej trafnym dokumentem powinien okaza si dokument d2, który le»y zaraz obok wektora reprezentuj cego zapytanie. W zwi zku tym w mierzeniu podobie«stwa powinni±my bra pod uwag nie dystans pomi dzy wektorami, a k t pomi dzy nimi. Mo»emy oceni dokumenty ukªadaj c je w kolejno±ci malej cej je±li mierzymy k t pomi dzy wektorem dokumentu i zapytana (k t 0 oznacza identyczne wektory) lub rosn cej, je±li we¹miemy pod uwag kosinus tego k ta (kosinus 1 oznacza identyczne wektory). Najpopularniejsz miar odlegªo±ci dla reprezentacji wektorowej dokumentów jest miara kosinusowa. Aby jej u»y musimy najpierw znormalizowa dªugo±ci wektorów. Wektor normalizujemy przez podzielenie ka»dej z jego skªadowych przez jego dªugo±. 11

U»yjemy do tego normy L 2 : x 2 = Po wykonaniu takiej operacji, dostaniemy wektor jednostkowy. Odlegªo± kosinusow obliczamy wzorem cos ( q, d) q d = q d, gdzie q i to waga i-tego termu w zapytaniu, a d i waga i-tego termu w dokumencie. Cz sto okazuje si,»e wektory dokumentów i zapyta«normalizujemy ju» na poziomie tworzenia macierzy C m n. W zwi zku z tym obliczenie odlegªo±ci kosinusowej sprowadza si do prostego mno»enia: V cos ( q, d) = q d = q i d i i x 2 i i=1 Rysunek 1.1: Przykªadowa przestrze«wektorowa. 12

Rozdziaª 2 Ukryte indeksowanie semantyczne Ukryta analiza semantyczna jest technik przetwarzania j zyka naturalnego, która analizuje zwi zki pomi dzy zbiorem dokumentów i termów, które zawieraj. Tworzony jest zestaw tematów, które opisuj analizowane sªowa i dokumenty. LSA dziaªa w oparciu o zaªo»enie,»e sªowa, których znaczenie jest podobne, wyst puj cz ±ciej w tych samych cz ±ciach tekstów. Informacja ta jest wykorzystywana w kontek±cie grupowania st d cz sto mówimy o ukrytym indeksowaniu semantycznym. LSI polega na utworzeniu macierzy, której wiersze odpowiadaj unikalnym termom, a kolumny dokumentom. Elementy okre- ±laj powi zanie sªowa z dokumentem. LSI wykorzystuje metod rozkªadu macierzy na warto±ci osobliwe, która umo»liwia redukcj wymiarowo±ci macierzy, zachowuj c przy tym struktur podobie«stwa pomi dzy wierszami. W niniejszym rozdziale najpierw zostanie omówiona technika SVD (poprzedzona informacjami na temat wektorów i warto±ci wªasnych), a potem przedstawi na przykªadzie jak wygl daj kolejne kroki LSI. 2.1 Wektory i warto±ci wªasne Wektor x jest wektorem wªasnym macierzy A je±li istnieje taka liczba λ,»e Av = λv. λ to warto± wªasna macierzy A. Liczba λ jest warto±ci wªasn macierzy A wtedy i tylko wtedy, gdy jest pierwiastkiem wielomianu charakterystycznego det(a λi) macierzy A. Macierz A jest kwadratowa (A n n ). Rozwa»amy tylko wektory niezerowe. Obliczanie warto±ci wªasnej: Av = λv przenosimy λv na drug stron : wyª czamy za nawias wektor v Av λv = 0 (A Iλ)v = 0 det(a Iλ) = 0 13

Nie zajmujemy si przypadkiem det(a Iλ) 0, poniewa» prowadzi on do otrzymania zerowego wektora. Skoro wyznacznik jest równy 0, to problem sprowadza si do rozwi zania równania wielomianowego n-tego stopnia, tzn. c n λ n + + c 1 λ + c 0 = 0 Zatem z równania znajdujemy n-ró»nych λ, które s warto±ciami wªasnymi. Aby obliczy wektory wªasne wystarczy podstawi kolejne warto±ci wªasne λ i do równania: (A Iλ)v = 0 i znajdowa dla nich kolejne odpowiadaj ce im wektory wªasne v i. 2.2 Rozkªad wedªug warto±ci osobliwych Niech A b dzie macierz m n z warto±ciami b d cymi liczbami rzeczywistymi gdzie m > n. Rozwa»my kwadratow macierz n n B = A T A. Šatwo zwerykowa,»e B jest symetryczna, tj. B T = (A T A) T = A T (A T ) T = A T A = B). Zostaªo pokazane,»e wektory wªasne takich macierzy (A T A) s nieujemnymi, rzeczywistymi liczbami. Skoro s nieujemne, mo»emy zapisa je w porz dku malej cym jako kwadraty nieujemnych liczb rzeczywistych σ 2 1 >= >= σ 2 n. Dla pewnego indeksu r, pierwsze r liczb σ 1 >= σ >= σ n s dodatnie, podczas gdy reszta to zero. Dla powy»szych warto±ci wªasnych wiemy,»e odpowiadaj ce im wektory wªasne x 1,..., x r s prostopadªe. Ponadto, znormalizujemy je, aby miaªy dªugo± 1. Niech S 1 = [x 1,..., x r ]. Utworzymy wektory y 1 = 1 σ 1 Ax 1,..., y r = 1 σ r Ax r. S to prostopadªe m-wymiarowe wektory (ortonormalne) dªugo±ci 1, poniewa» ( ) T 1 yi T 1 y j = Ax i Ax j σ 1 σ j = 1 x T i A T Ax j σ i σ j = 1 x T i Bx j σ i σ j = 1 x T i σj 2 x j σ i σ j = σ j σ i x T i x j jest 0 dla i j i 1 dla i = j (gdy x T i x j = 0 dla i j i x T i x i = 1). Niech S 2 = [y 1,..., y r ]. 14

Mamy y T j Ax i = y T j (σ i y i ) = σ i y T j y i, co daje 0 je»eli i j i σ i je±li i = j. Otrzymujemy S T 2 AS 1 = Σ, gdzie Σ jest macierz diagonaln r r z σ 1,..., σ r wzdªu» diagonali. Obserwujemy,»e S T 2 jest r m, A jest m n, a S 1 n r. Poniewa» S 2 i S 1 s ortonormalne 1, S 2 S T 2 = I m m, S 1 S T 1 = I n n, gdzie I ( m m) i I ( n n) s macierzami identyczno±ciowymi m m i n n, to mno» c powy»sze równo±ci przez S 2 lewostronnie i S 1 prawostronnie dostajemy A = S 2 ΣS T 1. Powy»szy rozkªad A na S T 2 AS 1 jest nazywany rozkªadem na warto±ci osobliwe. Dla uproszczenia notacji, zapisujemy S 2 jako S, a S 1 jako U (pozbywaj c si tym samym indeksów dolnych) i otrzymujemy A = SΣU T. 2.3 Przykªad przetwarzania j zyka naturalnego metod LSI Przykªad na podstawie poradnika LSI napisanego przez Alexa Thomo 2. Zaªó»my,»e mamy nast puj cy zestaw 5 dokumentów: d 1 : Pan Tadeusz to polska epopeja narodowa. d 2 : Mickiewicz jest autorem epopei narodowej. d 3 : Mickiewicz byª polskim poet. d 4 : Poeta to twórca poezji. d 5 : Poezja jest synonimem liryki. i szukane dwa sªowa kluczowe: Mickiewicz, poeta. Na pocz tek, u»ywaj c metod opisanych w rozdziale drugim, modelujemy dokumenty na potrzeby algorytmu. Dodatkowo, w trosce o przejrzysty zapis przykªadu, usuniemy z nich sªowa, które nie maj w tym momencie wi kszego znaczenia. Po przetworzeniu (uproszczeniu) otrzymujemy: d 1 : tadeusz polska epopeja d 2 : mickiewicz autor epopeja d 3 : mickiewicz polska poeta 1 Macierz ortonormalna - macierz ortogonalna, dla której dªugo± ka»dego wektora kolumnowego w macierzy jest równa 1. Macierz ortogonalna - macierz kwadratowa A speªniaj ca równo± A T A = AA T = I, unitarna, o warto±ciach rzeczywistych. 2 http://alexthomo.blogspot.com/2009/03/latent-semantic-analysis-tutorial.html 15

d 4 : poeta poezja d 5 : poezja liryka Wyra¹nie dokument d 3 powinien zosta najwy»ej oceniony, gdy» zawiera zarówno sªowo Mickiewicz, jak i poeta. Nast pnie kolejne w rankingu powinny by d 2 i d 4, zawieraj ce jedno ze sªów zawartych w zapytaniu. Pomimo tego,»e d 1 i d 5 nie maj zawartego w swojej strukturze ani jednego ze sªów kluczowych, równie» powinny zosta zwrócone jako potencjalnie interesuj ce wyniki. Intuicyjnie, jako ludzie, wiemy,»e zarówno d 1, jak i d 5 w pewnym (cho ró»nym) stopniu s powi zane z zapytaniem. Ukryte indeksowanie semantyczne b dzie zdolne zauwa»y,»e termin Mickiewicz jest powi zany z d 1, poniewa» termin epopeja wyst puj cy w tym samym dokumencie, wyst puje równie» w d 2. Termin poeta jest powi zany z d 5, poniewa» termin poezja wspóªwyst puje w d 4 z szukanym terminem poeta. LSI dodatkowo zwa»y poprawnie odkryte powi zania. d 1 jest bardziej powi zane z zapytaniem ni» d 5 poniewa» d 1 jest podwójnie poª czone ze sªowem Mickiewicz przez term polska i epopeja i ze sªowem poeta przez polska, gdzie d 5 ma tylko jedno pojedyncze poª czenie z zapytaniem przez term poezja. Zastosowanie SVD w LSI Niech A b dzie macierz m n b d c kolekcj dokumentów. Ka»da kolumna A odpowiada jednemu dokumentowi. Je±li termin i wyst puje a razy w dokumencie j to A[i, j] = a. Wymiary macierzy A, m i n, odpowiadaj kolejno liczbie sªów i dokumentów w kolekcji. Macierz A dla powy»szego przykªadu: d 1 d 2 d 3 d 4 d 5 tadeusz 1 0 0 0 0 polska 1 0 1 0 0 epopeja 1 1 0 0 0 mickieiwcz 0 1 1 0 0 autor 0 1 0 0 0 poeta 0 0 1 1 0 poezja 0 0 0 1 1 liryka 0 0 0 0 1 Zaobserwujmy,»e B = A T A jest macierz dokument na dokument. Je»eli dokumenty i i j maj wspólnych b sªów, to B[i, j] = b. Z drugiej strony, C = AA T jest macierz term na term. Je±li term i i j wyst puje jednocze±nie w c dokumentach to C[i, j] = c. Oczywi±cie, zarówno B, jak i C s kwadratowe i symetryczne; B jest macierz m m, a C jest n n. Teraz, wykonamy SVD na A u»ywaj c macierzy B i C, zgodnie z opisem z rozdziaªu pierwszego. A = SΣU T, 16

gdzie S to macierz wektorów wªasnych B, U to macierz wektorów wªasnych C, a Σ to diagonalna macierz warto±ci osobliwych uzyskanych po spierwiastkowaniu warto±ci wªasnych B. Macierz Σ w naszym przykªadzie wygl da nast puj co 2, 265 0 0 0 0 0 1, 789 0 0 0 Σ = 0 0 1, 414 0 0 0 0 0 1, 414 0 0 0 0 0 0, 819 Jak wida, warto±ci osobliwe wzdªu» przek tnej Σ s zapisane w porz dku malej cym. Niektóre warto±ci osobliwe s zbyt maªe, a co za tym idzie nieistotne. To, co jest uwa»ane za zbyt maªe zazwyczaj wyznaczamy drog prób i bª dów. W LSI ignorujemy maªe warto±ci osobliwe i zast pujemy je zerem. Zaªó»my,»e zachowujemy tylko k warto±ci osobliwych w Σ. Wtedy w macierzy Σ wszystkie warto±ci b d zerami, poza pierwszymi k wpisami wzdªu» diagonali. W zwi zku z tym, mo»emy zredukowa macierz Σ do postaci Σ k, która jest macierz k k zawieraj c tylko k warto±ci osobliwych, które zatrzymali±my. Analogicznie robimy z macierzami S i U T, aby uzyska macierze maj ce k kolumn i wierszy odpowiednio. Oczywi±cie nale»y zauwa»y,»e cz ±ci macierzy, które odrzucili±my i tak zostaªyby wyzerowane przez warto±ci zerowe z macierzy Σ. Macierz A jest teraz przybli»ona przez A k = S k Σ k U T k. Zauwa»my,»e skoro S k, Σ k i Uk T s m k, k k i k n, to macierz powstaªa w wyniku ich mno»enia A k b dzie znów macierz m n. Intuicyjnie, k pozostaªych skªadników wektorów wªasnych z S i U odpowiada k ukrytym tematom, w których uczestnicz termy i dokumenty. Termy i dokumenty maj teraz now reprezentacj pod wzgl dem ukrytych poj. Mianowicie, termy s reprezentowane przez wiersz wektorów macierzy m k S k Σ k, podczas gdy, dokumenty przez kolumny macierzy k n Σ k U T k. Doko«czenie przykªadu Doko«czmy teraz przykªad, który zacz li±my w tym rozdziale. Zaªó»my,»e wybrali±my k = 2, wi c b dziemy rozwa»a tylko pierwsze dwie warto±ci osobliwe. Mamy: [ ] 2, 265 0 Σ 2 = 0 1, 789 17

U T 2 = tadeusz 0, 238 0, 172 polska 0, 506 0, 035 epopeja 0, 475 0, 344 mickiewicz S 2 = 0, 506 0, 035 autor 0, 238 0, 172 poeta 0, 364 0, 509 poezja 0, 126 0, 682 liryka 0, 0305 0, 310 [ 0, 538 0, 538 0, 607 0, 216 ] 0, 069 0, 308 0, 308 0, 246 0, 666 0, 554 Term w przestrzeni jest reprezentowany jako wektor wierszowy S 2, podczas gdy dokumenty przez wektory kolumnowe U2 T. W zasadzie skalujemy (dwie) wspóªrz dne tych wektorów mno» c je przez odpowiadaj ce im warto±ci osobliwe z Σ 2, a zatem reprezentujemy term przez wektor wierszowy S 2 Σ 2 i dokumenty przez wektory kolumnowe Σ 2 U2 T. Ostatecznie otrzymujemy: i epopeja = tadeusz, autor = [ ] 1, 077, poeta = 0, 616 d 1, d 2 = [ ] 1, 219, d 3 = 0, 551 [ ] 0, 538, polska, mickiewicz = 0, 308 [ ] 0, 824, poezja = 0, 911 [ ] 1, 376, d 4 = 0, 440 [ ] 0, 285, liryka = 1, 219 [ ] 0, 490, d 5 = 1, 191 [ ] 0, 157 0, 991 [ ] 1, 146, 0, 062 [ ] 0, 069 0, 554 Teraz mo»emy zaprezentowa zapytanie przez wektor obliczony jako centroid wektorów odpowiadaj cych czªonom zapytania. W naszym przykªadzie zapytanie ma posta Mickiewicz, poeta, wi c wektor wygl da nast puj co: q = [ ] 1, 146 + 0, 062 2 [ ] 0, 824 0, 911 = [ ] 0, 985. 0, 487 W celu ocenienia dokumentów w odniesieniu do zapytania q u»yjemy odlegªo±ci kosinusowej, a wi c obliczamy d i q d i q gdzie i [1, n]. Nast pnie sortujemy wyniki w porz dku malej cym i mo»emy zobaczy, 18

który z dokumentów jest najbli»szy naszemu zapytaniu: d 3 = 0, 989 d 4 = 0, 751 d 1 = 0, 634 d 2 = 0, 634 d 5 = 0, 578 Aby zobrazowa sytuacj, mo»emy zaprezentowa wyniki w formie geometrycznej. Rysunek 2.1: Geometryczna reprezentacja dokumentów d 1,..., d 5, ich termów i zapytania q Bazuj c na wykresie, mo»emy poczyni nast puj ce obserwacje: Dokumenty d 3 i d 4 s zdecydowanie najbli»ej zapytania, co jest oczywiste (zawieraj sªowa kluczowe). Pomimo»e dokument d 2 zawiera sªowo kluczowe, zostaª on gorzej oceniony ni» d 4. Staªo si tak dlatego, poniewa» d 4 oprócz sªowa kluczowego jest poª czony dodatkowo z najlepszym dokumentem (d 3 ) przez sªowo poeta. Dokumenty d 1 i d 2 zostaªy ocenione przez algorytm tak samo. Co oznacza,»e pomimo»e d 2 nie zawiera»adnego z szukanych sªów, to jest mocno powi zany z zapytaniem przez podwójne wi zanie, o którym byªa mowa na pocz tku. 19

Dokument d 1 jest bli»ej zapytania q ni» d 5. Jako wynik d 1 jest oceniony wy»ej ni» d 5. To jest zgodne z naszymi wcze±niejszymi przewidywaniami. 20

Rozdziaª 3 Probabilistyczne ukryte indeksowanie semantyczne 3.1 Model aspektowy Rdzeniem probabilistycznej ukrytej analizy semantycznej jest statystyczny model, który zostaª nazwany modelem aspektowym [12]. Model aspektowy jest rodzajem modelu wykorzystuj cego ukryt zmienn 1 dla wspóªwyst powania danych, który przyporz dkowuje nieobserwowan zmienn klasow z Z = {z 1,..., z K } do ka»dej obserwacji, np. do ka»dego wyst pienia sªowa w W = {w 1,..., w M } w dokumencie d D = {d 1,..., d N }. Mo»na go zdeniowa nast puj co: wybierz dokument d z prawdopodobie«stwem P (d), wybierz ukryt klas z z prawdopodobie«stwem P (z d), utwórz sªowo w z prawdopodobie«stwem P (w z). Rezultatem b dzie zaobserwowana para (d, w), podczas gdy ukryta klasa z jest odrzucona. Przeniesienie tego procesu na model ª cznego prawdopodobie«stwa skutkuje wyra»eniem P (d, w) = P (d)p (w d), gdzie (3.1) P (w d) = z Z P (w z)p (z d). (3.2) Zasadniczo, aby wyprowadzi (3.2) trzeba zsumowa wszystkie mo»liwe wybory z, które mogªyby wygenerowa obserwacj. Model aspektowy jest statystycznym modelem mieszanym, który jest oparty na dwóch zaªo»eniach niezale»no±ci. (i) Przyjmuje si,»e obserwowane pary (d, w) s wygenerowane niezale»nie (nawi zanie do podej±cia worka sªów 1 Zmienna ukryta - zmienna, która nie jest obserwowana bezpo±rednio, jednak wpªywa w pewien sposób na zmienne obserwowane. 21

(ang. bag of words)); (ii) zakªada si warunkow niezale»no± w taki sposób,»e uwarunkowane od ukrytej klasy z sªowa w s wygenerowane niezale»nie od dokumentu d. Bior c pod uwag,»e liczba stanów jest mniejsza ni» liczba dokumentów (K < N), z dziaªa jak w skie gardªo w przewidywaniu w uwarunkowanego od d. Zauwa»my,»e w odró»nieniu od modelów grupowania dokumentów, specyczne dla dokumentu rozkªady sªowa P (w d) s otrzymane przez kombinacj wypukª 2 tematów (aspektów) P (w z). Dokumenty nie s przyporz dkowane do grup, lecz s scharakteryzowane przez specyczn mieszank tematów z wagami P (z d). Te mieszane wagi oferuj wi ksz moc modelowania i koncepcyjnie s bardzo ró»ne od prawdopodobie«stw a posteriori w modelach klastrowych i (nienadzorowanych) naiwnych modelach bayesowskich. Rysunki 3.1 3.2 3.3 obrazuj ide plsa 3 Rysunek 3.1: Podej±cie naiwne ˆP MaximumLikelihood (w d) = w n(d,w). Prawdopodobie«- n(d,w ) stwo opieramy tylko na frekwencji sªów w dokumencie. W przypadku, gdy term nie wyst puje w dokumencie dostajemy zerowe prawdopodobie«stwo. n 2 Kombinacja wypukªa sko«czonej liczby elementów v 1, v 2,..., v n przestrzeni wektorowej V, to kombinacja liniowa α i v i tych elementów taka,»e jej wspóªczynniki s nieujemne oraz ich suma wynosi i=1 1. 3 Rysunki zaczerpni te z wykªadu Thomasa Hofmanna, opublikowanego 25. lutego, 2007 http:// videolectures.net/slsfs05_hofmann_lsvm/ 22

Rysunek 3.2: Problemem, który rozwi zujemy jest to w jaki sposób uwzgl dni pozostaªe dokumenty przy oszacowywaniu. Ide jest traktowanie dokumentu jako cz ±ci kolekcji, a nie jako odizolowanej jednostki. 23

Rysunek 3.3: Wprowadzamy warstw po±redni, tzw. warstw ukrytych tematów (peªni c tak»e rol w skiego gardªa). Zamiast wydobywa informacje bezpo±rednio z dokumentu, obliczamy prawdopodobie«stwo,»e dany term t jest reprezentowany przez konkretny ukryty temat z. Przykªadowo, mamy dokument, który porusza temat zwi zany z handlem. Zadaniem modelu wykorzystywanego przez plsa jest znalezienie ukrytego tematu np. handel, który b dzie wyra»ony przez rzeczywiste termy (np. ekonomia, import, handel). Rozkªad mieszany, a rozkªad wedªug warto±ci osobliwych W celu rozja±nienia relacji z LSA, przepiszmy model aspektowy jako sparametryzowany przez (3.4) w notacji macierzowej. St d deniujemy macierze Û = (P (d i z k )) i,k, ˆV = (P (wj z k )) j,k, ˆΣ = diag(p (zk )) k. Prawdopodobie«stwo cz ±ci wspólnej zdarze«p mo»e by wtedy zapisane jako produkt P = Û ˆΣ ˆV t. Porównuj c z SVD, mo»na poczyni nast puj ce obserwacje: iloczyny tensorowe pomi dzy wierszami Û i ˆV odzwierciedlaj warunkow niezale»- no± w PLSA, lewe / prawe wektory wªasne w SVD odpowiadaj tematom P (w z) i rozkªadom komponentów P (d z) modelu aspektowego, mieszane proporcje P (z) w PLSA zast puj warto±ci osobliwe SVD w LSA. 24

Pomimo podobie«stw istnieje równie» fundamentalna ró»nica pomi dzy PLSA i LSA. Jest ni funkcja celu u»yta do zdeterminowania optymalnej dekompozycji / przybli»enia. W LSA jest to L 2 (norma euklidesowa) lub norma Frobeniusa (uogólnienie normy euklidesowej). W odró»nieniu, PLSA opiera si na funkcji wiarygodno±ci próbkowania wielomianu i d»y do wyra¹niej maksymalizacji przewidywanej mocy modelu. Funkcja maksymalizuj ca wiarygodno± Pod»aj c zasad wiarygodno±ci, okre±limy P (d), P (w z) i P (w z) przez maksymalizacj funkcji log-wiarygodno±ci L = n(d, w) log P (d, w), (3.3) d D w W gdzie n(d, w) oznacza cz stotliwo± termu, np. ilo± wyst pie«w w d. Warto zaznaczy,»e równowa»na, symetryczna wersja modelu mo»e by otrzymana przez odwrócenie prawdopodobie«stwa warunkowego P (z d) z wykorzystaniem twierdzenia Bayesa, co wygl da nast puj co P (d, w) = z Z P (z)p (d z)p (w z). (3.4) Jest to tylko reparametryzowana wersja modelu generatywnego opisanego w (3.1), (3.2). 3.2 Dopasowywanie modelu za pomoc algorytmu maksymalizacji warto±ci oczekiwanej EM Standardow procedur szacowania maksymalnej wiarygodno±ci w modelach ukrytej zmiennej jest algorytm maksymalizacji warto±ci oczekiwanej EM (ang. Expectation-Maximization) [7]. EM naprzemiennie wykonuje dwa sprz»one kroki (i) oczekiwanie (E), w którym obliczane jest prawdopodobie«stwo a posteriori dla ukrytych zmiennych z na podstawie bie» cego oszacowania parametrów, (ii) maksymalizacja (M), w którym parametry s aktualizowane dla zadanego prawdopodobie«stwa a posteriori obliczonego w wcze±niejszym kroku. Dla modelu aspektowego w symetrycznej parametryzacji, twierdzenie Bayesa prowadzi do równania kroku E P (z d, w) = P (z)p (d z)p (w z) P (z )P (d z )P (w z ), (3.5) z Z które jest prawdopodobie«stwem,»e sªowo w w okre±lonym dokumencie lub kontek±cie d jest wyja±nione przez temat odpowiadaj cy z. Standardowe obliczenia prowadz do kroku M d n(d, w)p (z d, w) P (w z) = d,w n(d, w )P (z d, w ), (3.6) 25

w n(d, w)p (z d, w) P (d z) = d,w n(d, w)p (z d, w), (3.7) P (z) = 1 n(d, w)p (z d, w), R d,w R d,w n(d, w). (3.8) Naprzemienne wykonywanie (3.5) i (3.6)-(3.8) deniuje zbie»n procedur, która osi ga maksimum lokalne log-wiarygodno±ci. 3.3 Ulepszanie algorytmu maksymalizacji warto±ci oczekiwanej Dotychczas skupiaªem si na szacowaniu maksymalnej wiarygodno±ci lub, równowa»nie, zmniejszaniu zagmatwania sªów (ang. perplexity 4 ). Trzeba jednak»e rozró»ni przewidywaln wydajno± modelu na danych treningowych i oczekiwan wydajno± na nowych danych testowych. W szczególno±ci, naiwne jest zaªo»enie,»e model, który osi gn ª niskie zagmatawnie na zbiorze treningowym, zachowa si odpowiednio podobnie na nowych danych. Wyprowadzenie warunków, na których uogólnienie nieznanych danych mo»e by gwarantowane jest obecnie fundamentalnym problemem teorii uczenia statystycznego. W pracy [10] autorzy proponuj uogólnienie maksymalnej wiarygodno±ci dla modeli mieszanych nazwane tempered EM (TEM), oparte o regulacj entropii i blisko zwi zane z metod znan jako deterministyczne wy»arzanie [6]. Jako,»e wyprowadzenie TEM jest poza tematem tej pracy, zainteresowanych odsyªam do [12] i [17], a w tej sekcji zaprezentuj niezb dne modykacje standardowego algorytmu EM. Zasadniczo, trzeba wprowadzi parametr kontrolny β (odwrotna temperatura obliczeniowa) i zmodykowa krok E (3.5): P β (z d, w) = P (z)[p (d z)p (w z)] β z P (z )[P (d z )P (w z )] β. (3.9) Zauwa»my,»e β = 1 skutkuje standardowym krokiem E, podczas gdy dla β < 1 wiarygodno± w wzorze Bayesa jest opuszczana. Mo»na pokaza,»e TEM minimalizuje funkcj celu znan jako wolna energia [16] skutkiem czego jest zbie»ny algorytm. Podczas, gdy oparte na temperaturze uogólnienia EM i powi zane algorytmy optymalizacyjne s cz sto u»ywane jako homotopie 5 lub metody kontynuacyjne w celu unikni cia niekorzystnego lokalnego ekstremum, gªówn zalet TEM w naszym przypadku jest unikanie nadmiernego dopasowania. Nieco sprzecznie z duchem wy»arzania jako metod kontyunacyjn, autor [10] proponuje wykorzysta (3.9) do zªagodzenia EM przez ogrzewanie. W celu okre±lenia optymalnej warto±ci β proponuje podzieli zbiór danych na treningowe i testowe. Ta idea mo»e by zaimplementowana nast puj co: 4 Zagmatwanie odnosi si do ±redniej arytmetycznej logarytmu odwrotno±ci prawdopodobie«stwa na nietrenowanym zbiorze. 5 Homotopia - ci gªe przej±cie mi dzy dwoma przeksztaªceniami ci gªymi przestrzeni topologicznych. 26

1. We¹ β 1 i wykonuj EM do momentu, gdy wydajno± na zbiorze testowym zacznie si pogarsza. 2. Zmniejsz β µβ (z µ < 1) i wykonaj jedn iteracj TEM. 3. Tak dªugo jak wydajno± na danych testowych poprawia si (zadowalaj co) kontynuuj iteracje TEM utrzymuj c warto± β W przeciwnym razie przejd¹ do wcze±niejszego kroku. 4. Zatrzymaj kiedy zmniejszanie parametru β nie przynosi dalszych ulepsze«. 27

Rozdziaª 4 Modelowanie ukrytych tematów w rozmaito±ci dokumentu Modelowanie tematów jest kluczowym problemem analizy dokumentów. Jednym z kanonicznych podej± do tego zagadnienia jest probabilistyczne ukryte indeksowanie semantyczne, które maksymalizuje ª czne prawdopodobie«stwo dokumentów i termów w korpusie. Gªówn wad PLSI jest niezale»ne szacowanie rozkªadu prawdopodobie«stwa ka»dego dokumentu w ukrytych tematach oraz to,»e liczba parametrów w modelu ro±nie liniowo wraz ze wzrostem rozmiaru korpusu, co prowadzi do powa»nych problemów z nadmiernym dopasowaniem. Alokacja ukrytej zmiennej Dirichleta (LDA) zostaªa zaproponowana, aby przezwyci»y ten problem poprzez traktowanie rozkªadu prawdopodobie«stwa ka»- dego dokumentu w tematach, bardziej jako K-parametrow ukryt zmienn losow ni» du»y zbiór indywidualnych parametrów (K jest liczb ukrytych tematów). Oba powy»sze podej±cia do modelowania tematów znajduj ukryte tematy w przestrzeni euklidesowej, jednak»e nie ma przekonuj cych dowodów na to,»e dokumenty s próbkowane z przestrzeni euklidesowej. Ostatnie badania pokazuj,»e dokumenty zazwyczaj s próbkowane z nieliniowej, nisko-wymiarowej rozmaito±ci, która zawarta jest w otaczaj cej j wielowymiarowej przestrzeni [9] [23]. St d lokalna struktura geometryczna jest niezb dna do odkrycia ukrytej semantyki korpusu. Dyskretny laplasjan Laplasjan kombinatoryczny (nazywany po prostu laplasjanem) L grafu nieskierowanego G deniowany jako L = D A gdzie D jest macierz diagonaln, której elementami s stopnie w zªów tego grafu. Kombinatoryczny laplasjan L posiada nast puj ce wªasno±ci: L jest macierz symetryczn i dodatnio póª-okre±lon. L ma m nieujemnych i rzeczywistych warto±ci wªasnych 0 = λ 0 λ 1 λ m 1. 28

Najmniejszej warto±ci wªasnej λ 0 = 0 laplasjanu odpowiada staªy wektor wªasny e. Suma elementów ka»dego wiersza i ka»dej kolumny laplasjanu jest równa zero. Rozmaito± Rozmaito± to podzbiór przestrzeni euklidesowej, który w dowolnym lokalnym obszarze mo»na opisa (w ogólno±ci wielowymiarow ) funkcj gªadk 1. Bardziej ogólnie rozmaito± topologiczn mo»na przedstawi jako przestrze«topologiczn, która w odpowiednio maªej skali przypomina przestrze«euklidesow okre±lonego wymiaru, zwan wymiarem rozmaito±ci. St d, linia i okr g to rozmaito±ci jednowymiarowe, powierzchnia i sfera to rozmaito±ci dwuwymiarowe, i tak dalej w przestrzeniach o wi kszej liczbie wymiarów. Bardziej formalnie, ka»dy punkt rozmaito±ci n-wymiarowej ma homeomorczne s siedztwo w otwartym podzbiorze n-wymiarowej przestrzeni R n. W pracy [4] autorzy proponuj nowy algorytm nazwany laplasjanowym probabilistycznym ukrytym indeksowaniem semantycznym (LapPLSI). LapPLSI modeluje przestrze«dokumentów, jako podrozmaito± zawart w przestrzeni otaczaj cej i wykonuje modelowanie tematów bezpo±rednio na rozmaito±ci dokumentów w zapytaniach. W tym rozdziale zaprezentuj ów algorytm, który unika ogranicze«swoich poprzedników przez wcielenie regulatora opartego na geometrii. 4.1 Model ukrytej zmiennej z regulacj rozmaito±ci Dokumenty d D s losowane zgodnie z rozkªadem P D. Mo»na by mie nadziej,»e rozkªad P D mo»e by wykorzystany do lepszego oszacowania rozkªadu warunkowego P (z d). Niemniej jednak, je±li nie ma zidentykowanych relacji pomi dzy P D i rozkªadem warunkowym P (z d), maªo prawdopodobne jest,»eby wiedza o P D byªa bardzo przydatna. W zwi zku z tym wprowad¹my szczególne zaªo»enie dotycz ce poª czenia P D i prawdopodobie«stwa warunkowego P (z d). Zaªó»my,»e je±li dwa dokumenty d 1, d 2 D s blisko w geometrii rzeczywistej P D, to rozkªady warunkowe P (z d 1 ) i P (z d 2 ) s podobne do siebie. Innymi sªowy, rozkªad prawdopodobie«stwa warunkowego P (z d) zmienia si gªadko wraz z geodezyjnymi w wewn trznej geometrii 2 P D. To zaªo»enie równie» odnosi si do zaªo»enia rozmaito±ci [2], które odgrywa istotn rol w rozwijaniu ró»norodnych rodzajów algorytmów uwzgl dniaj cych redukcj wymiarowo±ci [2] [9] i póª-nadzorowanym uczeniu [3] [24]. Niech f k (d) = P (z k d) b dzie warunkow Funkcj Rozkªadu Prawdopodobie«stwa (FRP), u»yjemy f k 2 M do zmierzenia gªadko±ci f k wzdªu» geodezyjnych w wewn trz- 1 Funkcj f C nazywa si funkcj gªadk. Jest ona dowolnie wysokiej regularno±ci, tj. istniej pochodne wszystkich rz dów i s ci gªe. 2 Ogóª tych wªasno±ci geometrycznych powierzchni, które nie zale» od przestrzeni, w której dana powierzchnia jest rozwa»ana (zanurzona). 29

nej geometrii P D. Kiedy rozwa»ymy przypadek,»e no±nikiem funkcji 3 P D jest spójna rozmaito± M R M, naturalnym wyborem dla f k 2 M jest f k 2 M = Mf k 2 dp D (d) (4.1) d M gdzie M jest gradientem f k wzdªu» rozmaito±ci M, a caªka jest po rozkªadzie P D. W rzeczywisto±ci, rozmaito± dokumentu jest zazwyczaj nieznana. Dlatego f k 2 M w równaniu (4.1) nie mo»e by obliczone. Ostatnie badania nad spektraln teori grafów [5] i teori uczenia rozmaito±ci [1] pokazaªy,»e f k 2 M mo»e by dyskretnie przybli»one przez graf najbli»szych s siadów na rozproszonych punktach danych. Rozwa»my graf N- wierzchoªkowy, gdzie ka»dy wierzchoªek odpowiada dokumentowi w korpusie. Deniujemy wa»on macierz incydencji W: W ij = { cos(di, d j ) je»eli d i N p (d j ) lub d j N p (d i ) 0 w przeciwnym wypadku (4.2) gdzie N p (d i ) oznacza zbiór p najbli»szych s siadów d i. Zdeniujemy L = D W, gdzie D jest macierz diagonaln, której warto±ciami s sumy kolumn W, D ii = j W ij. L jest nazywany laplasjanem grafu [5], który jest dyskretn aproksymacj operatora Laplasjana- Beltramiego M na rozmaito±ci [1]. A zatem, dyskretna aproksymacja f k 2 M mo»e by obliczona nast puj co: R k = 1 N (P (z k d i ) P (z k d j )) 2 W ij 2 = i,j=1 N P (z k d i ) 2 D ii i=1 i,j=1 N P (z k d i )P (z k d j )W ij (4.3) = f T k Df k f T k W f k = f T k Lf k gdzie f k = [f k (d 1 ),..., f k (d M )] T = [P (z k d 1 ),..., P (z k d M )] T. M mo»e by u»yte jako miara gªadko±ci funkcji warunkowego rozkªadu prawdopodobie«stwa P (z k d) wzdªu» geodezyjnych w wewn trznej geometrii zbioru dokumentów. Przez minimalizacj R k, dostajemy warunkow funkcj (FRP) f k, która jest wystarczaj co gªadka na rozmaito±ci dokumentu. Intuicyjne wyja±nienie minimalizacji R k jest takie,»e je±li dwa dokumenty d i i d j s blisko (np. W ij s wielkie), f k (d i ) i f k (d j ) s podobne do siebie. Teraz mo»emy zdeniowa nowy model ukrytej zmiennej. Nowy model przyjmuje podstawowy schemat PLSI. Jego celem jest maksymalizacja i uregulowanie log-wiarygodno±ci 3 No±nik funkcji domkni cie zbioru argumentów funkcji, dla których ma ona warto± ró»n od zera. 30

w sposób: L = L λr = L λ i=1 K k=1 N M n(d i, w j ) log λ 2 j=1 K k=1 j=1 gdzie λ jest parametrem reguluj cym. R k K P (w j z k )P (z k d i ) k=1 N (P (z k d i ) P (z k d j )) 2 W ij (4.4) 4.2 Dopasowywanie modelu przez uogólniony EM Aby zobaczy jak mo»na oszacowa parametry w modelu LapPLSI, najpierw musimy rozwa»y przypadek,»e λ = 0. W tym przypadku LapPLSI sprowadza si do tradycyjnego modelu PLSI. Standardow procedur szacowania maksymalnej wiarygodno±ci w modelu ukrytej zmiennej jest algorytm Oczekiwanie-Maksymalizacja (EM) [7]. EM skªada si z dwóch kroków: (i) oczekiwanie (E), gdzie obliczone s prawdopodobie«stwa a posteriori dla ukrytych zmiennych na podstawie obecnych szacunków dla parametrów, (ii) maksymalizacja (M), gdzie parametry s aktualizowane na podstawie maksymalizowania tzw. oczekiwanych, kompletnych danych log-wiarygodno±, które zale» od prawdopodobie«stwa a posteriori obliczonego w kroku E. W PLSI mamy NK + MK parametrów {P (w j, z k ), P (z k d i )}, a ukryte zmienne to ukryte tematy z k. Dla uproszczenia, u»ywamy Ψ, do zanotowania wszystkich NK + MK parametrów. Krok E: Prawdopodobie«stwa a posteriori dla ukrytych zmiennych to P (z k d i, w j ), co mo»e by obliczone przez proste zastosowanie wzoru Bayesa w równaniu (3.1): P (z k d i, w j ) = P (w j z k )P (z k d i ) K l=1 P (w j z l )P (z l d i ) (4.5) Krok M: Przez proste wyprowadzenia [11], mo»emy otrzyma istotn cz ± oczekiwanych kompletnych danych log-wiarygodno± dla PLSI N M K Q(Ψ) = n(d i, w j ) P (z k d i, w j ) log[p (w j z k )P (z k d i )] i=1 j=1 k=1 Maksymalizuj c Q(Ψ) zgodnie z parametrami Ψ i z warunkiem,»e K k=1 P (z k d i ) = 1 i M j=1 P (w j z k ) = 1, mo»emy otrzyma równanie ponownego szacowania dla kroku M [11]: P (w j z k ) = N i=1 n(d i, w j )P (z k d i, w j ) M m=1 N i=1 n(d i, w m )P (z k d i, w m ), (4.6) 31

M j=1 P (z k d i ) = n(d i, w j )P (z k d i, w j ), (4.7) n(d i ) Z pocz tkowym losowym odgadni ciem {P (w j z k ), P (z k d i )}, PLSI kolejno stosuje równanie kroku E (4.5) i równania kroku M (4.6), (4.7) a» do napotkania warunków zako«czenia. Model LapPLSI przyjmuje te same podstawowe schematy co PLSI. A wi c LapPLSI ma ten sam krok E co PLSI. Dla kroku M mo»na dowie±,»e istotne cz ±ci oczekiwanych danych wiarygodno±ci dla LapPLSI to Q(Ψ) = Q(Ψ) λr = Q(Ψ) λ K 2 k=1 j=1 N (P (z k d i ) P (z k d j )) 2 W ij Skoro reguluj ca cz ± R zawiera tylko parametry P (z k d i ), mo»emy otrzyma to samo równanie kroku M, jak w równaniu (4.6). Jednak»e, nie mamy bliskiej formy równania ponownego szacowania dla P (z k d i ). W tym przypadku, tradycyjny algorytm EM nie mo»e by zastosowany. Poni»ej, przedyskutujemy jak u»y uogólnionego algorytmu EM (GEM) [15], aby zmaksymalizowa uregulowan log-wiarygodno± LapPLSI z równania (4.4). Najwi ksza ró»nica pomi dzy GEM i tradycyjnym EM jest w kroku M. Zamiast znajdowa globalnie optymalne rozwi zania dla Ψ, które maksymalizuje oczekiwane kompletne dane log-wiarygodno± Q(Ψ) w kroku M algorytmu EM, GEM potrzebuje tylko znale¹ lepsze Ψ. Niech Ψ n oznacza warto±ci parametru we wcze±niejszej iteracji i Ψ n+1 oznacza warto±ci parametru w obecnej iteracji. Zbie»no± algorytmu GEM wymaga jedynie, aby Q(Ψ n+1 ) Q(Ψ n ) [15]. W ka»dym kroku M mamy warto±ci parametru Ψ n i próbujemy znale¹ Ψ n+1, które speªnia Q(Ψ n+1 ) (Ψ n ). Jak wida, Q(Ψ n+1 ) Q(Ψ n ) jest ci gle prawdziwe je±li Ψ n+1 = Ψ n. Mamy Q(Ψ) = Q(Ψ) λr. Znajd¹my najpierw Ψ (1) n+1, które maksymalizuje Q(Ψ) zamiast caªego Q(Ψ). Mo»na to zrobi po prostu przez zastosowanie równania (4.6) i (4.5). Oczywi±cie, Q(Ψ (1) n+1) Q(Ψ n ) niekoniecznie musi by prawdziwe. Nast pnie próbujemy zacz od Ψ (1) n+1 i zmniejszamy R, co mo»e by zrobione metod Newtona- Raphsona 4 [18]. Zauwa»my,»e R zawiera tylko parametry P (z k d i ), wi c musimy tylko zaktualizowa cz ± P (z k d i ) n+1 w Ψ n+1. Maj c funkcj f(x) i pocz tkow warto± x t, aktualizuj cy wzór Newtona-Raphsona zmniejsza (b d¹ zwi ksza) f(x) nast puj co: x t+1 = x t γ f (x) f (x) (4.8) 4 Metoda Newtona (zwana równie» metod Newtona-Raphsona lub metod stycznych) iteracyjny algorytm wyznaczania przybli»onej warto±ci pierwiastka funkcji. 32

gdzie 0 γ 1 jest parametrem kroku. Poniewa» mamy R k = 1 2 N (P (z k d i ) P (z k d j )) 2 W ij = fk T Lf k 0, i,j=1 metoda Newtona-Raphsona zmniejszy R k w ka»dym kroku aktualizuj cym. Z Ψ (1) n+1 i wprowadzaj c R k do wzoru Newtona-Raphsona (4.8), mo»emy otrzyma wzór bliski rozwi zaniu Ψ (2) n+1, a potem Ψ (3) n+1,..., Ψ (m) n+1, gdzie P (z k d i ) (t+1) n+1 = (1 γ)p (z k d i ) (t) n+1 + γ N j=1 W i,jp (z k d i ) (t) N j=1 W ij n+1. (4.9) Oczywi±cie, K k=1 P (z k d i ) (t+1) n+1 = 1 i P (z k d i ) (t+1) n+1 0 jest ci gle prawdziwe w równaniu (4.9) tak dªugo jak K k+1 P (z k d i ) (t) n+1 = 1 i P (z k d i ) (t) n+1 0. Zauwa»my,»e cz ± P (w j z k ) n+1 w Ψ n+1 pozostanie taka sama. Ka»da iteracja równiania (4.9) sprawia,»e rozkªad tematów jest gªadszy na grae najbli»szych s siadów, w istocie, gªadszy na rozmaito±ci dokumentów. Parametr γ mo»e by zinterpretowany jako wspóªczynnik kontroluj cy gªadko± rozkªadu tematu w±ród s siadów. Kiedy jest równy 1, rozkªad nowego tematu dokumentu jest ±redni wcze±niejszych rozkªadów jego s siadów. Parametr ten oddziaªuje na szybko± zbie»no±ci, ale nie na jej wynik. Kontynuujemy iteracj (4.9) dopóki Q(Ψ n+1 ) Q(Ψ n+1 ). Potem sprawdzamy, czy Q(Ψ n+1 ) Q(Ψ n ). Je±li nie, odrzucamy warto± Ψ n+1 i zwracamy Ψ n jako rezultat kroku M i kontynuujemy kolejny krok E. Podsumowujemy podej±cie do dopasowywania modelu LapPLSI u»ywaj c uogólnionego algorytmu EM w algorytmie: Algorytm Uogólniony EM dla LapPLSI Wej±cie: N dokumentów ze sªowami M Liczba tematów K, liczba najbli»szych s siadów p, parametr reguluj cy λ, parametr Newtona γ, warunek zako«czenia θ Wyj±cie: P (z k d i ), P (w j z k ), i = 1,..., N; j = 1,..., M; k = 1,..., K 1. Oblicz macierz grafu W jak w równaniu (4.2); 2. Zainicjalizuj rozkªady prawdopodobie«stw (parametry) Ψ 0 ; Ψ 0 = {P (z k d i ) 0, P (w j z k ) 0 } 3. n 0; 4. while(true) 33

5. krok E: Oblicz prawdopodobie«stwo a posteriori jak w (4.5); krok M: 6. Oblicz P (w j z k ) n+1 jak w (4.6); 7. Oblicz P (z k d i ) n+1 jak w (4.7); 8. P (z k d i ) (1) n+1 P (z k d i ) n+1 ; 9. Oblicz P (z k d i ) (2) n+1 jak w (4.9); 10. while(q(ψ (2) n+1) Q(Ψ (1) n+1)) 11. P (z k d i ) (1) n+1 P (z k d i ) (2) n+1 12. Oblicz P (z k d i ) (2) n+1 jak w (4.9); 13. if(q(ψ (1) n+1) Q(Ψ n )) 14. P (z k d i ) n+1 P (z k d i ) (1) n+1 15. else 16. Ψ n+1 Ψ n ; 17. if(q(ψ n+1 ) Q(Ψ n ) θ) 18. break; 19. n n + 1; 20. return Ψ n+1 34

Rozdziaª 5 Implementacja opisanych koncepcji Program doª czony do tej pracy ma na celu praktyczne zaprezentowanie opisanych wy»ej koncepcji wykorzystania ukrytej semantyki dokumentów w procesach grupowania i wyszukiwania. Program zostaª napisany w j zku C# w oparciu o Microsoft.NET Framework 4.0 1. J zyk C# jest obecnie jednym z najpopularniejszych j zyków programowania obiektowego, a co za tym idzie, algorytmy zawarte w moim programie stan si bezpo±rednio zrozumiane nawet przez laika, nie maj cego wcze±niej nic do czynienia z zagadnieniem grupowania dokumentów. Wymagania Aby uruchomi program u»ytkownik musi posiada system operacyjny Microsoft Windows z.net Framework 4.0 lub system operacyjny Linux z frameworkiem Mono 2 Biblioteka Math.net Numerics W programie zostaªa u»yta biblioteka Math.NET Numerics 3, która dostarcza metody i algorytmy dla oblicze«numerycznych w nauce, in»ynierii, a tak»e codziennych zastosowaniach. Biblioteka pokrywa mi dzy innymi takie dziedziny jak algebra liniowa, prawdopodobie«stwo, liczby losowe, interpolacje, caªkowanie, teoria liczb, czy kombinatoryka. W moim programie wykorzystuj moduª odpowiedzialny za algebr liniow, gªównie do oblicze«na macierzach.biblioteka udost pniona jest za darmo na licencji MIT/X11 4. 1 Platforma programistyczna opracowana przez Microsoft, obejmuj ca ±rodowisko uruchomieniowe (Common Language Runtime CLR) oraz biblioteki klas dostarczaj ce standardowej funkcjonalno±ci dla aplikacji. 2 Mono jest projektem FLOSS prowadzonym przez rm Xamarin (dawniej przez rm Novell, a zapocz tkowanym przez rm Ximian), który ma na celu stworzenie zgodnego ze standardami Ecma zestawu narz dzi umo»liwiaj cego uruchamianie programów stworzonych dla platformy.net Framework, w skªad których wchodzi mi dzy innymi kompilator j zyka C# oraz ±rodowisko CLR. 3 http://numerics.mathdotnet.com 4 http://mathnetnumerics.codeplex.com/license 35

Rozszerzenie biblioteki Math.NET Numerics Algebra liniowa jest jedn z tych dziedzin, gdzie wydajno± jest istotna, ale tak»e tak, w której optymalizacja mo»e spowodowa ogromn ró»nic. Domy±lnie Math.NET operuje na kodzie zarz dzanym, który jest wspierany przez wi kszo± platform, ale w zamian jest raczej wolny. Nie ma to wi kszego znaczenia tak dªugo jak nie pracujemy z bardzo du-»ymi, g stymi macierzami. Math.NET umo»liwia zmian dostawcy na natywnego, dzi ki czemu zyskujemy znaczne przyspieszenie. W tym przypadku wykorzystuj Intel MKL 5. Na blogu Christopha Ruegga (autora biblioteki Math.NET) http://christoph.ruegg. name mo»na przeczyta,»e zmiana dostawcy na natywnego przyspiesza obliczenia dziesi ciokrotnie, np. obliczenie iloczynu dwóch g stych macierzy 1000x1000 na 4-rdzeniowym procesorze x64 zajmuje: 0.9s - dostawca kodu zarz dzanego 0.085s - Intel MKL 5.1 Modelowanie dokumentów W zwi zku z tym,»e korpusy do bada«dostarczane s w ró»nych formatach (np. pliki tekstowe, jeden plik tekstowy podzielony na obszary odpowiadaj ce dokumentom, pliki w j zyku xml) w programie zaimplementowaªem klas FileLoader, której zadaniem jest ich wczytywanie. Korpus zostaje wczytany jako lista obiektów typu RawDocument. Taki obiekt zawiera informacje o tytule dokumentu, jego tre±ci i czasami nazwie grupy, do której nale»y. Ka»dy obiekt RawDocument mo»e zosta poddany modelowaniu. W programie klasa nazwana VectorSpaceModel jest odpowiedzialna za przetworzenie tekstu znajduj cego si w dokumencie i zapisanie go jako wektor do listy (pó¹niej macierzy term-dokument). Przetwarzanie opiera si o wykorzystanie metod opisanych w rozdziale drugim tej pracy i wygl da nast puj co: Dla ka»dego dokumentu wykonaj: 1. Zapisz ka»dy z wyrazów znajduj cych si w dokumencie do tablicy z jednoczesnym zast pieniem wielkich liter maªymi. 2. Usu«najcz ±ciej wyst puj ce sªowa (ang. stopwords), np. a, able, about, across, after,..., would, yet, you, your 6 3. Sprowad¹ sªowa do ich formy podstawowej (ang. stemming), np. przez usuni cie ko«cówek ed, ing, ly (u»ywaj c algorytmu Portera 7 ). 5 Intel Math Kernel Library - biblioteka numeryczna zawieraj ca funkcje algebry liniowej, przetwarzania liczb zmiennoprzecinkowych, szybkiej transformacji Fouriera (FFT) i funkcji matematyki wektorowej. 6 ftp://ftp.cs.cornell.edu/pub/smart/english.stop 7 http://tartarus.org/martin/porterstemmer/csharp.txt 36

4. Przepisz sªowa z tablicy do kolekcji unikalnych sªów wszystkich dokumentów jednocze±nie zapami tuj c przynale»no± tablicy do bie» cego dokumentu. Kolejnym krokiem przetwarzania dokumentu jest utworzenie macierzy term-dokument, której warto±ciami b d ilo±ci wyst pie«i-tego sªowa w j-ym dokumencie. Dla ka»dej tablicy sªów powi zanej z dokumentem wykonaj: 1. Policz jak cz sto sªowo z kolekcji unikalnych sªów wszystkich dokumentów wyst puje w tablicy powi zanej z bie» cym dokumentem i zapisz wynik w komórce macierzy odpowiadaj cej i-temu wyrazowi i j-emu dokumentowi. Wynikiem powy»szych operacji b dzie macierz term na dokument, która posªu»y nam do oblicze«w dalszej cz ±ci programu. 5.2 Ukryte indeksowanie semantyczne Przedstawiony poni»ej algorytm jest zgodny z opisem ukrytego indeksowania semantycznego w rozdziale 3. W algorytmie zastosowaªem metody wchodz ce w skªad biblioteki Math.NET Numerics, dzi ki czemu implementacja LSI staje si bardzo prosta. Wykonujemy SVD na macierzy term-dokument (metoda SVD), a nast pnie zmniejszamy wymiary otrzymanych macierzy T, S i D T (w bibliotece nazwane kolejno U, W, VT ). var svdresult = termdocmatrix.svd(true) var reducedmatrices = ReduceDimensions(svdResult.U(), svdresult.w(), svdresult.vt()) var T = reducedmatrices.item1 var S = reducedmatrices.item2 var D = reducedmatrices.item3, gdzie w metodzie ReduceDimensions wymiary macierzy s redukowane nast puj co: var Item1 = umatrix.submatrix(0, umatrix.rowcount, 0, k) var Item2 = smatrix.submatrix(0, k, 0, k) var Item3 = vmatrix.submatrix(0, k, 0, vmatrix.columncount) Tak otrzymane macierze mog posªu»y do pogrupowania dokumentów lub znalezienia dokumentów odpowiadaj cych zadanym pytaniom. W zale»no±ci od wykonanego mno»enia otrzymamy po» dany efekt: Porównanie dwóch termów T S 2 T Porównanie dwóch dokumentów DS 2 D Porównanie termu i dokumentu T SD 37

np. var resultmatrix = matt * mats * matd, a nast pnie obliczamy odlegªo± kosinusow pomi dzy wektorami kolumnowymi otrzymanej macierzy. 5.3 Probabilistyczne ukryte indeksowanie semantyczne Niech danymi wej±ciowymi b d : x - macierz dokument-term, k - ilo± ukrytych tematów, maxiterations - maksymalna liczba iteracji algorytmu EM, minlikelihoodchange - minimalna ró»nica pomi dzy warto±ciami log-wiarygodno±ci w kolejnych iteracjach. Algorytm probabilistycznego ukrytego indeksowania semantycznego zaczynamy od zainicjalizowania zmiennych pd (P (d)), pzd (P (z d)) i pwz (P (w z)) w nast puj cy sposób (maj c dan macierz dokument-term x): pd to iloraz wektora, którego elementami s sumy kolumn macierzy x przez sum wszystkich elementów macierzy x pzd to iloraz macierzy k d wypeªnionej warto±ciami losowymi wedªug rozkªadu jednostajnego z przedziaªu 0 1 przez macierz wektorów wierszowych, których elementami s sumy kolumn pierwszej macierzy. pwz to iloczyn macierzy w k wypeªnionej warto±ciami losowymi wedªug rozkªadu jednostajnego z przedziaªu 0 1 i macierzy diagonalnej k k, której elementami s odwrotno±ci sum kolumn pierwszej macierzy. Obliczamy pwd (P (w d)) jako pwz.multiply(pzd), a nast pnie wykonujemy p tl : for it = 1 to maxiterations do Zaktualizuj parametry pwz i pzd wykonuj c algorytm EM; Zaktualizuj pwd na podstawie nowych pwz i pzd; Oblicz log-wiarygodno± i zapisz do li[it] ; if it > 1 then end end if li[it] li[it 1] < minlikelihoodchange then break; end Wynikiem powy»szych dziaªa«b d dwie macierze: P (w z) i P (z d), które posªu» nam w dalszej cz ±ci do uzyskania konkretnych informacji na temat tekstów. 38

5.4 Laplasjanowe probabilistyczne ukryte indeksowanie semantyczne Jako dane wej±ciowe posªu» nam: x - macierz dokument-term, k - ilo± ukrytych tematów, p - rozmiar s siedztwa, λ = 1000 - parametr reguluj cy, γ = 0, 1 - parametr kroku, differror = 1e-7 - minimalna ró»nica bª du, miniter = 30 - minimalna ilo± iteracji, nstep = 200 - ilo± powtórze«aktualizacji pzd, nrepeat = 10 - ilo± prób. Na samym pocz tku utwórzmy macierz podobie«stwa w zdeniowan w (4.2) oraz macierz diagonaln d, której elementami b d sumy elementów kolejnych kolumn macierzy w var w = SimilarityMetrics.CreateAffinityGraph(x) var dcol = w.sumelementsineachrow() var d = DiagonalMatrix.OfDiagonal(w.RowCount, w.columncount, dcol) var l = d - w Inicjujemy warto±ci prawdopodobie«stw pzd, pwz, pd i pwd tak samo jak w algorytmie PLSI. Nast pnie wykonujemy jedn p tl algorytmu EM, aktualizuj c tym samym parametry pwz i pzd i obliczamy nowe pwd. Utwórzmy listy: logl, w której b dziemy przechowywa warto±ci funkcji log-wiarygodno±, objlap, w której b dziemy przechowywa warto±ci b d ce dwukrotn sum wszystkich elementów macierzy utworzonej jako iloczyn Hadamarda macierzy pzd l i pzd ((pzd * l).pointwisemultiply(pzd)).sumallelements() * 2, obj, w której b dziemy przechowywa rezultat ró»nic log-wiarygodno±ci i warto±ci objlap pomno»onej przez warto± λ. 39

Algorithm 1: Aktualizacja pzd for i=1 to nstep do pzd = (1 - gamma) * pzd + end (gamma * pzd * w).pointwisedivide(dcol.replicate(k)) Aktualizujemy warto± pzd nstep-razy 1, a nast pnie aktualizujemy pwd. Obliczamy nowe warto±ci logl, objlap i obj, ale dopisujemy je do list tylko pod warunkiem,»e nowa warto± obj jest wi ksza od poprzedniej. Rozpoczynamy p tl optymalizuj c. Wynikiem powy»szych dziaªa«b d dwie macierze: P (w z) i P (z d), które posªu» nam w dalszej cz ±ci do uzyskania konkretnych informacji na temat tekstów. 40

Algorithm 2: P tla LapPLSI while tryno < nrepeat do tryno tryno + 1; maxerr 1; while maxerr > dierror do Zachowaj warto±ci pwz i pzd Zaktualizuj paramtery pwz i pzd wykonuj c algorytm EM Oblicz pwd Oblicz warto± log-wiarygodno±ci deltalogl logln ew logl.last() objlapn ew GetObjLap(pzd, l) deltaobjlap objlapn ew objlap.last() deltaobj deltalogl deltaobjlap lambda loopno 0; loopno2 0; Wykonaj p tl 3 iterv alid true; stopiter false; if loopno > maxloop loopno2 > maxloop then Przywró warto±ci pwz i pzd zachowane na pocz tku p tli Oblicz pwd if nstep > 1 then nstep Math.Ceiling(nStep / 2); iterv alid f alse; else if gamma > 0,01 then gamma gamma/2; iterv alid false; else stopiter true end end end else Dodaj do list warto± logl, objlap i obj if stopiter then maxerr 0 else if itervalid then niter niter + 1; if niter > miniter then if selectinit then maxerr 0 else meanf it meanf itratio meanf it + (1 meanf itratio) obj.last(); maxerr (meanf it obj.last())/meanf it; if niter maxiter then maxerr 0 end end end 41

Algorithm 3: P tla LapPLSI while deltaobj < 0 do loopno 0; while deltaobj < 0 do Wykonaj 1 objlapn ew GetObjLap(pzd, l); deltaobjlap objlapn ew objlap.last(); deltaobj deltalogl deltaobjlap lambda; loopno loopno + 1; if loopno > maxloop then break end if loopno > maxloop then break loopno2 loopno2 + 1; if loopno2 > maxloop then break pwd PLSACommon.Pwd(pwz, pzd); logln ew PLSACommon.LogLikelihood(x, pwd, pd); deltalogl logln ew logl.last(); deltaobj deltalogl deltaobjlap lambda; end 42

Rozdziaª 6 Badanie wydajno±ci zaimplementowanych algorytmów 6.1 Reprezentacja tematów W celu zwizualizowania ukrytych tematów znalezionych przez zaprezentowane algorytmy przeprowadziªem eksperyment na zbiorze TREC AP 1. Skªada si on z 2 246 dokumentów zawieraj cych 10 053 unikalnych termów. TREC AP jest kolekcj bazuj c na podzbiorze tekstów agencji prasowej Associated Press zawartych w kolekcji TREC (ang. Text REtrival Converence - seria warsztatów skupiaj ca si na wyszukiwaniu informacji w ró»nych obszarach badawczych). Tabele 6.1 6.2 6.3 pokazuj reprezentacj ukrytych tematów wygenerowanych przez podej±cia LSA, PLSA i LapPLSA. Dla wszystkich trzech algorytmów musimy zdeniowa ich liczb (rozumian tak»e jako liczba wymiarów), która w tym eksperymencie wyniosªa k = 100. Kolejne kolumny tabel odpowiadaj kolumnom macierzy T S 2 T w LSI oraz P (w z) w PLSI i LapPLSI. W celu porównania algorytmów wybraªem 4 losowe tematy, które zostaªy opisane termami ludzie (people), szkoªa (school), podatek (tax) i wi zienie (prison). Znajduj si one w nagªówkach tabel. Pod ka»dym z takich termów, kolejno zostaªo wypisanych 10 termów najlepiej opisuj cych dany temat. To w jakim stopniu term reprezentuje temat okre±lone jest przez warto± znajduj c si w danej kolumnie macierzy T S 2 T lub P (w z). Przyjmujemy,»e term, który ma najwi ksz warto± okre±la temat, natomiast kolejne termy go opisuj. Obja±nienia do sªów w tabelach W zwi zku z tym,»e podane przykªady s w j zyku angielskim, niektóre ze sªów wymagaj obja±nienia, aby staªy si w peªni zrozumiane dla polskiego czytelnika. IRS - Internal Revenue Service, urz d podatkowy w USA. Reagan - Ronald Reagan, prezydent USA 1 http://www.cs.princeton.edu/~blei/lda-c/ 43

(19811989). Jackson - Jesse Jackson, polityk ameryka«ski. Dukakis - Michael Dukakis, polityk ameryka«ski. Fitzwater - Marlin Fitzwater, sekretarz prasowy Biaªego Domu. Kim - Kim Dzong II, przywódca Korei Póªnocnej. AP - Associated Press, ameryka«ska agencja prasowa. people school tax prison president drug oil school bank students house oce Reagan american estate law city city sales saudi Jackson sales north Reagan fair oil two troops meeting board taxes company company bill Dukakis board Dukakis troops Reagan oil group mecham years budget Tablica 6.1: Reprezentacja tematów w algorytmie LSA. people school tax prison killed book income two police students taxes years injured board percent minister today years year state india rst IRS day government books estate rst two new returns time miles two federal turtles reported american property art state like million note Tablica 6.2: Reprezentacja tematów w algorytmie PLSA. 44

people school tax prison state education taxes years two schools federal death today black income convicted four university property trial ocials high service murder ve public estate sentence condition district returns sentenced saturday board IRS crimes reported teachers payments penalty thursday class individuals innocent Tablica 6.3: Reprezentacja tematów w algorytmie LapPLSA. Wszystkie trzy podej±cia modelowania tematów pokazuj caªkiem dobr ich reprezentacj. Pomimo,»e algorytmy wybraªy nieco inne termy, wszystkie z nich mog opisywa zadany temat w pewnej mierze. Ciekaw cech algorytmów opartych na indeksowaniu semantyki jest znajdowanie tych samych tematów opisywanych jednak przez ró»ne termy. Dzi ki temu ªatwo mo»emy dostrzec kontekst w jakim dane sªowo zostaªo u»yte. W tabelach 6.4 i 6.5 prezentuj po dwa przykªadowe tematy opisane przez ten sam term policja (ang. police) i poªudnie (ang. south) wygenerowanych przez PLSI oraz izba (ang. house) i wiadomo±ci (ang. news) przez LapPLSI. police opisuje strzelanin w mie±cie noc (wskazuj na to sªowa shooting, city, night) oraz jakiego± rodzaju demonstracj z udziaªem studentów (students, demonstrators). south opisuje konikt zbrojny w Afryce (wskazuj na to sªowa Africa, guerrillas) oraz sytuacj w Korei Pn i Pd (Korea, 'north, Kim). house mo»na domy±li si,»e temat odnosi si do Izby Reprezentantów Stanów Zjednoczonych (ang. United States House of Representatives ) na co wskazuj sªowa representative, congressional, lawmakres, a tak»e do Biaªego Domu (ang. White House) przez sªowa white, Reagan, Fitzwater. news opisuje prawdopodobnie relacj jakiego± wydarzenia z Litwy (agency, council, Lithuania), a tak»e dziennik wydawany przez studentów Uniwersytetu w Virginii (university, newspaper, daily). 45

police police south south two students Africa north man building African Korea shot demonstrators government Korean car government guerrillas two found people independence visit shooting protest troops communist arrested protesters Namibia remains men protests Angola ocials city security war war night reported united Kim Tablica 6.4: Reprezentacja tematów w ró»nych kontekstach w algorytmie PLSA. house house news news senate Reagan agency editor representative white reported newspaper senator administration republic university committee secretary council press congressional Fitzwater independence named housing oce supreme joined lawmakers sta deputy newspapers subcommittee tell television AP voted policy Lithuania virginia contributions eorts baltic daily Tablica 6.5: Reprezentacja tematów w ró»nych kontekstach w algorytmie LapPLSA. 6.2 Indeksowanie semantyczne 6.2.1 Model przestrzeni wektorowej i LSI Jedna z najpopularniejszych metod wyszukiwania informacji oparta jest o model wektorowy Vector-Space Model (VSM). Model VSM charakteryzuj trzy skªadniki: (i) funkcja przeksztaªcaj ca (zwana równie» lokaln wag termu), (ii) schemat globalnego wa»enia termu, (iii) miara podobie«stwa. Skªadniki te mog by zdeniowane nast puj co: (i) reprezentacja oparta na cz stotliwo±ci termów (tf) n(d, w) w poª czeniu z (ii) odwrotn cz sto±ci w dokumentach (ang. inverse document frequency), (iii) odlegªo± kosinusowa. W taki sam sposób mo»emy reprezentowa równie» zapytania q, a w zwi zku z tym funkcja 46

podobie«stwa pomi dzy dokumentem, a zapytaniem mo»e wygl da nast puj co: w ˆn(d, w)ˆn(q, w) s(d, q) = w ˆn(d, w)2, w ˆn(d, w)2 gdzie ˆn(d, w) = idf(w) n(d, w) s wa»onymi frekwencjami sªów. W ukrytym indeksowaniu semantycznym oryginalna reprezentacja wektora przestrzeni dokumentu jest zast piona przez reprezentacje w nisko-wymiarowej ukrytej przestrzeni, w oparciu o któr obliczane jest podobie«stwo. Zapytania lub dokumenty, które nie byªy cz ±ci kolekcji mog zosta wcielone przez proste mno»enie macierzy [6]. D q = X qt S 1, gdzie X q to wektor reprezentuj cy wcielane zapytanie (dokument), a D q to gotowy wektor wyj±ciowy, który mo»emy doª czy jako kolumn do macierzy term - dokument, która jest rezultatem algorytmu. Jak zasugerowano w [8], dobrze jest poª czy miar podobie«stwa uzyskan z oryginalnej reprezentacji (waga λ), z t uzyskan z reprezentacji ukrytej semantyki (waga 1 λ). 6.2.2 Warianty probabilistycznego ukrytego indeksowania semantycznego W pracy [10] przedstawiono dwa sposoby indeksowania. Pierwszym z nich jest kontekstowo zale»ny model unigramowy u»yty w celu zªagodzenia empirycznych rozkªadów sªów w dokumentach (PLSI-U). Drugim, model ukrytej przestrzeni, który dostarcza niskowymiarow reprezentacj dokumentu / zapytania (PLSI-Q). PLSI-U Dla ka»dego dokumentu d w kolekcji, PLSA dostarcza rozkªad wielomianowy P (w d) na sªownictwo (3.2). Rozkªad ten b dzie w ogólno±ci gªadk wersj rozkªadu empirycznego ˆP (w d) = n(d, w)/n(d). W pracy [10] autor proponuje u»y P (w d) (rozumianego jako wektory dokumentów) w celu obliczenia dopasowania pomi dzy dokumentem i zapytaniem. Zauwa»my,»e P (w d) jest reprezentacj oryginalnej przestrzeni otrzymanej przez wsteczn projekcj z probabilistycznej ukrytej przestrzeni. Wektor P ( d) mo»e by (opcjonalnie) zwa»ony odwrotn cz sto±ci dokumentu i porównany z zapytaniem (zwa»onym w taki sam sposób) przez odlegªo± kosinusow. Rozwa»ono dwie mo»liwo- ±ci poª czenia PLSA-U z standardowym VSM: (i) przez liniowe poª czenie podobie«stwa kosinusowego (tak jak opisano wy»ej dla LSI) i (ii) przez ª czenie wielomianów jak w interpolacyjnych metodach dla modelowania j zykowego, np. przez zastosowanie reprezentacji ˆP (w d) = λ ˆP (w d) + (1 λ)p (w d). 47

PLSI-Q Schemat ten polega na wykorzystaniu nisko-wymiarowej reprezentacji P (z d) i P (z q) w celu ocenienia podobie«stwa. W przypadku zapyta«, musz one zosta wcielone, co mo»na zrobi przez aktualizacj parametrów P (w z) i obliczenie wag P (z q) wykorzystuj c algorytm EM. W pracy [10] autor podkre±liª,»e nie jest to ko«ca jasne w jaki sposób mo»na bra pod uwag globalne wagi termów i jednocze±nie zaproponowaª podej±cie polegaj ce na ponownym zwa»eniu ró»nych komponentów modelu przez w P (w z) idf(w). 6.3 Miary jako±ci grupowania Rozpatrzmy zadanie klasykacji, w którym decyzja przyjmuje warto±ci ze zbioru {d 1,, d n }. Niech f b dzie klasykatorem wygenerowanym dla tego zadania. Wybierzmy d i, jedn z klas decyzyjnych. Dla ka»dego obiektu u mo»emy zada pytanie, czy decyzja d i jest prawdziwa dla u, czyli czy d(u) = d i. Klasykator mo»emy potraktowa jako narz dzie do testowania tego, czy d(u) = d i. Je»eli f(a 1 (u),, a k (u)) = d i, powiemy,»e wynik testu jest dodatni (ang. positive), w przeciwnym przypadku, powiemy,»e wynik testu jest ujemny (ang. negative). W statystyce warunek d(u) d i nazywamy hipotez zerow (ang. null hypotesis), a warunek d(u) = d i nazywamy hipotez alternatywn. Mamy 4 mo»liwo±ci: TP Prawidziwe dodatni (ang. true positive), gdy d(u) = d i oraz f(a 1 (u),, a k (u)) = d i. TN Prawidziwie ujemny (ang. true negative), gdy d(u) d i oraz f(a 1 (u),, a k (u)) d i. FP Faªszywie dodatni (ang. false positive), gdy d(u) d i oraz f(a 1 (u),, a k (u)) = d i. W statystyce nazywane bª dem pierwszego rodzaju polegaj cym na odrzuceniu hipotezy zerowej, która w rzeczywisto±ci jest prawdziwa i oznaczane symbolem α. FN Faªszywie ujemny (ang. false negative), gdy d(u) = d i oraz f(a 1 (u),, a k (u)) d i. W statystyce nazywane bª dem drugiego rodzaju, polegaj cym na nieodrzuceniu hipotezy zerowej, która jest w rzeczywisto±ci faªszywa i oznaczane symbolem β. Miary jako±ci oparte na powy»szych: dokªadno± (ang. accuracy): precyzja (ang. precision) accuracy = T P + T N T P + F P + F N + T N precision = 48 T P T P + F P

czuªo± (ang. recall) swoisto± (ang. specicity) recall = T P T P + F N specif icity = T N T N + F P Jeszcze jedn wa»n miar jest znormalizowana warto± wzajemnej informacji (ang. Normalized mutual information). Niech C oznacza wzorcowy zbiór grup, a C zbór otrzymany w wniku dziaªania algorytmu. Warto± ich wzajemnej informacji MI(C, C ) jest zdeniowana nast puj co: MI(C, C ) = p(c p(c i, c i, j) log c j) 2 p(c c i C,c i ) p(c j C j ), gdzie p(c i ) i p(c j) s prawdopodobie«stwami,»e dokument wybrany z korpusu nale»y do grupy c i i c j odpowiednio, p(c i, c j) jest prawdopodobie«stwem,»e dokument nale»y do grupy c i i c j jednocze±nie. W badaniach u»yj znormalizowanej warto±ci wzajemnej informacji NMI: NMI(C, C MI(C, C ) ) = (H(C) + H(C ))/2, gdzie H(C) i H(C ) to entropie C i C H(C) = k p(c k ) log 2 p(c k ) H(C ) = k p(c k) log 2 p(c k) Miara ta pokazuje jak bardzo grupy s do siebie podobne. NMI = 1 je±li dwie grupy s identyczne, a 0 kiedy s od siebie zupeªnie niezale»ne. 6.4 Badanie grupowania dokumentów 6.4.1 Wariant *-U Do badania zostaªy u»yte dwa korpusy. Reuters-21578 Apte' split i 20Newsgroups 2. Reuters-21578 zawiera 12 902 dokumenty podzielone na 90 klas, a 20Newsgroups 18846 dokumentów podzielone na 20 klas. Ze wzgl du na do± spore rozmiary korpusów, na potrzeby bada«zmniejszyªem je w nast puj cy sposób. Z korpusu Reuters-21578 wybraªem 7 najliczniejszych klas, a z 20Newsgroups 7 rozª cznych klas (jako,»e w korpusie 20Newsgroups niektóre klasy s ze sob bardzo powi zane, np. IBM computer system hardware i Macintosh computer system hardware. Unikale termy zostaªy uzyskane poprzez usuni cie stop-words, sprowadzenie formy ka»dego wyrazu do jego rdzenia z wykorzystaniem 2 http://disi.unitn.it/moschitti/corpora.htm 49

algorytmu Portera oraz poprzez usuni cie ze zbioru sªów wyst puj cych w mniej ni» 10 dokumentach i w nie wi cej ni» 1334 i 1286 razy dla 20Newsgroups i Reuters odpowiednio (poªowa rozmiaru korpusu). W wyniku tego otrzymaªem: Reuters-21578 20Newsgroups liczba dokumentów 2571 2668 liczba unikalnych termów 1963 4565 liczba klas 7 7 maksymalny rozmiar klasy 1087 398 minimalny rozmiar klasy 117 319 ±redni rozmiar klasy 367 381 Na wykresach 6.1 i 6.3 zaprezentowane s wyniki bada«przeprowadzonych z u»yciem zaimplementowanych przeze mnie algorytmów na wy»ej opisanych zbiorach. Dokumenty zostaªy podzielone na grupy w taki sposób,»e dla danej grupy zostaª wybrany jej najlepszy reprezentant (tzn. taki dokument, do którego jest najwi cej podobnych dokumentów tej samej klasy), a do grupy zaklasykowano n dokumentów najbardziej podobnych do niego, gdzie n to liczebno± danej grupy. Dokument mógª nale»e do wi cej ni» jednej grupy jednocze±nie. Dla korpusu Reuters-21578 dla maªej liczby wymiarów (maªych k) doskonale wida przewag LapPLSI, jednak»e przy k 10 ta przewaga si zmniejsza i algorytmy daj podobne rezultaty. Na korpusie 20Newsgroup zdecydowanie lepiej wida rozbie»no± algorytmów. Dla minimalnego k precyzja grupowania jest bardzo podobna, a przy k = 15 PLSI i LapPLSI wyprzedzaj LSI o blisko 15%. Warte odnotowanie jest to,»e LapPLSI zawsze daje lepsze rezultaty dla mniejszej liczby wymiarów, a PLSI zachowuje si cz sto najlepiej przy k = 10. 50

Rysunek 6.1: Wykres precyzji w zale»no±ci od liczby wymiarów dla korpusu Reuters- 21578. 51

k LSI PLSI LPLSI 2 0,498249708 0,615324776 0,749513808 3 0,726954492 0,771295216 0,821081291 4 0,754181252 0,815635939 0,823803967 5 0,825748736 0,845974329 0,839751070 6 0,847530144 0,823415014 0,861921431 7 0,856476079 0,857253987 0,855698172 8 0,881369117 0,836250486 0,841695838 9 0,884480747 0,870089459 0,87203422 10 0,889148191 0,864255154 0,852197588 15 0,892259821 0,88875923 0,836250486 20 0,889926099 0,886814469 0,837028394 30 0,89342668 0,884091793 0,829638273 40 0,882924932 0,881369117 0,847141190 50 0,865810968 0,872812135 0,845196422 100 0,856476079 0,862699339 0,829249319 200 0,838584208 0,842862699 0,842473746 300 0,834305718 0,832360949 0,84402956 400 0,834305718 0,838973162 0,852975496 500 0,831194088 0,826526643 0,849863866 Tablica 6.6: Tabela z danymi do wykresu 6.1. Pogrubion czcionk zaznaczono najlepszy rezultat. 52

Rysunek 6.2: Wykres precyzji dla poszczególnych grup przy najlepszym k dla zbioru Reuters-21578. LSI dla k = 30, PLSI dla k = 15, LapPLSI dla k = 9 (zgodnie z wykresem 6.1). grupa LSI (k=30) PLSI (k=15) LapPLSI (k=9) 1 0,90403338 0,930458971 0,892906815 2 0,899470899 0,904761905 0,878306878 3 0,952161914 0,95400184 0,937442502 4 0,859060403 0,865771812 0,838926174 5 0,694656489 0,580152672 0,595419847 6 0,720670391 0,625698324 0,670391061 7 0,803418803 0,777777778 0,786324786 Tablica 6.7: Tabela z danymi do wykresu 6.2. 53

Rysunek 6.3: Wykres precyzji w zale»no±ci od liczby wymiarów dla korpusu 20Newsgroups. 54

k LSI PLSI LPLSI 2 0,384932534 0,396926537 0,452398801 3 0,518365817 0,511244378 0,532233883 4 0,547976012 0,649550225 0,632683658 5 0,590329835 0,710269865 0,724512744 6 0,630434783 0,798725637 0,693778111 7 0,635682159 0,787106447 0,737631184 8 0,639805097 0,876686657 0,778110945 9 0,652548726 0,87856072 0,800224888 10 0,661919040 0,877061469 0,844452774 15 0,721514243 0,847451274 0,85494752 20 0,74362818 0,822338831 0,838455772 30 0,735007496 0,796851574 0,793103448 40 0,736131934 0,783733133 0,785607196 50 0,731259370 0,764992504 0,771364318 100 0,720764618 0,682533733 0,752998501 200 0,690029985 0,688905547 0,739880060 300 0,673913043 0,651424288 0,735757121 400 0,660044978 0,648800600 0,713268366 500 0,651424288 0,660419790 0,713643178 Tablica 6.8: Tabela z danymi do wykresu 6.3. Pogrubion czcionk zaznaczono najlepszy rezultat. 55

Rysunek 6.4: Wykres precyzji dla poszczególnych grup przy najlepszym k dla zbioru 20Newsgrops. LSI dla k = 20, PLSI dla k = 9, LapPLSI dla k = 15 (zgodnie z wykresem 6.3). grupa LSI (k=20) PLSI (k=9) LapPLSI (k=15) 1 0,55799373 0,752351097 0,865203762 2 0,8 0,918987342 0,855696203 3 0,715384615 0,892307692 0,825641026 4 0,795454545 0,904040404 0,803030303 5 0,769035533 0,88071066 0,873096447 6 0,751256281 0,907035176 0,861809045 7 0,781914894 0,869680851 0,904255319 Tablica 6.9: Tabela z danymi do wykresu 6.4. 6.4.2 Wariant *-Q W tej cz ±ci bada«zdeniuj liczb tematów k = 7, równ liczbie po» danych grup. Do pogrupowania bezpo±rednio u»yj macierzy P (z d). Jako,»e liczba wymiarów k w LSI nie odzwierciedla bezpo±rednio liczby grup, algorytm ten nie b dzie brany pod uwag w tej cz ±ci bada«. Dokumenty zostan pogrupowanie przy u»yciu algorytmu k-±rednich. Ka»dy dokument mo»e nale»e tylko do jednej grupy. Sªupki w wykresach oznaczaj kolejne grupy, a ich wysoko± okre±la w jakim stopniu udaªo si do danej grupy przyporz dkowa prawidªowe dokumenty. W badaniu wykorzystam trzy miary opisane wcze±niej: precyzj, czuªo± oraz znormalizowan warto± wzajemnej informacji. W poprzednim ba- 56

daniu nie byªo potrzeby mierzenia czuªo±ci, poniewa», ze wzgl du na przyj t strategi grupowania, ilo± dokumentów faªszywie dodatnich byªa równa liczbie faªszywie ujemnych. Podobnie jest z NMI. Entropie C i C oraz p(c i ) i p(c j) byªy takie same ze wzgl du na równoliczno± grupy wzorcowej i wynikowej. PLSI i LapPLSI radz sobie z tym zadaniem bardzo dobrze, jednak trudno powiedzie, który z nich jest lepszy. LapPLSI jest bardziej precyzyjny na zbiorze Reuters (5/7 lepszych wyników), a PLSI na zbiorze 20 Newsgroups (4/7 lepszych wyników). Rysunek 6.5: Wykres precyzji dla konkretnego klastra korpusu Reuters-21578. Rysunek 6.6: Wykres precyzji dla konkretnego klastra korpusu Newsgroups. 57

Rysunek 6.7: Wykres czuªo±ci dla konkretnego klastra korpusu Reuters-21578. Rysunek 6.8: Wykres czuªo±ci dla konkretnego klastra korpusu Newsgroups. 58