politechnika warszawska -...

76
Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska Badanie porównawcze metod inteligentnej nawigacji i adaptacja algorytmów optymalizacyjnych do zadań nawigacji w zbiorach dokumentów tekstowych Wykonal: Maciej Czyżowicz (numer albumu: 175979) Pod kierunkiem: prof. nzw. PW dr hab. inż. M. A. Klopotka Warszawa, czerwiec 2003

Upload: vanliem

Post on 28-Feb-2019

233 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

Politechnika WarszawskaWydzial Matematyki i Nauk Informacyjnych

Praca magisterska

Badanie porównawcze metod inteligentnej nawigacji

i adaptacja algorytmów optymalizacyjnych

do zadań nawigacjiw zbiorach dokumentów tekstowych

Wykonał: Maciej Czyżowicz (numer albumu: 175979)

Pod kierunkiem: prof. nzw. PW dr hab. inż. M. A. Kłopotka

Warszawa, czerwiec 2003

Page 2: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

SPIS TREŚCI

1. Wstęp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.1 Cel badań . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.2 Analiza literatury . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.3 Metody poszukiwania informacji . . . . . . . . . . . . . . . . . . . . . . . . 81.4 Miary podobieństwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.5 Układ pracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2. Metodologia badań . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.1 Definicje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.1.1 Dokument podobny . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.1.2 Odpowiedź . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.1.3 Dokładność . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.1.4 Graf sieci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.1.5 Miernik dla QDPageRank . . . . . . . . . . . . . . . . . . . . . . . 12

2.2 Przeprowadzone badania . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Dane testowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3. Latent Semantic Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.1 Rozkład na wartości osobliwe (Singular Value Decomposition - SVD) . . . 153.2 Podstawy matematyczne . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.2.1 Rozkład na wartości osobliwe . . . . . . . . . . . . . . . . . . . . . 163.2.2 Interpretacja graficzna modelu . . . . . . . . . . . . . . . . . . . . . 173.2.3 Obliczanie wartości dla porównań w modelu SVD . . . . . . . . . . 17

3.3 Modyfikacje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.3.1 Ważenie słów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.4 Wyniki eksperymentalne . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.4.1 Odpowiedź . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.4.2 Dokładność . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.4.3 Inne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.5 Podsumowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4. Probabilistic Latent Semantic Analysis . . . . . . . . . . . . . . . . . . . . . . . 234.1 Model aspektowy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.2 Algorytm EM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.3 PLSA a LSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.4 Modyfikacja: wyżarzanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.5 Wyniki eksperymentalne . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

Page 3: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

Spis treści 3

4.5.1 Odpowiedź . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.5.2 Dokładność . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

5. WebSOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315.1 Samoorganizująca się sieć Kohonena . . . . . . . . . . . . . . . . . . . . . 315.1.1 Funkcja uczenia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.2 SOM na potrzeby dokumentów tekstowych . . . . . . . . . . . . . . . . . . 345.3 Modyfikacje: Batch Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345.4 Wyniki eksperymentalne . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355.4.1 Odpowiedź . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365.4.2 Dokładność . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

5.5 Podsumowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

6. Probabilistic Hypertext Induced Topic Selection . . . . . . . . . . . . . . . . . . 386.1 HITS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386.2 Grupy ukryte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396.2.1 Model mieszany a model członowy . . . . . . . . . . . . . . . . . . 406.2.2 Poszukiwanie najlepszej instancji modelu . . . . . . . . . . . . . . . 40

6.3 Wyniki eksperymentalne . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416.3.1 Odpowiedź . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416.3.2 Dokładność . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426.3.3 Inne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

7. PageRank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447.1 Algorytm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447.2 Opis matematyczny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457.3 Obliczanie PageRank i jego modyfikacje . . . . . . . . . . . . . . . . . . . 467.3.1 Podstawowy algorytm . . . . . . . . . . . . . . . . . . . . . . . . . 467.3.2 Ekstrapolacja Aitken’a . . . . . . . . . . . . . . . . . . . . . . . . . 477.3.3 Ekstrapolacja kwadratowa . . . . . . . . . . . . . . . . . . . . . . . 48

7.4 Modyfikacje idei algorytmu . . . . . . . . . . . . . . . . . . . . . . . . . . . 507.4.1 Tematyczny PageRank . . . . . . . . . . . . . . . . . . . . . . . . . 507.4.2 Zależny od zapytania PageRank . . . . . . . . . . . . . . . . . . . . 50

7.5 Wyniki eksperymentalne . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517.5.1 QDPageRank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

8. Porównanie metod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588.1 Zestawienie wyników . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598.2 Wnioski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

Dodatek 63

A. Stop lista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

B. Algorytm SVD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65B.1 Przykład . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Page 4: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

Spis treści 4

C. Implementacja algorytmów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68C.1 Narzędzia Unix’owe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68C.2 Baza danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68C.3 Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70C.4 C] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70C.5 Instalacja i uruchomienie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

Page 5: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

STRESZCZENIE

Niniejsza praca dotyczy: metodologii wspomagania użytkowników wyszukiwarek WWW wnawigowaniu po przestrzeni dokumentów. Znanym problemem konstrukcji wyszukiwarekWWW jest ogrom dokumentów zwracanych jako odpowiedź na typowe zapytanie. Użyt-kownik nie jest w stanie przejrzeć więcej niż 10-20 dokumentów, by stwierdzić, czy interesujągo one tematycznie. Zadaniem metod inteligentnej nawigacji jest wskazanie dalszych do-kumentów potencjalnie interesujących w kontekście wybranego/wybranych dokumentów.W nawiązaniu do zadanego zapytania. Zaimplementowane zostały wybrane znane i nowealgorytmy i dokonano porównania ich skuteczności na wybranym zbiorze dokumentów.Rozważane metody to:

• LSA [7]

• PHITS [5]

• PLSA [10]

• QDPageRank [25]

• WebSom [21, 12]

Wykonane badania wskazują, że znaczenie dokumentów w zbiorze w dużej mierze niezależy od treści. Znaczną poprawę jakości wyników uzyskuje się przez wykorzystanie innejwłaściwości dokumentów takiej jak odnośniki.

Page 6: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

1. WSTĘP

Wraz z eksplozją Internetu i sieci WWW w latach dziewięćdziesiątych dwudziestego wiekupowstała potrzeba wyszukiwania informacji. Pierwsze próby koncentrowały się na ręcznymtworzeniu katalogów stron (takie jak Yahoo! czy Lycos). To rozwiązanie miało bardzo dobrewyniki, ponieważ kategoryzacja i struktura była tworzona przez ludzi. Wzrost stron, a coza tym idzie spadek wydajności oceniania przez człowieka spowodował zapotrzebowaniena automatyzację procesu wyszukiwania dokumentów. Zostały stworzone programy, zwanerobotami, które przeszukiwały sieć w poszukiwaniu nowych stron i w oparciu o bazy danychtworzone były mechanizmy pozwalające użytkownikowi na wyszukiwanie informacji. Ciągływzrost ilości stron spowodował, że wyszukiwarki bardzo szybko zaczęły zwracać bardzodużą ilość odpowiedzi. Problem ten istnieje do dziś.Aktualnie ilość stron indeksowanych przez pojedyncze wyszukiwarki wynosi ponad trzy

miliardy1.Zadanie nawigacji w zbiorach tekstowych polega na wspomaganiu użytkownika, tak

by mógł on przeglądać te dokumenty, które w danej chwili najbardziej go interesującą.Zakłada się, że pewnym oszacowaniem tego, czego poszukuje odbiorca, jest dokument,który aktualnie przegląda. System nawigacji na podstawie tego dokumentu ma za zada-nie zaproponowanie użytkownikowi innych dokumentów, które mogą być interesujące dlaużytkownika. Hipotetyczny system nawigacji został przedstawiony na rys. 1.1. Po lewejstronie zostały przedstawione tytuły dokumentów potencjalnie interesujących, a po prawejdokument, który aktualnie przegląda użytkownik.

1.1 Cel badań

Celem pracy jest sprawdzenie możliwości metod wyszukiwania i grupowania dokumentów.Zapytania będące podstawą do wyszukiwania składają się z całej treści jednego dokumentu.Badania mają na celu ocenę jakości uzyskanych odpowiedzi za pomocą wybranych metod(LSA, PLSA, WebSOM, PHITS, PageRank).Mechanizmy oceny poszczególnych metod zawiera rozdz. 2.

1.2 Analiza literatury

W ciągu ostatniego dziesięciolecia powstało bardzo dużo prac w zakresie poszukiwań powią-zań pomiędzy dokumentami. Powstawały prace, w których była porównywana zawartośćdokumentów oraz prace, w których wykorzystywane były inne właściwości dokumentów.Stosowano zarówno podejścia deterministyczne, jak i podejścia probabilistyczne. Pierwsze

1 Google (http://www.google.com/help/features.html)

Page 7: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

1. Wstęp 7

Rys. 1.1: Poglądowy model systemu inteligentnej nawigacji

Page 8: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

1. Wstęp 8

prace próbowały klasyfikować dokumenty w sposób deterministyczny. Na podstawie za-wartości dokumentu szacowano podobieństwo względem innych dokumentów [7, 8]. Pracete zakładały, że dokument należy tylko do jednej klasy. Inne podejście opisywały pracezwiązane z wieloznacznością i możliwością przynależenia do klasy z pewnym prawdopodo-bieństwem. Model ten został nazwany modelem aspektowym[11, 10].Całkowicie w inną stronę prowadzone były badania w Finlandii. Tam postanowiono

pogrupować dokumenty na płaszczyźnie dwuwymiarowej. Wykorzystano w tym celu siecineuronowe [17, 19, 12, 21]. Założeniem tego modelu była prezentacja dużej ilości dokumen-tów na płaszczyźnie. W założeniu ma to na celu reprezentację głównych tematów w celachnawigacji i wyszukiwania informacji.Pod koniec lat dziewięćdziesiątych zaczęto wykorzystywać również inne cechy dokumen-

tów. Cechą najczęściej badaną była i aktualnie jest zestaw odnośników dokumentu. Dziękiodnośnikom można stworzyć zależności pomiędzy dokumentami reprezentowane przez graf.Za pomocą grafu można poszukiwać dokumentów będących autorytetami, czy prac przekro-jowych [16]. Do „odnośników” zastosowano również metody znane z wcześniejszych badańnad zbiorami dokumentów tekstowych takie jak model aspektowy [5, 6].Graf zależności pomiędzy dokumentami zastosowano również do oceny „ważności” stro-

ny. Przykładem wyróżniającym się w tej grupie jest model zwany PageRank, który aktu-alnie ma największe sukcesy w komercyjnych zastosowaniach [2, 24, 15].Ilość metod i podejść do problemu zaowocowała pewnymi pracami przeglądowymi ze-

stawiającymi cały proces wyszukiwania w Internecie, uwzględniając różne metody doborudokumentów [18, 23, 13].W ciągu ostatniego roku pojawiła się zaawansowana metoda, bazująca na tekście ja-

ko źródle porównania, o nazwie „Latent Dirichlet Allocation” [1]. Metoda ta jest bardzokosztowna, ale ogłoszone wyniki są zachęcające.

1.3 Metody poszukiwania informacji

Systemy wyszukujące informację najczęściej wykorzystują jedną z trzech metod wyszuki-wania informacji:

• Model boolowski

• Model wektorowy

• Model probabilistyczny

Model boolowski. W tym modelu dokument jest reprezentowany przez zbiór słówjakie w nim występują. Zapytanie jest skonstruowane ze słów oraz operatorów algebry Bo-ol’a. Jest to model binarny, oznacza to, że częstość występowania słowa nie ma znaczenia.Zaletą tego modelu jest dobrze zdefiniowana semantyka zapytania oraz prostota wykony-wanych obliczeń. Do wad należy zaliczyć: brak kontroli nad rozmiarem zbioru wynikowego,brak możliwości oszacowania podobieństwa zapytania do strony, kłopoty ze stworzeniempoprawnego zapytania.Model wektorowy. Każdy dokument jest reprezentowany jako n wymiarowy wektor,

gdzie n oznacza ilość różnych słów występujących w zbiorze dokumentów. Problem wyszuki-wania dokumentów odpowiadających zapytaniu sprowadza się do znalezienia dokumentów

Page 9: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

1. Wstęp 9

znajdujących się w otoczeniu wektora reprezentującego zapytanie. Model ten pozwala nawykorzystanie metod numerycznych.Model probabilistyczny. Model probabilistyczny zakłada, że dokument należy do

grupy dokumentów z pewnym prawdopodobieństwem. Wyniki zwracane są zgodnie z po-rządkiem malejącym względem prawdopodobieństwa przynależności dokumentów do gru-py. Głównym zadaniem w tym modelu jest oszacowanie prawdopodobieństwa dokumentuwzględem zapytania. Częstym punktem wyjścia dla takich metod jest losowe przypisanieprawdopodobieństw.

1.4 Miary podobieństwa

Większość modeli wyszukiwania informacji bazuje na idei podobieństwa pomiędzy doku-mentami. W modelach wykorzystujących reprezentację wektorową istnieje duża ilość róż-nych miar podobieństwa. Do tych miar można zaliczyć:

1. Odległość Euklidesową

2. Kosinus kąta

3. Korelację wektorów

4. Miarę podobieństwa w przestrzeni Mińkowskiego

5. Miarę Tanimoto

Metody 1-3 są znane i dobrze opisane. Poniżej przedstawiono krótki opis pozostałych.Miara podobieństwa Mińkowskiego. Miara ta jest rozszerzeniem odległości eukli-

desowej. Zakładając, że −→x = [x1 x2 . . . xn]:

ρ(−→x ,−→y ) =

(

n∑

i=1

|xi − yi|λ)

1

λ

, λ ∈ R (1.1)

Przyjumjąc za λ = 1 otrzymuje się tak zwaną normę taksówkową (nowojorską).Miara Tanimoto. W niektórych aplikacjach dobre wyniki daje miara zdefiniowana

przez Tanimoto[17]:

ST (−→x ,−→y ) =(−→x ,−→y )

‖−→x ‖2 + ‖−→y ‖2 − (−→x ,−→y )(1.2)

gdzie (−→x ,−→y ) jest iloczynem skalarnym.W niektórych zastosowaniach wykorzystuje się również miary związane z porównywa-

niem łańcuchów znaków. Do tych metod należą:

1. Odległość Hamminga,

2. Odległość redakcyjna (zwana również odległością Levenshteina),

3. Odległość bazująca na prawdopodobieństwie2,

4. Metody haszujące.2 ang. Maximum Posterior Probability Distance

Page 10: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

1. Wstęp 10

1.5 Układ pracy

Praca została zorganizowana w następujący sposób: w następnym rozdziale zostanie przed-stawiona metodologia badań, w kolejnych pięciu opisane są poszczególne metody, które byłybadane. W rozdziale 3. opisana jest metoda LSA, w rozdziale 4. metoda PLSA, w rozdziale5. metoda WebSOM, w rozdziale 6. metoda PHITS, w rozdziale 7. metoda PageRank. Nakońcu każdego z tych rozdziałów znajduje się opis doświadczeń, które zostały przeprowa-dzone dla tej metody oraz wyniki tych eksperymentów. Ostatni, 8., rozdział skupia się napodsumowaniu i porównaniu poszczególnych metod.W załącznikach znajdują się informacje, które nie znalazły się w głównym tekście tej

pracy. Są to informacje związane z implementacją algorytmów wykorzystanych w bada-niach, takie jak słowa, które znalazły się na stop liście (dodatek A), algorytm SVD (doda-tek B), czy opis parametrów wejścia dla programów napisanych do przeprowadzenia badań(dodatek C).

Page 11: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

2. METODOLOGIA BADAŃ

Nie można porównywać metod nie mając ustalonych miar jakości wyników. Skorzystanoz miar, które są standardem dla systemu wyszukiwania informacji. Wykorzystano miarydokładność i odpowiedź. Mechanizmem badanym jest możliwość poszczególnych metodpoprawnego zaprezentowania dokumentów, czyli takich dokumentów, które są interesującedla użytkownika.

2.1 Definicje

2.1.1 Dokument podobny

Wynikiem działania czterech z pięciu1 metod opisanych jest pewna klasteryzacja. Oryginal-ne dokumenty, tak jak i dokumenty po przetworzeniu przez algorytmy, są w pewien sposóbpogrupowane (rozdz. 2.3). Za dokumenty podobne uznaje się te dokumenty, które znajdująsię w tej samej grupie. Uznaje się również, że odpowiedzią systemu jest zbiór dokumentówznajdujących się w tej samej grupie co dokument przeglądany. W dalszym tekście mianemdokumentów podobnych będą oznaczane dokumenty znajdujące się razem w oryginalnejgrupie.

2.1.2 Odpowiedź

Odpowiedź(ang. recall) opisuje proporcję ilości dokumentów podobnych i zwróconych doilości dokumentów podobnych w zbiorze.Implementacja tego miernika polegała na sprawdzeniu ile w zbiorze wynikowym jest do-

kumentów znajdujących się w oryginalnej grupie. Przez oryginalną grupę należy rozumieć,zestaw dokumentów do którego był oryginalnie przypisany dokument, będący zapytaniem.Ilość dokumentów podobnych w zbiorze oznacza ilość dokumentów znajdujących się

w tej samej, oryginalnej, grupie, w której znajdowało się zapytanie/dokument.

2.1.3 Dokładność

Dokładność (ang. precision) opisuje proporcję ilości dokumentów podobnych i zwróconychdo całkowitej ilości dokumentów zwróconych.Przez ilość dokumentów zwróconych należy rozumieć ilość dokumentów przypisanych

do tej samej grupy po przetworzeniu za pomocą wybranego algorytmu.

1 poza PageRank i jego pochodną QDPageRank

Page 12: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

2. Metodologia badań 12

2.1.4 Graf sieci

Ponieważ oryginalne dane nie posiadają informacji o tym który dokument wskazuje naktóry, więc przyjęto założenie, że dokumenty znajdujące się w tej samej grupie wskazująna siebie, tworząc w ten sposób pełne grafy w obrębie grupy. Jest to idealny graf, więc jegoznaczenie jest raczej minimalne względem badań, służy on natomiast jako dobry odnośnik.W celu zasymulowania struktury Internetu, oryginalny graf został losowo zniekształcony.Zniekształcenie polegało na losowym usunięciu a następnie losowym dodaniu 2, 5, 10%ilości połączeń w grafie.

2.1.5 Miernik dla QDPageRank

Miernik dla QDPageRank znacząco odbiega od mierników zdefiniowanych dla pozostałychczterech metod. Miernik ten został opisany w rozdz. 7.4.2.

2.2 Przeprowadzone badania

W tej pracy ograniczono się do badań nad dokumentami napisanymi w języku angielskim.Język ten jest stosunkowo dobrze poznany od strony przetwarzania elektronicznego orazwiększość prac operuje na danych w tym języku.Badanie całych dokumentów wymusiło badanie metod w wersjach off-line, ponieważ

koszty na przygotowanie odpowiedzi w trybie czasu rzeczywistego są jeszcze zbyt duże, jakna możliwości dzisiejszych komputerów.

2.3 Dane testowe

Dane testowe zostały oparte o dane przygotowane przez amerykański National Instituteof Standards and Technology na potrzeby Document Understanding Conferences2. ProjektDUC zajmuje się pracami nad tworzeniem streszczeń z jednego lub wielu dokumentów.Dane udostępnione przez DUC bazują na dwóch bazach testowych przygotowanych napotrzeby konferencji TREC i TIPSTER. Zawierają one artykuły z gazet światowych i gazetregionalnych. Prawa autorskie do tych dokumentów należą do takich organizacji jak:

• Financial Times

• Foreign Broadcast Information Service

• Los Angeles Times

• Wisers Information Limited

Artykuły te zostały podzielone na grupy ok. 9-10 dokumentów o tej samej tematyce. Ogó-łem ilość grup stworzonych przez organizatorów wynosi 89, ale niektóre dokumenty znajdująsię w dwóch grupach lub trzech grupach. Tematyka jest znacząco różna i waha się od takichtematów jak choroba senatora amerykańskiego, a skończywszy na informacjach o huraganiei jakie szkody potrafił on wyrządzić.

2 http://www-nlpir.nist.gov/projects/duc/

Page 13: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

2. Metodologia badań 13

Ilość słów/rdzeni Ilość dokumentówWszystkie słowa 28293 820

Słowa nie będące na stop liście 28236 820Wszystkie rdzenie 19246 820

Rdzenie nie występujące na stop liście 19181 820

Tab. 2.1: Rozmiar macierzy testowych

Wszystkie dane (artykuły) zostały przetworzone na informacje o ilości wystąpień danegosłowa w dokumencie. Ta informacja została zapisana w bazie danych. Stworzono czterywersje macierzy słowo-dokument:

Wszystkie słowa Wersja podstawowa. Każda forma słowa została wyróżniona jako oddziel-ny element.

Słowa nie będące na stop liście Wyrazy najczęściej powtarzające się w zbiorze zostały usu-nięte.

Rdzeń Za pomocą algorytmu Portera stworzona została lista rdzeni słów występującychw zbiorze.

Rdzeń ze stop listą Rdzenie najczęściej występujące zostały wykluczone.

Dokładne rozmiary macierzy dla danych testowych pokazuje tabela 4.Opis, jak powstała stop lista i listę słów będących na stop liście, prezentuje dodatek A.

Page 14: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. LATENT SEMANTIC ANALYSIS

Latent Semantic Analysis (LSA - Analiza ukrytych grup semantycznych) zakłada, że zbiórdokumentów składa się ze znanej ilości grup. Mimo, iż ilość grup jest znana (założonaz góry) dla konkretnego wykonania algorytmu, to cechy klasyfikujące poszczególne elementysą ukryte (nieznane). Celem metody LSA jest odkrycie tej właśnie struktury. Punktemwyjścia modelu jest reprezentacja zwana „bag-of-words”, czyli reprezentacja traktującadokument jako zbiór słów. W przypadku metody LSA jest to macierz częstotliwości. Takamacierz zawiera w wierszach poszczególne wyrazy ze zbioru, a w kolumnach dokumentywystępujące w zbiorze. Elementami tej macierzy są zaś liczby naturalne będące zapisemczęstotliwości występowania danego słowa w danym dokumencie.LSA w swoim założeniu ma znaleźć dokumenty, które nie koniecznie mają ten sam

zadany zbiór słów, ale są na ten sam temat. Autorzy tego modelu [7] wskazują na takiemodele jak hierarchiczna klasyfikacja dla modeli klastrowych i analiza czynnikowa1 jako temodele, z których LSA zostało wyprowadzone.W klasyfikacji klastrowej odległość dwóch dokumentów jest zdefiniowana jako ilość tych

samych słów występujących w tych dokumentach. Macierz odległości jest poddana analizieklastrowej w celu znalezienia klasyfikacji w hierarchii. Eksploracja sąsiedztwa pozwala na-stępnie na wybranie podobnych dokumentów. Wadą tego modelu jest fakt, iż dokumentymogą przynależeć tylko i wyłącznie do jednej klasy.Metody bazujące na analizie czynnikowej bazują na kwadratowej, symetrycznej macie-

rzy podobieństwa pomiędzy dokumentami. Następnie wykorzystując algebrę liniową prze-chodzą do modelu o małej ilości wymiarów, w którym podobne dokumenty znajdują sięblisko siebie. Problemem w przypadku tej metody jest fakt bardzo dużego obciążenia obli-czeniowego oraz ustalenie podobieństwa pomiędzy dokumentami. [26]Dodatkowo obydwa modele mają także pewien problem z reprezentacją. Oryginalne da-

ne składają się z dwóch rodzajów elementów: dokumentów i słów, natomiast klasteryzacjawyjściowa była tylko dla jednego typu tzn. podział następował w wymiarze bądź słowa,bądź dokumentu. Próby wprowadzenia drugiego elementu nie były zbytnio udane[7].W przeciwieństwie do opisanych uprzednio metod LSA operuje na dokumentach i sło-

wach w tej samej przestrzeni. Dodatkowo jednak pozwala na pracę z wielką ilością doku-mentów i dużą ilością słów przy znaczącej ilości klas ukrytych.W tym rozdziale zostanie opisany proces modelowania za pomocą LSA, następnie przed-

stawione będą podstawy matematyczne metody, modyfikacje LSA oraz wyniki eksperymen-talne.1 „Analiza czynnikowa stanowi zespól metod i procedur statystycznych pozwalających na zredukowaniedużej liczby zmiennych do kilku wzajemnie nieskorelowanych czynników. Zachowują one stosunkowo dużączęść informacji tkwiących w zmiennych pierwotnych, a jednocześnie każda z nich jest nośnikiem innychtreści merytorycznych.” prof. dr hab. Tomasz Panek, wykłady z przedmiotu „Wielowymiarowa analizaporównawcza” na SGH

Page 15: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. Latent Semantic Analysis 15

3.1 Rozkład na wartości osobliwe (Singular Value Decomposition - SVD)

Proces modelowania za pomocą LSA rozpoczyna się od macierzy częstotliwości. Macierz tajest poddawana analizie przez rozkład na wartości osobliwe (SVD) w celu uzyskania ukrytejstruktury zbiorów. Metoda SVD (patrz dodatek B) jest używana również w rozkładzie nawektory własne, analizie spektrum czy w analizie czynnikowej.Klasyczna, jedno-obiektowa analiza ma na wejściu macierz obserwacji pomiędzy wszyst-

kimi parami obiektów jednego typu, np. dokumentami. Wartościami elementów macierzymogą być dowolne obserwacje, np. miara podobieństwa dokumentów, która może być poli-czona automatycznie (np. ilość wspólnych wyrazów) lub może być subiektywną numerycznąoceną (np. jednej lub więcej osób). W ten sposób powstaje macierz kwadratowa A. Następ-nie dla A liczone są wartości i wektory własne, które zostają zapisane w formie macierzowej.Dla wartości własnych budowana jest macierz diagonalna D, a wektory własne tworzą ma-cierz E przez ich zapis w poszczególnych kolumnach. Macierze D i E pokazują oryginalnedane jako liniowo niezależne czynniki. Bardzo często zdarza się iż duża ilość czynników mawartości pomijalnie małe. Dzięki ich pominięciu otrzymuje się model szacunkowy, zawiera-jący znacznie mniejszą ilość czynników. Oznacza to, że każde podobieństwo dokumentówjest oszacowane przez wartość mniejszej ilości czynników. W przypadku dwu-obiektowymwejściem nie jest kwadratowa macierz obserwacji obiektów jednego typu, ale dowolna ma-cierz prostokątna A. Macierz może reprezentować dwa różne typy obiektów (będące repre-zentowane przez wiersze i kolumny) np. dokumenty w zbiorze i słowa w nich występujące.A może zostać poddana rozkładowi na trzy różne macierze o bardzo specyficznym kształ-cie. Ten proces nazywa się rozkładem na wartości osobliwe. Macierze wynikowe zawierają„wektory osobliwe” i „wartości osobliwe”.Tak samo, jak w przypadku jedno-obiektowym macierze wynikowe pokazują rozkład

oryginalnych zależności na liniowo niezależne komponenty. Tak jak uprzednio większośćz tych czynników jest pomijalnie mała i może być pominięta. Dzięki pominięciu uzysku-jemy model przybliżony zawierający znacznie mniej komponentów. W tak uproszczonymmodelu wszystkie zależności słowo-słowo, dokument-dokument, słowo-dokument są szaco-wane przez wartości w przestrzeni o zredukowanej liczbie wymiarów. Algorytm rozkładuSVD i przykład obliczeń został przedstawiony w dodatku B.Obydwa przypadki pozwalają na reprezentację geometryczną w przestrzeni za pomocą

iloczynu skalarnego lub kosinusa kąta pomiędzy wektorami reprezentującymi dwa obiektyw zredukowanych przestrzeniach.Na potrzeby inteligentnej nawigacji rozkład SVD może być postrzegany jako technika

do uzyskania nieskorelowanych zmiennych, które mogą być użyte do indeksowania. Każdyz obiektów (zarówno słowo jak i dokument) są reprezentowane przez wektor. Dzięki redukcjiwymiarów jest możliwe, aby dokumenty o nieznacząco różnych wektorach były „zrzutowa-ne” na ten sam wektor w przestrzeni zredukowanej. Ta własność pozwala na uniknięcieproblemów związanych z poszukiwaniem bazującym na bezpośrednim poszukiwaniu słów.Co oznaczają poszczególne czynniki? Czynniki te odpowiadają pewnym abstrakcyjnym

pojęciom. Nie odpowiadają one pojedynczym słowom, czy bezpośrednio wyrażonym kon-cepcjom [7]. Nie jest możliwe, w ogólnym przypadku, stwierdzenie że dana zmienna (czyn-nik) x odpowiada ptakom, a zmienna y odpowiada pożywieniu. Zmienne te odpowiadająpewnym wspólnym znaczeniom wielu różnych słów i dokumentów. Każde słowo i każdydokument jest charakteryzowany przez wektor wag, wskazujący na moc (siłę) relacji z po-

Page 16: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. Latent Semantic Analysis 16

szczególnymi zmiennymi (konceptami). Zmniejszenie przestrzeni daje również praktyczneoszczędności, ponieważ K oryginalnych elementów zostaje zastąpionych k < K elementamiszacunkowymi. Dodatkowo dzięki rozkładowi uzyskuje się opis obiektów, pozwalający napozbycie się pewnych redundancji i wieloznaczności słów.Możliwa jest rekonstrukcja oryginalnych wartości macierzy zdarzeń z poszczególnych

wartości rozkładu z akceptowalną, ale nie 100% dokładnością. Kluczowym faktem dla me-tody jest to, że z k wymiarowej przestrzeni czynników nie osiąga się idealnej rekonstrukcji.Metoda zakłada, iż dane wejściowe zawierają elementy wpływające na obniżenie jakościdanych.W przeciwieństwie do typowych zastosowań analizy czynnikowej, autorzy[7] metody

nie są zainteresowani redukcją przestrzeni wielowymiarowej do przestrzeni o małej ilościwymiarów (2, 3), ponieważ nie zachodzi potrzeba wizualizacji czy nawet zrozumienia jej.Wydaje się, że na potrzeby reprezentacji tematów w dowolnym dużym zbiorze dokumentówpotrzeba więcej niż kilka niezależnych grup. To powoduje, iż przewidywana liczba wymia-rów będzie znacząco większa od ilości wymiarów, którą człowiek jest sobie w stanie wy-obrazić. Należy również zauważyć, że wykorzystanie modelu przestrzeni Euklidesowej jestpewnego rodzaju aproksymacją, która wcale nie obejmuje wszystkich (czy nawet większościrelacji) zachodzących pomiędzy dokumentami. Do takich relacji można zaliczyć odnośni-ki w tekście, czy nieliniowe zależności pomiędzy znaczeniami[7]. Niektóre relacje możnaaproksymować do przestrzeni euklidesowej, ale kosztem zwiększenia wymiarów. Przewidy-wanym efektem takich modyfikacji byłaby pewnego rodzaju klasteryzacja reprezentującaróżne domeny koncepcyjne. To skłania do wykorzystania przestrzeni o pośrednich ilościachwymiarów. Próba dobrania ilości wymiarów nie jest intuicyjna, dodatkowo nie ma metod,algorytmów, pozwalających na oszacowanie tej ilości. W [7] zwraca się też uwagę na faktiż w przypadku LSA nie zachodzi potrzeba uzyskania jak największej wariancji w macie-rzy wejściowej, a raczej tak należy dobrać elementy, żeby uzyskać najlepszą efektywnośćodpowiedzi.Jak otrzymać odpowiedź w na zapytanie w takiej reprezentacji? Na to pytanie odpo-

wiedzi należy szukać w reprezentacji wszystkich obiektów jako wektory w k wymiarowejprzestrzeni. Zapytanie takie można uznać za pewien „dokument”. Taka interpretacja jestdozwolona, skoro każdy z dokumentów jest traktowany jako zbiór słów. „Dokument” możenastępnie być reprezentowany jako ważona suma wektorów jego poszczególnych wyrazów,tworząc pseudo-dokument. Potencjalnymi dokumentami będącymi odpowiedzią na zapyta-nie są więc te dokumenty, dla których kosinus kąta pomiędzy pseudo-dokumentem, a do-kumentami w zbiorze jest największy.

3.2 Podstawy matematyczne

3.2.1 Rozkład na wartości osobliwe

Mimo, iż podstawowy algorytm rozkładu oraz przykład został przedstawiony w dodatku B,to w tym miejscu zostanie on przedstawiony w sposób bardziej opisowy z ukierunkowaniemna potrzeby LSA.Każda macierz prostokątna, np. macierz X słów i dokumentów o rozmiarze t× d może

Page 17: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. Latent Semantic Analysis 17

zostać rozłożona na iloczyn trzech macierzy:

X = T0 × S0 × DT0

w taki sposób, że T0 i D0 mają kolumny (wektory) ortonormalne, a S0 jest macierzą dia-gonalną. T0 i D0 są macierzami zawierającymi lewe i prawe wektory osobliwe, natomiastS0 zawiera wartości osobliwe. Rozkład ten jest unikalny z dokładnością do pewnych per-mutacji kolumn, wierszy i znaków2. Zwyczajowo przyjęto, że elementy na diagonali S0 sąwszystkie dodatnie i posortowane malejąco.W ogólności macierze T0,D0 i S0 muszą mieć pełne wymiary. Mocną stroną zastosowania

SVD jest fakt, że dzięki prostej strategii można szybko osiągnąć optymalne przybliżenieużywając mniejszych macierzy. Jeżeli w S0 wartości osobliwe są uporządkowane malejącoi niech m = min(t, d), to m − k najmniejszych wartości ustawia się na 0 otrzymując S ′

0.W ten sposób otrzymujemy X = T0 × S ′

0 × DT0 , która aproksymuje macierz X i jest

rozmiaru k. Ponieważ wprowadziliśmy do S ′0 zera, to reprezentacja może być uproszczona

przez skasowanie zerowych kolumn i wierszy w S0, oraz usunięcie odpowiednich kolumnz macierzy T0 i D0. W ten sposób następuje redukcja modelu do:

X = T0 × S0 × D0

T(3.1)

który reprezentuje oszacowanie o wymiarze k danych wejściowych.Ilość wymiarów podlegających redukcji (czyli wybór k), jest krytyczna. Idealnie, po-

trzebny jest taki wymiar k aby można było reprezentować całość rzeczywistej struktury,ale na tyle mały aby w modelu nie uwzględnić błędów próbkowania.

3.2.2 Interpretacja graficzna modelu

Wiersze macierzy S0 i D0 można potraktować jako punkty reprezentujące dokumenty i sło-wa w przestrzeni k wymiarowej. Za pomocą skalowania osi (za pomocą odpowiednich war-tości z S0), iloczyn skalarny pomiędzy punktami może być użyty do porównania elementów.

3.2.3 Obliczanie wartości dla porównań w modelu SVD

Deerwester [7] opisuje porównywanie trzech najbardziej standardowych zapytań w dziedzi-nie wyszukiwania informacji:

1. Jak bardzo „słowa” i i j są podobne?

2. Jak bardzo „dokumenty” i i j są podobne?

3. Na ile dobrze słowo i pasuje do dokumentu j?

Odpowiedzi na te pytania uzyskuje się przez porównanie odpowiednich wierszy, kolumn czyodpowiednich elementów macierzy wynikowej (opisane niżej). Porównywanie dokumentów

2 Dozwolone są permutacje, które pozostawią S0 diagonalną i nie niszczą relacji pomiędzy T0 i D0. Toznaczy: kolumny i i j macierzy S0 mogą być zamienione wtedy i tylko wtedy gdy wiersze i i j są zamienioneto kolumny i i j macierzy T0 i D0 są również zamienione.

Page 18: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. Latent Semantic Analysis 18

w modelu LSA odbywa się podobnie, tylko zamiast macierzy X wykorzystywana jest ma-cierz X. Porównania dwóch dokumentów dokonuje się poprzez porównanie dwóch wekto-rów kolumnowych macierzy D0 × S0 (za pomocą iloczynu skalarnego). Uzyskana wartośćodpowiada stopniowi podobieństwa pomiędzy dwoma tymi wektorami (reprezentacji sza-cowanej). Dzięki definicji macierzy T0, S0 i D0 mamy gwarancję, że:

XXT = D0S02D0

T(3.2)

W tym przypadku (XXT )i,j jest otrzymywane przez iloczyn skalarny wierszy i i j macierzyD0S0. W związku z tym można traktować wiersze D0S0 jako współrzędne dokumentu.

3.3 Modyfikacje

Istnieje kilka znanych technik na poprawę wyników dla systemów wyszukujących informa-cje bazujących na reprezentacji wektorowej (LSA należy do tych metod). Do tych techniknależy zaliczyć przypisywanie wag elementom wektora, iteracyjny proces wyszukiwania,lista wyrazów nieniosących informacji tzw. stop lista, wyszukiwanie rdzenia słowa i w przy-padku LSA również wybór ilości elementów. W ogólnym przypadku zyskuje się od 1%-5%poprawy wyników za pomocą stop listy i wyszukiwania rdzenia [8]. Dumais wskazuje rów-nież, że w przypadku LSA nie uzyskuje się jednoznacznych wyników przy wykorzystaniumetody wyszukiwania rdzenia, w zależności od wejścia albo uzyskuje się małą poprawę,albo utratę poprawności.

3.3.1 Ważenie słów

Jedną z najczęściej stosowanych i efektywnych technik poprawy wyszukiwania informacjijest modyfikacja prostej reprezentacji (gdzie elementami wektora są częstotliwości elemen-tów). Modyfikacje takie mogą być: lokalne, czyli dotyczące pojedynczych dokumentów lubglobalne dotyczące całego zbioru dokumentów. W ogólności waga słowa t w dokumencie d

jest L(t, d)×G(t), gdzie L(t, d) oznacza wagę słowa t w dokumencie d a G(t) oznacza wagęglobalną słowa.Często stosuje się następujące funkcje dla wag lokalnych:

• Częstotliwość występowania słowa

• Binarne

• log(Częstotliwość występowania słów + 1)

Waga binarna zastępuje częstotliwość słowa, tylko informacją o fakcie czy słowo znajdujesię w dokumencie (1), czy też nie występuje ono w danym dokumencie (0). Log(Częstotliwośćwystępowania słów + 1) korzysta z logarytmu podstawowej wartości, zmniejszając w tensposób efekt dużych różnic w częstotliwości słów.Funkcje wag globalnych bazują na następujących informacjach o słowach i dokumentach:

• Częstotliwość słowa (ang. term frequency) tfij: Opisuje jak często słowo i występujew dokumencie j.

Page 19: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. Latent Semantic Analysis 19

• Częstotliwość dokumentu (ang. document frequency) dfi: Opisuje ile jest dokumentówzawierających słowo i.

• Częstotliwość globalna (ang. global frequency)gfi: Opisuje ile razy słowo i pojawiłosię w całym zbiorze.

Cztery metody często występujące w badaniach to:

1. Normalna: 1∑

j tf2

ij

.

2. GfIdf (ang. Global frequency, inverse document frequency): gfj

dfi.

3. Idf (ang. Inverse document frequency): log2

(

ndocsdfi

)

+ 1, gdzie ndocs oznacza liczbędokumentów w zbiorze.

4. Entropia: 1 −∑

j

pij log(pij)

log(ndocs), gdzie pij =

tfij

gfi.

W ogólności metody globalne starają się zmniejszyć wagę słów, które występują naj-częściej lub w wielu dokumentach. Metoda tzw. „normalna” normalizuje długość wek-tora dla słowa. To pozwala na nadanie większej wagi słowom, które występują rzadziejw dokumencie[8].GfIdf i Idf są do siebie bardzo podobne. Obydwie metody ważą słowa odwrotnie do ich

częstotliwości występowania w dokumentach. GfIdf dodatkowo zwiększa wagę często poja-wiającym się słowom. Entropia jest najbardziej rozbudowaną funkcją bazującą na pewnychteoretycznych podstawach z teorii informacji. Średnia entropia słowa jest opisana wzorempij log(pij)

log(ndocs). W ten sposób funkcja przypisuje słowom, które pojawiają się najczęściej w do-

kumentach (np. gdzie pij = 1ndocs

) maksimum, a minimum słowom, które pojawiają sięw małej ilości dokumentów. Odejmowanie to zabieg techniczny w celu przystosowania wagdo ogólnie przyjętego schematu. W przeciwieństwie do pozostałych metod entropia bierzepod uwagę rozkład słów w zbiorze dokumentów.

3.4 Wyniki eksperymentalne

Testów dokonano na macierzach opisanych w 2.3. Przy wyborze 2, 4, 8, 16, 32, 64 i 128klas.Zakłożono, że indeks maksymalnej wartości w wektorze DS odpowiada przypisanej

klasie ukrytej. Przeprowadzono badania parametrów dokładność i odpowiedź. W tym celuprzyjęto iż: ilość dokumentów w grupie (klasie) ukrytej odpowiada ilości dokumentów zwra-canych przez system. Ilość dokumentów podobnych oznacza ilość dokumentów w grupie (lubsumę dokumentów w grupach) do których dany dokument został przypisany, w zbiorachDUC.Wyniki dla odpowiedzi i dokładności przedstawiono na wykresach 3.1 i 3.2.

3.4.1 Odpowiedź

Ilość dokumentów odpowiednich względem dokumentu przeglądanego maleje względem ilo-ści klas. Przy dwóch klasach ukrytych średnio zwracane jest 55% dokumentów które są

Page 20: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. Latent Semantic Analysis 20

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

0.55

0.6

0 20 40 60 80 100 120 140

Odp

owie

dz

Ilosc klas ukrytych

Srednia odpowiedz przez LSA

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 3.1: Średnia odpowiedź na zapytanie w metodzie LSA.

podobne do dokumentu przeglądanego. Jest to wynikiem tylko o 5 punktów procentowychlepszym od losowego przypisania dokumentów do grup. Wraz ze wzrostem ilości klas ukry-tych odpowiedź maleje. To oznacza, że ilość dokumentów odpowiadających dokumentowiprzeglądanemu przypisanych do grupy maleje. Wykorzystanie stop listy w obydwu przy-padkach pozwoliło na otrzymanie wyników lepszych o 1-2% co jest zgodne z wynikamiz prezentowanymi w [8].

3.4.2 Dokładność

Ilość dokumentów odpowiadających dokumentowi względem całkowitej ilości zwróconychdokumentów wzrasta, ale jest bardzo niska. Przy dwóch klasach ukrytych w zbiorze zwró-conym znajdują się średnio dwa dokumenty odpowiednie na sto. Wraz ze wzrostem grupdokładność odpowiedzi wzrasta do ilości około 5 dokumentów odpowiadających na 30 zwró-conych. Wyniki zastosowania stop listy dla słów, tak jak w przypadku odpowiedzi poprawiawartości otrzymane. Zastosowanie rdzenia powoduje jednak utratę dokładności.

3.4.3 Inne

Bardzo niezachęcającym wynikiem była również kolejność dokumentów zwracana przezsystem. Przyjmując interpretację pokazaną w [7] XXT opisuje skalę podobieństwa dwóchdokumentów względem siebie. Wykorzystanie bezpośrednio tej wartości jako elementu sor-tującego przy zwracaniu dokumentów powodowało, że dokumenty które znajdowały sięw tej samej grupie były praktycznie równomiernie rozkładane w na całym zbiorze zwraca-nym (820 dokumentów). Pierwszy dokument przynależący do tej samej grupy rzadko po-jawiał się w pierwszej 50-ce. Zastosowanie kosinusa kąta pomiędzy wektorem opisującym

Page 21: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. Latent Semantic Analysis 21

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0 20 40 60 80 100 120 140

Dok

ladn

osc

Ilosc klas ukrytych

Srednia dokladnosc LSA

wszystkie slowaz wylaczeniem stop listyrdzenierdzenie z wylaczeniem stop listy

Rys. 3.2: Średnia dokładność odpowiedzi na zapytanie w metodzie LSA.

64 128Wszystkie słowa 5 45

Słowa nie będące na stop liście 0 21Wszystkie rdzenie 8 54

Rdzenie nie występujące na stop liście 2 33

Tab. 3.1: Ilość pustych klas podczas klasteryzacji LSA

dokumenty DS pozwalało na uzyskanie lepszych wyników to znaczy pierwszy dokumentodpowiadający dokumentowi pojawiał się w pierwszej dziesiątce, a kolejny w pierwszej50-ce.Ciekawym zachowaniem jest rozkład w grupach elementów. Rysunek 3.3 pokazuje ilość

dokumentów przypisanych do grup dla 128 klas. Na tym wykresie ujawnia się pewna re-gularność występująca niezależnie od ilości klas. Wykres pokazuje informacje z wykorzy-staniem logarytmicznej skali na osi Y, w celu lepszej prezentacji różnic i klas o zerowejilości dokumentów. Przytłaczająco duża ilość dokumentów znajduje się w kilku pierwszychklasach. Natomiast wraz ze zwiększaniem się numeru grupy ilość dokumentów maleje. Przyodpowiednio dużej ilości klas mogą pojawić się takie klasy, które nie posiadają przypisanychdokumentów. Ilość takich dokumentów pokazuje tabela 3.1. Za takie przypisanie elementówodpowiada mechanizm SVD, w którym wartości osobliwe ustawia się malejąco w macierzyS.

Page 22: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

3. Latent Semantic Analysis 22

1

10

100

1000

0 20 40 60 80 100 120 140

Ilosc

dok

umen

tow

Numer klasy

Rozklad dokumentow w klasach w metodzie LSA

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 3.3: Rozkład dokumentów w klasach po przeprowadzeniu analizy LSA (przy założeniu 128klas ukrytych). Skala logarytmiczna.

3.5 Podsumowanie

W przypadku dokumentów testowych jakość dokumentów zwracanych przez LSA jest w du-żej mierze niezadowalająca. Jednak wykorzystuje się ją w innych badaniach takich jakstatystycznych badaniach nad językiem [4].

Page 23: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

4. PROBABILISTIC LATENT SEMANTIC ANALYSIS

Probabilistic Latent Semantic Analysis (PLSA - Probabilistyczna analiza ukrytych grupsemantycznych) mimo, że z nazwy sugeruje pewne podobieństwo do LSA, to jest podobień-stwo jest tylko w założeniu o istnieniu ukrytych grup do których dokumenty należą.PLSA należy do metod z grupy działających na zasadzie uczenia się z danych bez

nadzoru[11]. PLSA została wyprowadzona z istniejących już metod uczenia się bez nadzo-ru dla tzw. danych dwuczłonowych (ang. dyadic data). Dane dwuczłonowe definiuje się jakodwa skończone, dyskretne, niezależne zbiory elementów, dla których przypisane są wartoścido par elementów (po jednym z każdego zbioru). W przypadku nawigacji takimi dokumen-tów zbiorami niezależnymi są dokumenty i słowa. Przypisanymi wartościami natomiast sączęstotliwości występowania poszczególnych słów w dokumentach.Punktem wyjścia dla PLSA jest model statystyczny zwany modelem aspektowym[10].

Nazwa tego modelu pojawia się po raz pierwszy w pracach Hofmanna i Puzicha. Model tenzakłada, że dany jest zbiór obserwacji S = (xn, yn)1≤n≤N

1, będący pewną reprezentacją parzmiennych losowych (Xn, Y n)1≤n≤N .Dla danych dwuczłonowych można zdefiniować przynajmniej trzy różne modele:

• Przez wprowadzenie (nieobserwowanej) ukrytej klasy dla każdej obserwacji. To znaczydla każdej obserwacji (xn, yn) przypisujemy zmienną ukrytą An należącą do zbioruA = a1, ..., aK . Dowolne przypisanie wartości a = (an)1≤n≤N dzieli zbiór obserwacji Sna K klas. Ten model został nazwany w [11] modelem aspektowym. A poszczególneobserwacje należące do jednej grupy nazwano aspektem.

• Przez przypisanie zmiennych ukrytych tylko obiektom jednego ze zbiorów, tworzącw ten sposób jednostronny lub asymetryczny model klastrowy. Bez starty ogólnościmożna rozpatrywać zmienne ukryte C(x) nad zbiorem C = c1, ..., cK oznaczone przezc = (c(x))x∈X będące realizacją, która dzieli zbiór X. Odwrócenie ról X i Y daje innymodel.

• Zmienne ukryte są zdefiniowane dla obydwu zbiorów jednocześnie. Zmienne ukryteC(x) dzielą zbiórX, a zmienne ukryteD(y) dzielą zbiór Y . Taki model jest nazywanydwustronnym lub symetrycznym modelem klastrowym.

W tym rozdziale zostaną przedstawione teoretyczne podstawy modelu aspektowego, al-gorytmu Expectation Maximization (EM) pozwalającego na przeprowadzenie obliczeń dlamodelu aspektowego, następnie zostaną pokazane podobieństwa pomiędzy PLSA i LSAi pewne modyfikacje algorytmu EM, oraz wyniki przeprowadzonych doświadczeń.

1 Notacja przyjęta jest zgodna z notacją przyjętą w [11]. Indeks dolny oznacza unikalne nazwy elementówzbiorów, a indeks góry oznacza liczbę obserwacji.

Page 24: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

4. Probabilistic Latent Semantic Analysis 24

Rys. 4.1: Graficzna reprezentacja symetrycznego modelu aspektowego.

4.1 Model aspektowy

Wmodelu aspektowym zakłada się że obserwacje w zbiorze S są niezależne oraz że zmiennelosowe Xn i Y n są warunkowo niezależne względem odpowiednich zmiennych ukrytych An.Losowy proces tworzenia danych może być opisany następująco:

1. wybierz aspekt a z prawdopodobieństwem P (a).

2. wybierz x ∈ X z prawdopodobieństwem P (x|a).

3. wybierz y ∈ Y z prawdopodobieństwem P (y|a).

Odpowiadający temu rozkład prawdopodobieństwa dla danych i dowolnej inicjalizacji dlazmiennych losowych wyraża się przez:

P (S, a) =N∏

n=1

P (xn, yn, an) (4.1)

gdzieP (xn, yn, an) = P (an)P (xn|an)P (yn|an). (4.2)

Graficzną reprezentację modelu pokazuje rysunek 4.1. Zsumowanie wszystkich moż-liwych wartości zmiennych ukrytych i grupowanie identycznych par razem, pozwala nauzyskanie typowego rozkładu dla zmiennych mieszanych nad zbiorem obserwacji.

P (S) =∏

x∈X

y∈Y

P (x, y)n(x,y) (4.3)

gdzieP (x, y) =

a∈A

P (a)P (x|a)P (y|a). (4.4)

We wzorze (4.4) n(x, y) oznacza empiryczne częstotliwości występowania słów w dokumen-cie i zdefiniowano go w następujący sposób:

n(x, y) = |(xn, yn) : xn = x ∧ yn = y| . (4.5)

Odpowiadające im wartości posumowane w kolumnach i wierszach dla obiektów x i y sąoznaczone wartościami n(x) i n(y).

Page 25: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

4. Probabilistic Latent Semantic Analysis 25

4.2 Algorytm EM

Estymacja maksymalnego podobieństwa wymaga maksymalizacji funkcji log P (S, θ) wzglę-dem parametrów modelu, które są opisane wektorem θ. W celu ominięcia trudności z mak-symalizowaniem sumy logarytmów, stosuje się do klasteryzacji algorytm EM. EM składasię z dwóch kroków iteracyjnych:

Estymacja (E) przypisanie każdego przykładu rozkładowi, któremu najlepiej odpowiada.Stosuje się w celu estymowania prawdopodobieństwa nieobserwowanej zmiennej loso-wej P (a|S, θ′) dla danego oszacowania parametru θ′

Maksymalizacja (M) Wyznaczenie parametrów każdego rozkładu na podstawie przykła-dów, które zostały do niego przyporządkowane. W tym kroku następuje maksyma-lizacja oczekiwanej całkowitej funkcji podobieństwa L =

a P (a|S; θ′) log P (S, a, θ)dla danych wyliczonych w kroku E prawdopodobieństw względem θ.

Cichosz w [3] definiuje algorytm EM w terminologii hipotez statystycznych w następu-jący sposób:

Estymacja (E) dla aktualnej hipotezy h wyznaczenie wag poszczególnych grup pan

na pod-stawie prawdopodobieństw przynależności każdego elementu obserwowanego (xn, yn) ∈S do kategorii an

Maksymalizacja (M) zastąpienie hipotezy h hipotezą h′ z parameterami rozkładów praw-dopodobieństwa gan

Ω dla poszczególnych kategorii zmodyfikowanymi w celu uzyskaniamaksymalizacji zgodności z przykładami trenującymi przy założeniu wag wyznaczo-nych w poprzednim kroku.

Gdzie gan

Ω jest funkcją gęstości o znanej postaci.Algorytm EM, w każdym kroku iteracyjnym, zwiększa obserwowane podobieństwo i zbie-

ga do (lokalnego) maksimum.W modelu aspektowym, wszystkie elementy θ są ciągłe (P (a), P (x|a), P (y|a)). Rów-

nanie dla kroku E w celu policzenia prawdopodobieństwa a posteriori można wyprowadzićze wzoru Bayesa na prawdopodobieństwo warunkowe otrzymując:

PAn = a|Xn = x, Y n = y; θ =P (a)P (x|a)P (y|a)

∑′a P (a)P (x|a′)P (y|a′)

(4.6)

W celu skrócenia notacji stosowany będzie zapis P (a|x, y; θ). Krok M oblicza się przez róż-niczkowanie funkcji podobieństwa L względem elementów θ i wprowadzenie odpowiednichmnożników Lagrange’a w celu zapewnienia poprawnej normalizacji[11]:

P (a) =1

N

N∑

n=1

P (a|xn, yn; θ′), (4.7)

P (x|a) =

n:xn=x P (a|xn, yn; θ′)∑N

n=1 P (a|xn, yn; θ′), (4.8)

P (y|a) =

n:yn=y P (a|xn, yn; θ′)∑N

n=1 P (a|xn, yn; θ′). (4.9)

Page 26: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

4. Probabilistic Latent Semantic Analysis 26

Z implementacyjnego punktu widzenia, należy zauważyć, iż nie jest konieczne prze-chowywanie wszystkich N · K prawdopodobieństw, ponieważ krok E i krok M mogą byćużywane naprzemiennie w jednym kroku metody.Modyfikując ogólny algorytm na potrzeby nawigacji w dokumentach tekstowych, za dwa

zbiory niezależne przyjmując dokumenty D = d1, . . . , dN i słowa W = w1, . . . , wM.Klasy ukryte niech będą opisane następująco Z = z1, . . . , zKW tym przypadku podstawowe prawdopodobieństwa można rozpisać następująco:

P (d, w) = P (d)P (w|d), P (w|d) =∑

z∈Z

P (w|z)P (z|d) (4.10)

lubP (d, w) =

z∈Z

P (z)P (d|z)P (w|z) (4.11)

Co oznacza, że krok E opisany jest następującym równaniem:

P (z|d, w) =P (z)P (d|z)P (w|z)

z′∈Z P (z′)P (d|z′)P (w|z′) (4.12)

oraz krok M opisany jest przez:

P (w|z) ∝∑

d∈D

n(d, w)P (z|d, w), (4.13)

P (d|z) ∝∑

w∈W

n(d, w)P (z|d, w), (4.14)

P (z) ∝∑

d∈D

w∈W

n(d, w)P (z|d, w). (4.15)

4.3 PLSA a LSA

Wielomianowy rozkład P (·|z) zależny od klas(grup) ukrytych nad słownictwem, można byćinterpretowany jako, punkt wM −1 wymiarowym sympleksie wszystkich możliwych wielo-mianów. Dzięki wypukłemu kształtowi, zbiór K punktów definiuje L ≤ K − 1 wymiarowysubsympleks. Wzór 4.10 zakłada że rozkłady warunkowe P (w|z) dla wszystkich dokumen-tów są szacowane przez wielomian. Ten wielomian można reprezentować jako wypukłąkombinację współczynników P (w|d), gdzie P (z|d) jednoznacznie definiuje punkt w sub-sympleksie. Mimo iż zmienne ukryte mają charakter dyskretny, to operacje przeprowadzasię w ciągłej przestrzeni wszystkich rozkładów wielomianowych. Ponieważ wymiar sub-sympleksu jest ≤ K − 1 oznacza to redukcję przestrzeni względem oryginalnej przestrzeniprawdopodobieństw o wymiarze M − 1. Daje to redukcję wymiarów w przestrzeni roz-kładów wielomianowych. Powstały subsympleks można więc nazwać przestrzenią ukrytychgrup semantycznych.W celu pokazania relacji pomiędzy PLSA i LSA należy rozpisać symetryczny model

aspektowy (4.11) w notacji macierzowej:

U = (P (di|zk))i,k, (4.16)

V = (P (wj|zk))j,k, (4.17)

Σ = diag(P (zk))k (4.18)

Page 27: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

4. Probabilistic Latent Semantic Analysis 27

Cały model można więc zapisać jako:

P = UΣV T . (4.19)

Porównując to z SVD można poczynić następujące obserwacje:

1. Iloczyn skalarny pomiędzy wierszami U i V odpowiada warunkowej niezależnościw PLSA,

2. Elementy Σ w PLSA zastępują wartości osobliwe.

Znaczącą różnicą pomiędzy PLSA i LSA jest funkcja celu, która jest stosowana do otrzy-mania optymalnego oszacowania. W LSA zastosowana została norma Frobeniusa2, którazakłada addytywny szum Gaussowski. W przeciwieństwie, PLSA bazuje na funkcji po-dobieństwa wielomianowego próbkowania i próbuje maksymalizować możliwości przewidy-wania przez model. Oznacza to iż PLSA minimalizuje rozbieżność Kullback-Leibera [10]pomiędzy empirycznymi rozkładami a modelem. Kolejnym elementem różniącym metodyjest fakt, że w LSA nie ma interpretacji kierunków przestrzeni, natomiast w PLSA możnaje interpretować jako wielomianowe rozkłady słów. Dodatkowo wykorzystanie teorii sta-tystycznych dotyczących wyboru modelu może pozwolić na wyliczenie optymalnej liczbywymiarów, w przeciwieństwie do LSA gdzie wartość ta przyjmowana jest ad hoc.

4.4 Modyfikacja: wyżarzanie

Ponieważ algorytm rozpoczyna działanie z losowego punktu przestrzeni, wiadomo iż bę-dzie on przez minimalizację funkcji celu podążał w kierunku lokalnego minimum. Chcącpolepszenia wyników (osiągnięcie minimum globalnego) można zastosować technikę wielo-krotnych restartów oraz technikę wyżarzania.Punktem wyjścia dla techniki wyżarzania jest modyfikacja kroku E. Ten element algo-

rytmu modyfikuje się zgodnie z regułami optymalizacji przez wyżarzanie. Neal and Hinton3

wskazują, że dla algorytmu EM funkcją celu4 jest funkcja:

Fβ = −β∑

d,w

n(d, w)∑

z

P (z; d, w) log P (d, w|z)P (z)

+∑

d,w

n(d, w)∑

z

P (z; d, w) log P (z; d, w). (4.20)

gdzie P (z; d, w) jest parametrem definiującym warunkowy rozkład Z. β jest zaś parametremtemperatury. Należy zauważyć, że w (4.20) znajduje się składnik ujemny będący oczeki-wanym podobieństwem przeskalowanym przez β. Przy założeniu P (z; d, w) = P (z|d, w)minimalizacja F względem parametrów definiujących P (d, w|z)P (z) oznacza standardowykrokM. Z tego wynika że w krokuM prawdopodobieństwa są wyliczane przez minimalizacjęF względem P gdy β = 1. W ogólności:

P (z|d, w) =[P (z)P (d|z)P (w|z)]β

z′∈Z [P (z′)P (d|z′)P (w|z′)]β (4.21)

2 ||A||2F =

i,j |aij |2 =

i ||Ai·||22 =

j ||A·j ||223 chodzi o książkę „Learning in Graphical models” informacja w opraciu o [10]4 zwaną również funkcją energii lub Helmotz’a

Page 28: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

4. Probabilistic Latent Semantic Analysis 28

Oznacza to, że entropia przy β < 1 stara się tak ustawić prawdopodobieństwa aby tworzyły(zbliżały się do) rozkładu jednostajnego.Hofmann [10] proponuje metodę odwrotną, która najpierw stosuje EM, a dopiero póź-

niej obniża β. W porównaniu do standardowego algorytmu może to przyspieszyć znaczącoznalezienie modelu. Według [10] daje to duże oszczędności czasowe bez zauważalnej utratyjakości. Ogólnie algorytm ten (zwany TEM) można opisać następująco:

1. Ustaw β ← 1 i wykonaj algorytm EM.

2. Zmniejszyć β ← ηβ (gdzie η < 1) i wykonać EM.

3. Powtarzać tak długo krok 2. aż badanie na danych weryfikujących będzie dawałopoprawę.

4. Zatrzymać algorytm jeżeli zmniejszenie β nie wpłynie na poprawę wyników.

4.5 Wyniki eksperymentalne

W przypadku PLSA zastosowano te same ilości klas jak w przypadku metody LSA.W implementacji zastosowano algorytm wyżarzania wraz ze zbiorem weryfikującym.

Powstała ona na bazie implementacji PennAspect5. Implementacja ta pozwala bronić sięprzed przeuczeniem modelu na zbiorze. Jednak w przypadku tych badań zbiór wejściowyi zbiór weryfikujący był ten sam. Celem takiego podejścia do problemu było stworzenie jaknajlepszego dostosowania modelu do danych testowych. Cechą podstawową algorytmu jeststart z losowego punktu przestrzeni. W związku z tym, dla każdego zestawu wejściowegometoda była trzykrotnie uruchamiania i najlepszy wynik był brany pod uwagę. Ilość iteracjidla każdego uruchomienia wynosiła 50. Wykonanie obliczeń dla tej ilości iteracji i tzw.restartów, spowodowało bardzo długi czas liczenia. Przy 128 klasach jedna iteracja trwałado 25 min na procesorze 1.8 GHz.Metoda PLSA przypisuje dla każdego dokumentu prawdopodbieństwo przynależenie do

każdej klasy. W badaniach przyjęto, że klasą do której należy dokument jest ta klasa, doktórej, z największym prawdopodobieństwem, przypisany jest dokument.

4.5.1 Odpowiedź

W przypadku metody PLSA odpowiedź (rys. 4.2) w zależności od ilości grup jest sto-sunkowo wysoka. Już w przypadku podziału na dwie klasy ilość dokumentów zwróconychw zbiorze jest ponad 90%. Wraz ze wzrostem ilości klas pogłębia się różnica pomiędzyodpowiedzią przy zastosowaniu rdzenia i oryginalnymi słowami.

4.5.2 Dokładność

Ilość istotnych dokumentów podobnych w zbiorze dokumentów zwracanych wzrasta wrazze wzrostem ilości klas. Widoczny na wykresie (4.3) znaczny spadek dokładności dla 128klas, w przypadku wykorzystania rdzeni może być wynikiem nieszczęśliwego wylosowaniapunktu startowego. Mimo, iż zwiększona zostaje szczegółowość informacji w klasie, to ilość

5 http://www.cis.upenn.edu/datamining/software dist/PennAspect

Page 29: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

4. Probabilistic Latent Semantic Analysis 29

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 20 40 60 80 100 120 140

Odp

owie

dz

Ilosc klas ukrytych

Srednia odpowiedz przez PLSA

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 4.2: Średnia odpowiedź na zapytanie w metodzie PLSA.

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0 20 40 60 80 100 120 140

Dok

ladn

osc

Ilosc klas ukrytych

Srednia dokladnosc PLSA

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 4.3: Średnia dokładność odpowiedzi na zapytanie w metodzie PLSA.

Page 30: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

4. Probabilistic Latent Semantic Analysis 30

dokumentów interesujących z punktu widzenia aktualnie przeglądanego w zbiorze zwraca-nym maleje. Wynik ten można interpretować jako powstanie innych, bardziej szczegółowychgrup, których podstawą może być większe podobieństwo wyrazowe a nie semantyczne.

Page 31: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

5. WEBSOM

WebSOM jest próbą stworzenia systemu wyszukującego informacje bazującego na idei siecineuronowych, a dokładniej na mapach samoorganizujących się. Głównym zadaniem metodyWebSOM jest rzutowanie przykładów (wektorów) o wysokiej liczbie wymiarów na dwuwymiarową mapę, w taki sposób aby elementy wejściowe znajdujące się obok siebie1 pozrzutowaniu w dalszym ciągu znalazły się obok siebie. Główną zaletą tego algorytmu jestfakt, że bardzo łatwo jest go przedstawić na płaszczyźnie. Dzięki temu uzyskuje się łatwośćw prezentowaniu modelu na powierzchniach.

5.1 Samoorganizująca się sieć Kohonena

Rys. 5.1: Graficzna reprezentacja sieci Kohonena.

SOM (Self-organizing map) prof. T. Kohonena jest siecią uczącą się bez nadzoru2. Siećskłada się z dwóch warstw. Warstwa pierwsza nazwana jest warstwą wejściową, warstwadruga nazywana jest warstwą wyjściową. Każdy neuron z warstwy wejściowej jest połą-czony z każdym neuronem warstwy wyjściowej. Neurony warstwy wejściowej zawierającposzczególne elementy wektora przykładowego. Wagi dochodzące do każdego neuronu war-stwy wyjściowej określają wektor wyjściowy dla tego neuronu. Wizualizację tej koncepcjiprzedstawia rysunek 5.1, na dole znajduje się warstwa wejściowa, a powyżej warstwa wyj-ściowa. Na dole znajdują się neurony odpowiadające za elementy wejściowe, natomiast nagórze znajduje się powierzchnia mapy.Uczenie sieci odbywa się poprzez wielokrotne pokazywanie przykładów (wektorów wej-

ściowych) i modyfikację wag neuronów wyjściowych. W zależności od przyjętej strategii1 w wybranej metryce2 istnieją również modele SOM wykorzystujące metodę uczenia z nadzorem

Page 32: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

5. WebSOM 32

modyfikowany może być tylko jeden wektor lub pewna grupa neuronów. Stochastyczny al-gorytm SOM[12] przeprowadza proces regresji, neurony wyjściowe (a dokładniej ich wagi)można inicjalizować wartościami losowymi. Chociaż w praktycznych stosuje się bardziej wy-rafinowane metody, jak na przykład inicjalizację elementami znajdującymi się wzdłuż dwuwymiarowej podprzestrzeni opisanej przez dwa główne wektory własne macierzy danychwejściowych.Metodyka zmian wag neuronów wyjściowych nazywa się strategią. Dla SOM dwie pod-

stawowe strategie to:

WTA - Winner Takes All Zwycięzca bierze wszystko. Po przedstawieniu sieci wektora wej-ściowego, neuron najbardziej podobny do elementu prezentowanego (którego wagi sąnajbardziej podobne składowym wektora wejściowego) zostaje zmodyfikowany zgod-nie z funkcją f tak aby jego wagi były jak najbardziej zbliżone do wektora wejścio-wego.

WTM - Winner Takes Most Zwycięzca bierze najwięcej. W tej strategii nie tylko neuronnajbardziej podobny, ale także jego otoczenie zostają zmodyfikowane. Najczęściej tamodyfikacja (f) jest zależna od odległości3 sąsiada od zwycięzcy.

Jak widaćWTA jest pewną odmianąWTM, gdzie sąsiedzi, którzy są modyfikowani musząznajdować się w odległości 0 od zwycięzcy.Innym sposobem spojrzenia na sieć jest opis, za pomocą przykładu, przedstawiony przez

Honkela[12] i Lagus[21]:Załóżmy że naszym celem jest przedstawienie zbioru kolorów w postaci RGB, na dwu

wymiarowej tablicy4. W ogólności może to być dowolny zbiór wektorów X = x : x ∈ Rn.

Każdy z elementów tablicy posiada wektor modelowy mi ∈ Rn, gdzie i oznacza element

tablicy.Dowolny element ze zbioru wejściowego jest rzutowany na pozycję i mapy, jeżeli mi

jest najbardziej podobny do aktualnego wzorca x w pewnej obranej metryce. Osiągnięciesamo-organizacji uzyskuje się przez powtarzanie się następujących kroków:

1. Każdy z elementów x ∈ X jest porównywany z każdym elementem tablicy. Wybranyzostaje element mający najbardziej podobny mi do x. Ten element nazywany jestzwycięzcą.

2. Wektor modelowy (i wektory modelowe sąsiadów jeżeli została obrana strategiaWTM)zostają zmodyfikowane zgodnie ze wspomnianą już wcześniej funkcją f .

Uczenie SOM polega na tym, że dla każdego wektora wejściowego zwycięzca oraz jegosąsiedzi (ściślej ich wektory modelowe) są modyfikowane tak aby były one bardziej podobnewektorowi prezentowanemu. W czasie fazy uczenia pojedyncze zmiany mogą być sprzeczne,ale całkowitym wynikiem procesu powinny być elementy poukładane na mapie.

3 zgodnie z przyjętą uprzednio miarą odległości pomiędzy neuronami4 Przykład o tyle dobry że przechodzimy z przestrzeni trójwymiarowej do dwu wymiarowej więc łatwopoddaje się on wizualizacji.

Page 33: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

5. WebSOM 33

Rys. 5.2: Inicjalizacja warstwy wyjścia dla WebSOM

5.1.1 Funkcja uczenia

Mając próbkę x ze zbioru uczącego X w danym kroku t fazy uczenia znajdujemy elementmapy najbardziej zbliżony do wektora prezentowanego c(x):

c(x) = arg mini||x − mi||. (5.1)

Po znalezieniu tego elementu, zwycięzca i jego sąsiedzi modyfikowani są za pomocą wzoru:

mi(t + 1) = mi(t) + hc(x),i(t)[x(t) − mi(t)], (5.2)

gdzie hc(x),i jest funkcją sąsiedztwa i działa wygładzająco na elementy siatki znajdującew okolicy zwycięzcy. Funkcja sąsiedztwa jest brana jako funkcja rozkładu gaussowskiego:

hc(x),i = α(t) exp

(

−||ri − rc(x)||2

2σ2(t)

)

(5.3)

gdzie 0 < α(t) < 1 i opisywana jest jako prędkość uczenia. Z założenia α(t) jest funkcją nierosnącą.Rys. 5.2 Przedstawia losowo zainicjalizowaną mapę. Elementy sieci ( wagi krawędzi do-

chodzących do neuronów warstwy wyjściowej) nie wykazują żadnej (wizualnie odbieranej)struktury. Neurony przedstawiają odpowiadające im wartości kolorów w modelu RGB. Rys.5.3 pokazuje tę samą mapę po pierwszej iteracji. Jak widać elementy o dużych wartościach(jaśniejsze) zostały zgrupowane wzdłuż krawędzi, a pola o małej wartości znajdują się poprawej stronie.

Page 34: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

5. WebSOM 34

Rys. 5.3: Po pierwszej iteracji element

5.2 SOM na potrzeby dokumentów tekstowych

Mechanizm samo organizacji jest możliwy do zastosowania w przypadku dokumentów tek-stowych. Reprezentacja wektorowa nadaje się do bezpośredniego zastosowania jako elemen-ty wejściowe dla mapy. Stworzona w ten sposób mapa posiada znacząco dłuższy wektormodelowy (o dwa, trzy rzędy wielkości), niż ilość elementów mapy czy ilość przykładów.Głównym kosztem podczas tworzenia mapy jest więc porównanie wektorów.W przypadku dużego zbioru dokumentów (takim jakim jest WWW) następuje przesu-

nięcie głównego kosztu obliczeń na ilość przejrzanych elementów podczas jednego kroku.W takim przypadku długość wektora modelowego (i wektorów przykładowych) może wy-nosić pół miliona i więcej, a ilość dokumentów (przykładów) wynosić będzie parę milionów.W takich przypadkach czyszczenie danych oraz algorytmy równoległe i optymalizacyjne sąwskazane.Na potrzeby Internetu tworzenie map może być robione przyrostowo wraz z powięk-

szającą się ilością przejrzanych stron. Jednak ważne jest aby pierwsze przykłady były jaknajbardziej zróżnicowane, inaczej osiągnięcie stanu stabilnego znacznie może się wydłużyć.

5.3 Modyfikacje: Batch Map

Modyfikacja SOM opisana przez Kohonena w [17] zakłada modyfikacje wektorów modelo-wych dopiero po analizie pewnej liczby elementów. Algorytm ten jest w swej idei podobnydo algorytmu grupującego K-means i nosi nazwę Batch Map. Algorytm ten zakłada dostęp-ność wszystkich przykładów przed uruchomieniem. Warunek ten w przypadku modelowaniamapy dokumentów off-line nie jest ograniczeniem.Ogólnie algorytm zbudowany jest z następujących kroków:

Page 35: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

5. WebSOM 35

1. Jako wektory modelowe należy przyjąć K wektorów przykładowych, gdzie K jestilością wektorów modelowych (ilością węzłów mapy).

2. Dla każdego elementu mapy i przypisać te wektory ze zbioru przykładów, które znaj-dują się w sąsiedztwie Ni elementu i.

3. Ustawić wektor modelowy elementu mapy jako średnią ze zbioru elementów przypi-sanych do tego elementu.

4. Powtórzyć kroki 2 i 3.

Algorytm ten minimalizuje w znacznym stopniu ilość modyfikacji wektorów modelowychposzczególnych elementów. Oznacza to, że zamiast modyfikacji ok. r2 (gdzie r oznaczapromień sąsiedztwa) elementów mapy dla każdego wektora przykładowego, wykonuje siętych modyfikacji n × m × r2 (gdzie n,m oznacza wymiar mapy) przy odpowiednio dużejilości przykładów otrzymuje się znaczące oszczędności obliczeniowe[17].Kohonen [17] wskazuje na zależność tego algorytmu od wartości początkowych. Mecha-

nizm ten powinien dawać dobre rezultaty przy pewnym wstępnym przesortowaniu (nieko-niecznie generującym porządek całkowity). Rozkład tych elementów początkowych nie musiwcale być rozkładem równomiernym nad przykładami, ponieważ modyfikacje podczas ko-lejnych iteracji doprowadzą do przesunięcia centroidów. Ponieważ algorytm Batch Map niezawiera parametru warunkującego prędkości uczenia, to nie powstają problemy ze zbież-nością, a dodatkowo zwraca on stabilniejsze wartości asymptotyczne dla poszczególnychelementów mapy niż oryginalny algorytm samoorganizującej się mapy.Promień sąsiedztwa, opisany w algorytmie jest odpowiednikiem promienia sąsiedztwa

w oryginalnym algorytmie. Zmniejszanie sąsiedztwa oznacza zmniejszanie promienia w kro-kach 2 i 3. Pod koniec tworzenia mapy sąsiedztwo Ni może zawierać tylko element i. Takipromień oznacza, że Batch Map zachowuje się jak standardowy algorytm K-means. K-means gwarantuje najbardziej dokładne oszacowanie funkcji gęstości wektorów przykładowych[17].Model Batch Map odpowiednio zastosowany do tworzenia map dokumentów nie po-

woduje znaczącej utraty jakości przy znacznym przyspieszeniu obliczeń [12, 21]. Należyrównież zaznaczyć, że algorytm ten, w sposób oczywisty, jest podatny zrównoleglenie. Kil-kanaście iteracji algorytmu Batch Map daje zadowalające wyniki.

5.4 Wyniki eksperymentalne

Algorytm SOM przyjęto badać na mapach kwadratowych lub heksagonalnych. W tej imple-mentacji przyjęto, kwadratowy kształt mapy. Oznacza to że ilość klas musiała zostać lekkozmodyfikowana. Do badań przyjęto następujące ilości klas: 4, 9, 16, 36, 64, 144. Odpowia-dają one wartości d√xe2, gdzie x oznacza ilość klas przyjętych w metodzie PLSA i LSA,za wyjątkiem dwóch klas. Dane testowano ustawiając współczynnik α(t) ze wzoru (5.3) zapomocą wzoru α(t) = 0.99 ∗ (0.92t), gdzie t oznacza krok iteracji. Dla każdego pomiaruwykonywano 100 iteracji. Po przeprowadzeniu badań, dało się zauważyć, iż algorytm tennie rozkłada równomiernie obciążenie. Istnieją neurony bez przypisanych wektorów przy-kładowych, oraz takie które grupują duże ilości przykładów.

Page 36: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

5. WebSOM 36

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 20 40 60 80 100 120 140 160

Odp

owie

dz

Ilosc klas

Srednia odpowiedz WebSOM

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 5.4: Średnia odpowiedź na zapytanie w metodzie WebSOM.

Wynik końcowy jest efektem znalezienia, dla każdego dokumentu, węzła sieci, którybył najbliższy temu dokumentowi. Każdy neuron wyjściowy sieci oznaczał jedną klasę. Do-kument porównywano z każdym wektorem modelowym sieci. Następnie przypisywano tęklasę, dla której odległość pomiędzy reprezentacją tegoż dokumentu, a wektorem modelo-wym była najmniejsza.

5.4.1 Odpowiedź

Wykres 5.4 wskazuje ciekawe mechanizmy modelu sieci samoorganizujących się. Wraz zewzrostem klas dla mechanizmom sieci neuronowej udało się zwiększyć ilość dokumentówpodobnych w klasie. Uwagę zwraca również zwiększający się odstęp pomiędzy wynikamidla słów, a wynikami dla rdzeni.

5.4.2 Dokładność

Wykres 5.5 pokazuje jak WebSOM radzi sobie z grupowaniem podobnych dokumentów.Średnia dokładność wyniku wynosi od 2% do niecałych 20%. Zwiększenie poprawnościwyniku wszystkich słów dla 36 klas należy uznać raczej za przypadkową, spowodowanądobrą inicjalizacją wektorów modelowych.

5.5 Podsumowanie

Model SOM i jego modyfikacje i rozszerzenia są stosowane w wielu dziedzinach. Wspól-ną cechą zastosowań jest potrzeba klasyfikacji/grupowania elementów. Model SOM został

Page 37: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

5. WebSOM 37

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0 20 40 60 80 100 120 140 160

Dok

ladn

osc

Ilosc klas

Srednia dokladnosc WebSOM

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 5.5: Średnia dokładność odpowiedzi na zapytanie w metodzie WebSOM.

wykorzystany w takich dziedzinach jak Analiza wizualna, dźwiękowa, telekomunikacja, ro-botyka, chemia, fizyka, data mining i inne.Ogromną zaletą algorytmu SOM jest możliwość prezentacji wyników graficznie. Pozwa-

la to użytkownikowi na pokazanie ogólnego podziału elementów, a następnie przez wybórregionu uszczegóławianie wyników. Problem prezentacji i interakcji z użytkownikiem jestkrytyczny względem użycia mechanizmu SOM na potrzeby wyszukiwania informacji w sie-ciach globalnych takich jak WWW.

Page 38: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

6. PROBABILISTIC HYPERTEXT INDUCED TOPIC SELECTION

Probabilistic Hypertext Induced Topic Selection (PHITS - Probabilistyczny wybór tema-tów w zbiorach hipertekstowych), jest inną próbą podejścia do problemu wyboru najbar-dziej trafnych (interesujących dla użytkownika) informacji. Algorytm PHITS łączy w sobiezadania klasteryzacji i ważenia dokumentów. Podejście PHITS opiera się na wykorzystaniuinnej cechy dokumentów tekstowych: odwołań.W modelu tym zakłada się, że każdy lub prawie każdy dokument odwołuje się do innych

dokumentów. Dzięki śledzeniu takich powiązań, można wyróżnić dokumenty najczęściej cy-towane, czy też dokumenty będące w centrum grupy połączeń. Oznacza to, że te dokumentysą wzorcowe dla grupy, więc powinny być pokazane najpierw użytkownikowi.Idea PHITS wywodzi się z połączenia dwóch źródeł: algorytmu HITS i algorytmu PLSA

(rozdział 4).

6.1 HITS

Jednym z pierwszych algorytmów uwzględniających odwołania był algorytm przedstawionyprzez Kleinberg’a[16] o nazwie Hypertext Induced Topic Selection (w skrócie HITS).Algorytm HITS zakłada, że dokumenty w zbiorze są ze sobą nawzajem połączone, two-

rząc pewnego rodzaju graf skierowany. W grafie tym węzłami są dokumenty, a krawędziamiodnośniki. Krawędzie są skierowane w taki sposób, aby wskazywały na element cytowany,a wychodziły z elementu cytującego. Same założenia modelu wskazują na naturalne wyko-rzystanie go w zastosowaniach WWW, mimo to należy zaznaczyć iż nie jest on, w ogólności,przygotowany do modelowania tylko dokumentów znajdujących się w Internecie. Jednakimplementacja zaproponowana w [16] jest dostosowana do potrzeb języka HTML i Inter-netu.Algorytm HITS opiera się na dwóch ideach: autorytetu (ang. authority) i koncentratora

(ang. hub). Dokumentem autorytatywnym (autorytetem) jest taki dokument, na któregowskazuje wiele dokumentów (wiele dokumentów cytuje ten dokument). Koncentratoremjest dokument, który wskazuje na wiele autorytetów (dokument cytuje wiele ważnych do-kumentów).Algorytm ten startuje mając dany na wejściu pewien graf skierowany zwany korzeniem

Sδ. W przypadku Internetu może to być graf otrzymany ze zbioru stron będących odpowie-dzią wyszukiwarki tekstowej. Następnie graf ten jest rozszerzany przez dodawanie kolejnychwęzłów wskazanych przez węzły, już znajdujące się w grafie. Otrzymany graf Gδ z dużymprawdopodobieństwem zawiera większość autorytetów oraz dużą ilość koncentratorów.Dzięki takiemu postępowaniu, można otrzymać już pewne przybliżenie autorytetów

i koncentratorów, przez analizę stopni węzłów (zarówno krawędzi wchodzących i wycho-dzących). Można przyjąć, że autorytetami są dokumenty posiadające największe stopnie

Page 39: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

6. Probabilistic Hypertext Induced Topic Selection 39

dla krawędzi wchodzących (δin), a koncentratorami elementy posiadające największe stop-nie dla krawędzi wychodzących (δout). Przypisując jednak w ten sposób dokumenty możnanatrafić na pewne problemy związane z niejednoznacznością słowa. Dobrym przykładem te-go problemu może być słowo java. W zależności od kontekstu może ono oznaczać zarównokawę, wyspę, lub język programowania.W celu wyróżnienia znaczenia głównego jest uruchamiana iteracyjna funkcja, dla które-

go wejściem jest otrzymany graf Gδ. Celem tej funkcji jest wzmocnienie powiązań pomiędzyautorytetami a koncentratorami. Zasady i mechanizmy tej funkcji są opisane w [16]. Od-wołując się do algebry liniowej można powiedzieć, że HITS znajduje największy wektorwłasny macierzy MT M . Macierz M to reprezentacja macierzowa grafu Gδ, innymi słowyelement niezerowy Mij macierzy M wskazuje, że dokument i cytuje dokument j.Algorytm HITS w swej podstawowej formie odrzuca pozostałe wektory własne co powo-

duje utratę znaczeń. Można wykorzystać pozostałe wektory własne stosując analizę głów-nych składowych (ang. Principal Component Analysis - PCA).Analizę głównych składowych ma następujące właściwości 1:

• znajduje ortonormalną bazę dla danych,

• baza rozpięta jest na wektorach własnych macierzy kowariancji,

• wektory odpowiadające wartościom własnym (Principal Components) pokazują kie-runki maksymalnej współzmienności,

• wydziela ortogonalne komponenty najlepiej wyjaśniające współzmienność danych,

• opiera się na statystykach 2-go rzędu (kowariancji)

6.2 Grupy ukryte

Algorytm HITS jak i jego modyfikacja korzystająca z PCA zakładają, iż dane wejściowemają na prawdziwe dane nałożony szum Gaussowski. To założenie nie najlepiej sprawdzasię w przypadku dokumentów tekstowych, zarówno w przypadku analizy samych wyrazów,jak i analizy odwołań. W związku z tym opracowano algorytm, który nie korzystał z tegozałożenia. Algorytm ten nazwano PHITS. Z matematycznego punktu widzenia algorytmPHITS jest bardzo podobny do algorytmu PLSA opisanego w rozdziale 4.Model PHITS próbuje wskazać ukryte zmienne wiążące dokumenty i odnośniki. W przy-

padku dokumentów, takie zmienne odpowiadają pewnym grupom tematycznym.Matematycznie model PHITS można przedstawić w sposób podobny do tego w jaki

sposób został przedstawiony model PLSA. Dokument d ∈ D jest generowany z prawdo-podobieństwem P (d). Temat (zmienna ukryta) z ∈ Z związana z d jest wybrana zgodniez prawdopodobieństwem P (z|d). Mając zmienną z odnośnik c ∈ C jest generowany z praw-dopodobieństwem P (c|z). W praktyce C i D odnoszą się do dokumentów w zbiorze i zbioryte mogą być identyczne. W przeciwieństwie do podejścia zawartego w PLSA gdzie zbioryD i W znacznie się od siebie różniły.

1 Ze slajdów Rafała Księżyka http://www.fuw.edu.pl/ ksiezyk/semin ica/ppframe.htm

Page 40: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

6. Probabilistic Hypertext Induced Topic Selection 40

Mając zbiór par dokument-odnośnik (d, c), podobieństwo każdej pary w aspektowymmodelu asymetrycznym można opisać jako:

P (d, c) = P (d)P (c|d), gdzie (6.1)

P (c|d) =∑

z

P (c|z)P (z|d).,

Całkowita funkcja podobieństwa L dla macierzy obserwacji M wynosi

L(M) =∏

(d,c)∈M

P (d, c) (6.2)

6.2.1 Model mieszany a model członowy

Ważną różnicą pomiędzy modelami wykorzystującymi mieszaniny takimi jak LSA czyHITS, a modelami członowymi (ang. factor models) jest fakt, że w modelach mieszanychkażdy element należy tylko i wyłącznie do jednej grupy zdefiniowanej przez zmienną ukrytą.Model mieszany może wskazywać na kilka źródeł z powodu niejednoznaczności, ale zakładaże tylko jeden jest prawdziwy. Natomiast PLSA czy PHITS zakładają, że dokument możenależeć do jednej, dwóch lub więcej grup.

6.2.2 Poszukiwanie najlepszej instancji modelu

Wzorując się na PLSA i korzystając ze wzoru Bayesa wzór 6.1, można zapisać jako

P (d, c) =∑

z

P (z)P (c|z)P (d|z) (6.3)

co jest bezpośrednim odwzorowaniem wzoru 4.11.W celu znalezienia najlepszego dopasowania wykorzystuje się algorytm EM. W tym

przypadku wzory dla kroków E i M przedstawiają się następująco: Krok E :

P (z|d, c) =P (z)P (d|z)P (c|z)

z′∈Z P (z′)P (d|z′)P (c|z′) (6.4)

oraz krok M opisany jest przez:

P (c|z) =

d P (z|d, c)∑

d,c′ P (z|d, c′), (6.5)

P (d|z) =

c P (z|d, c)∑

d′,c P (z|d′, c), (6.6)

P (z) =

d,c P (z|d, c)∑

z′

d,c P (z′|d, c). (6.7)

Algorytm EM będzie minimalizował funkcję całkowitego podobieństwa L.W modelu tym można również skorzystać z algorytmu wspomagającego osiągnięcie

minimum globalnego korzystając z funkcji wyżarzania:

P (z|d, c) =[P (z)P (d|z)P (c|z)]β

z′∈Z [P (z′)P (d|z′)P (c|z′)]β (6.8)

Page 41: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

6. Probabilistic Hypertext Induced Topic Selection 41

0.75

0.8

0.85

0.9

0.95

1

0 20 40 60 80 100 120 140

Odp

owie

dz

Ilosc klas ukrytych

Srednia odpowiedz przez PHITS

bez zaburzenzaburzenie 2%zaburzenie 5%

zaburzenie 10%

Rys. 6.1: Średnia odpowiedź na zapytanie w metodzie PHITS.

6.3 Wyniki eksperymentalne

Algorytm PHITS bierze pod uwagę strukturę grafu odnośników. Dla danych na którychbadano poprzednie algorytmy przyjęto następujące założenie: dokumenty będące w tej sa-mej grupie zawierają odnośniki do wszystkich dokumentów znajdujących się w tej grupie.Powstał w ten sposób graf niespójny. W grupach powstawały natomiast grafy pełne. Od-wzorowywał on dokładnie zależności pomiędzy dokumentami. Nie symulowało to jednakwarunków rzeczywistych zdecydowano się więc na losowe zaburzenie grafu. Dokonano tegoprzez usunięcie 2, 5 i 10% krawędzi, a następnie losowe dodanie takiej samej ilości.W badaniach wykorzystano tą samą implementację, jaką wykonano badania dla metody

PLSA (rozdz. 4). Dla każdej pary dokument - klasa jest przypisane prawdopodbieństwoz jakim dokument znajduje się w danej klasie. Przyjęto, że dokument należy do tej klasydla której ma on największe prawdopodbieństwo.

6.3.1 Odpowiedź

Zgodnie z przewidywaniami dla grafu „dokładnego” wyniki są bardzo dobre, w prakty-ce oznaczające wyniki znacznie lepiej przystosowane do kryteriów badania, niż metodyopierające się wyłącznie na informacji zebranej z analizy słów. Zaburzenie grafu wykazuje

Page 42: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

6. Probabilistic Hypertext Induced Topic Selection 42

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1.1

0 20 40 60 80 100 120 140

Dok

ladn

osc

Ilosc klas ukrytych

Srednia dokladnosc PHITS

bez zaburzenzaburzenie 2%zaburzenie 5%

zaburzenie 10%

Rys. 6.2: Średnia dokładność odpowiedzi na zapytanie w metodzie PHITS.

wbrew oczekiwaniom poprawę wydajności systemu wraz ze wzrostem ilości klas. Mimo,iż z przekroczeniem, zdefiniowanej przez ekspertów, ilości klas dokumentów, jakość od-powiedzi znacznie maleje. Jednak w dalszym ciągu prezentuje wyniki znacznie lepsze niżpoprzednie metody.

6.3.2 Dokładność

Wyniki pomiaru dokładności odpowiedzi systemu są praktycznie niezależnie od zaburzeń(przynajmniej na poziomie badanych zaburzeń). Wysoka odporność na zaburzenia grafujest cechą wysoce pożądaną w systemach wspomagających wyszukiwanie i nawigację doku-mentów, w szczególności w zastosowaniach związanych z Internetem. Internet jest zbioremgdzie nie można założyć dobrej jakości poszczególnych odnośników, co znacząco mogłobywpływać na jakość wyników.

6.3.3 Inne

Również model PHITS (w odniesieniu od modelu PLSA )rozkłada dokumenty równomierniepomiędzy klasami. Istnieją klasy do których nie przydzielono, żadnych dokumentów, aleich ilość jest pomijalna. Nie można także wyróżnić preferencji względem, dowolnej z klas.Preferencja taka ujawniła się w modelu LSA (rozdz. 3), gdzie preferowane były klasy, któremiały jak największą odpowiadającą im wartość własną.Jak widać z prezentowanego wykresu (rys. 6.3) zaburzenie grafu, tylko w minimalnym

stopniu pogorszyło wyniki. Tak nieznaczny spadek może być spowodowany w dużej mierzezachowaniem poprawnej struktury, gdzie znajdowały się podgrafy pełne.

Page 43: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

6. Probabilistic Hypertext Induced Topic Selection 43

0

5

10

15

20

0 20 40 60 80 100 120 140

Ilosc

dok

umen

tow

Numer klasy

Rozklad dokumentow w klasach w metodzie PHITS

odnosniki

Rys. 6.3: Grupowanie dokumentów dla 128 klas w metodzie PHITS.

Pewne problemy z wykorzystaniem cytowań naświetla artykuł [27]. Artykuł odnosi siędo prac naukowych, ale prawdopodbnie te same problemy można napotkać przy pracy zodnośnikami w Internecie.

Page 44: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PAGERANK

PageRank zaprezentowany w [2] jest metodą sortowania stron zaproponowaną przez S.Brin’a i L. Page’a. HITS (rozdz. 6.1), PHITS (rozdz. 6) i PageRank należą do tej samejgrupy metod wykorzystywanych w badaniach bibliometrycznych. Wszystkie trzy metodywychodzą z założenia, iż dokumenty nie są samodzielnymi bytami, ale są powiązane zapomocą odnośników. Tę cechę można przedstawić za pomocą grafu.

7.1 Algorytm

PageRank jest metodą iteracyjną (jak PHITS, PLSA, WebSom), ale w przeciwieństwie domodelów aspektowych (rozdz. 4 i 6) nie zakłada statystycznej zależności pomiędzy zmien-nymi. W odniesieniu do algorytmu opisywanego w tym rozdziale zmiennymi są dokumentyi wskazania (odnośniki).W podstawowym ujęciu PageRank(PR) jest opisywany w [2] w następujący sposób:

Załóżmy, że strona A posiada T1 . . . Tn stron wskazujących na nią. To znaczyT1 . . . Tn posiada odwołania do A. Parametr c ∈ [0 . . . 1] jest tak zwanym współ-czynnikiem tłumiącym. Standardowo za c przyjmuje się wartość 0.85. C(A)zdefiniowano jako liczbę wskaźników wychodzących ze strony A (ilość odno-śników jakie posiada strona A). Wartość PageRank strony A jest zdefiniowananastępująco:

PR(A) = (1 − c) + c

(

PR(T1)

C(T1)+ · · · + PR(Tn)

C(Tn)

)

(7.1)

Należy zauważyć, że wartości PageRank tworzą rozkład prawdopodobieństwanad wszystkimi dokumentami, to oznacza że suma wszystkich wartości wynosi1.

Intuicyjnie PageRank można potraktować jako model zachowania użytkownika. Niech„losowy przeglądacz” dokumentów zacznie od losowego dokumentu i przechodzi od doku-mentu do dokumentu. Warunkiem wyboru kolejnego dokumentu jest fakt że musi się onznajdować się na liście odnośników dokumentu, który jest aktualnie przeglądany. Zakładasię, że użytkownik nigdy się „nie wycofuje”1 ze swoich decyzji, ale czasami potrafi się znudzići wtedy wybiera całkowicie losowy dokument. PageRank dokumentu oznacza prawdopodo-bieństwo, że „losowy przeglądacz” obejrzy właśnie ten dokument. Współczynnik tłumiącyc wskazuje na prawdopodobieństwo znudzenia się przez „przeglądacza” i odejścia do innegodokumentu.1W przeglądarce internetowej nie wciska guzika „Wstecz”

Page 45: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 45

Innym wytłumaczeniem dlaczego strona A ma wysoki wskaźnik PageRank jest fakt,że wiele innych stron wskazuje na tą właśnie stronę, lub istnieją strony, które wskazującena A, a same mają wysoki PageRank. Zasadniczo, strony które mają wskazania z różnychczęści sieci, są najprawdopodobniej warte polecenia. Również strony które posiadają małoodwołań, ale za to z takich stron jak główna strona Yahoo! również są warte spojrzenia nataki dokument. Jeżeli nie byłaby to strona warta oglądania istnieje duże prawdopodobień-stwo, że Yahoo! nie wskazywałoby na nią. PageRank modeluje obydwa typy zachowań orazzachowania przejściowe pomiędzy tymi krańcowymi wariantami.

7.2 Opis matematyczny

Szczegółowy opis matematyczny metody PageRank przedstawiono w [15].Niech będzie dany skierowany graf G. Niech u → v oznacza istnienie krawędzi od

u do v w G. Niech deg(u) będzie stopniem węzła u dla krawędzi wychodzących. Niechlosowy użytkownik przegląda dokument u w przedziale czasowym k. W następnym kroku,użytkownik wybierze węzeł vi z pomiędzy „wychodzących” sąsiadów u (v|u → v). Innymisłowy użytkownik, w kroku k+1 znajduje się w węźle vi ∈ v|u → v z prawdopodobieństwem

1deg(u).Wartość PageRank dokumentu i jest zdefiniowana jako prawdopodobieństwo, że w do-

wolnym kroku k > K, użytkownik przegląda ten właśnie dokument. Dla wystarczającodużego K i małych modyfikacji względem losowych ruchów użytkownika, prawdopodobień-stwo to jest unikalne. Wynika to z procesów stochastycznych, które PageRank modeluje.Niech istnieje łańcuch Markowa indukowany przez losowe chodzenie po grafie G. Stany

w łańcuchu opisują węzły G. Stochastyczna macierz przejść P od j do i niech będzie opisa-na jako Pji = 1

deg(j). Niech M = P T . To znaczy rozkład prawdopodobieństwa dla przejścia

użytkownika z węzła i jest opisany jako kolumna i. Żeby M była poprawną macierzą prze-jeść, każdy węzeł musi mieć co najmniej jedno przejście. Ten warunek nie jest spełnionyjeżeli istnieje węzeł w grafie G nie mający żadnych krawędzi wychodzących. Taki przypadekczęsto zdarza się w sieci WWW. Warunek poprawności można spełnić przez dodanie peł-nego zestawu krawędzi wychodzących do takich węzłów, rozkładając prawdopodobieństworównomiernie, tworząc w ten sposób macierz M ′. Sprowadzenie do poprawnej macierzyodbywa się następująco:Stwórzmy wektor kolumnowy −→p

−→p =

[

1

n

]

n×1

. (7.2)

Niech−→d będzie n wymiarowym wektorem identyfikującym węzły o stopniu wyjściowym 0:

di =

1 jeżeli deg(i) = 0,0 w przeciwnym przypadku

(7.3)

Macierz M ′ uzyskuje się przez:

D = −→p ×−→d

T

(7.4)

M ′ = M + D (7.5)

Page 46: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 46

Dzięki takiej modyfikacji w momencie natrafienia przez użytkownika na dokument nie po-siadający węzłów wychodzących, przechodzi on do losowo wybranej strony.Istnieje twierdzenie mówiące, że łańcuch Markowa zdefiniowany przez M ′ posiada uni-

kalny rozkład, jeżeli M ′ jest aperiodyczna i nie jest możliwa redukcja. Pierwsza własnośćjest spełniona, druga własność jest spełniona gdy graf G jest prawie grafem pełnym. W celuzapewnienia drugiej własności dla każdego węzła grafu G dopisuje się pełny zestaw kra-wędzi wychodzących z wagami będącymi małym prawdopodobieństwem, tworząc w tensposób graf pełny. W notacji macierzowej nieredukowalną macierz Markowa tworzy sięnastępująco:

E = −→p × [1]1×n =

[

1

n

]

n×n

jeżeli −→p jest rozkładem równomiernym (7.6)

A = cM ′ + (1 − c)E (7.7)

Macierz E działa jako mechanizm „znudzenia” użytkownika, o którym była mowa wcześniej.Dzięki przedefiniowaniu wektora −→p (7.2) na wektor z nierównomiernym rozkładem

można wpłynąć na wybór dokonywany przez „losowego” użytkownika, pozwalając na stwo-rzenie inklinacji w stronę niektórych dokumentów. Z tego powodu wektor −→p oznacza sięmianem wektora personalizacji. Więcej na ten temat znajduje się w [24] i w [25].Zakładając, że rozkład prawdopodobieństwa dla aktualnej pozycji użytkownika o czasie

0 opisuje wektor −→x (0), to rozkład prawdopodobieństwa dla pozycji użytkownika w krokuk jest dany jako −→x (k) = Ak−→x (0). Dla k → ∞, otrzymujemy główny wektor własny ma-cierzy Markowa A, który jest dokładnie wartością PageRank i jest niezależny od wektorapoczątkowego −→x (0).

7.3 Obliczanie PageRank i jego modyfikacje

7.3.1 Podstawowy algorytm

Najprostszym i najbardziej oczywistą metodą policzenia wektora wartości PageRank jestwielokrotne policzenie wektora −→x (k+1) = A−→x (k), do momentu kiedy następuje zbieżność.W wersji podstawowej iteracyjny algorytm wygląda następująco:

1. −→x (0) = −→p ;

2. −→x (k+1) = A−→x (k);

3. δ = ‖−→x (k+1) −−→x (k)‖1;

4. Powtarzaj krok 2. i 3. dopóki δ > ε.

Załóżmy, że −→x (0) znajduje się w podprzestrzeni opisanej wektorami własnymi A. Z tegowynika, że można opisać −→x (0) za pomocą liniowej kombinacji wektorów własnych A:

−→x (0) = −→u1 + α2−→u2 + · · · + αm

−→um. (7.8)

Ponieważ, pierwszą wartością własną macierzy Markowa jest λ1 = 1, to:

−→x (1) = A−→x (0) = −→u1 + α2λ2−→u2 + · · · + αmλm

−→um, (7.9)

Page 47: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 47

oraz kolejne:−→x (k) = Ak−→x (0) = −→u1 + α2λ

k2−→u2 + · · · + αmλk

m−→um. (7.10)

Ponieważ λk ≤ . . . λ2 < 1, A(k)−→x (0), zbliża się do −→u1 wraz ze wzrostem k, oznacza to żepodstawowa metoda zbiega do głównego wektora własnego macierzy Markowa A.

7.3.2 Ekstrapolacja Aitken’a

Załóżmy, że aktualna iteracja −→x (k) może być przedstawiona jako liniowa kombinacja dwóchpierwszych wektorów własnych macierzy A. Dzięki temu założeniu można oszacować głównywektor własny macierzy A −→u1 wykorzystując kolejne iteracje −→x (k),−→x (k+1),−→x (k+2).Wyprowadzenie ekstrapolacji Aitken’a wygląda następująco:

−→x (k) = −→u1 + α2−→u2. (7.11)

Ponieważ, pierwszą wartością własną macierzy Markowa jest 1, kolejne dwie iteracje wy-glądają następująco:

−→x (k+1) = A−→x (k) = −→u1 + α2λ2−→u2,

−→x (k+2) = A−→x (k+1) = −→u1 + α2λ22−→u2.

Niech:

gi =(

x(k+1)i − x

(k)i

)2

, (7.12)

hi = x(k+2)i − 2x

(k+1)i + x

(k)i (7.13)

gdzie xi oznacza i-ty element wektora −→x . Przekształcając (7.12) i (7.13):

gi = α22(λ2 − 1)2(u2)

2i ,

hi = α2(λ2 − 1)2(u2)i.

Niech:

fi =gi

hi

=α2

2(λ2 − 1)2(u2)2i

α2(λ2 − 1)2(u2)i

= α2(u2)i

czyli: −→f = α2

−→u2 (7.14)

Podstawiając do wzoru (7.11) można oszacować:

−→u1 = −→x (k) − α2−→u2 = −→x (k) −−→

f . (7.15)

Ponieważ wzór bazuje na założeniu, że −→x (k) może być wyrażone jako liniowa kombinacja −→u1

i −→u2, oznacza to, że wzór (7.15) szacuje wartość −→u1. Wykorzystanie ekstrapolacji Aitken’ajest równoważne wykorzystaniu metody ∆2 Aitken’a dla przyspieszania liniowo zbieżnychciągów [15].

Page 48: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 48

7.3.3 Ekstrapolacja kwadratowa

Ekstrapolacja kwadratowa (ang. Quadratic extrapolation) jest rozszerzeniem pomysłu za-stosowanego w metodzie ekstrapolacji Aitken’a. Metoda ta zakłada że macierz A ma tylko3 wektory własne. Czyli aktualną iterację −→x (k) można uzyskać jako liniową kombinacjętrzech wektorów własnych macierzy Markowa A. Przy tym założeniu oszacowanie −→u1 moż-na uzyskać wykorzystując −→x (k),−→x (k+1),−→x (k+2),−→x (k+3).Wyprowadzenie ekstrapolacji kwadratowej znajduje się w [15] i wygląda następująco:

−→x (k) = −→u1 + α2−→u2 + α3

−→u3. (7.16)

definiując kolejne iteracje:

−→x (k+1) = A−→x (k), (7.17)−→x (k+2) = A−→x (k+1), (7.18)−→x (k+3) = A−→x (k+2). (7.19)

Przy założeniu, że A ma tylko 3 wektory własne można zdefiniować wielomian charaktery-styczny pA(λ):

pA(λ) = γ0 + γ1λ + γ2λ2 + γ3λ

3.

A jest macierzą Markowa, więc pierwsza wartość własna λ1 = 1. Ponieważ wartości własneA są również miejscami zerowymi wielomianu charakterystycznego pA(λ), to:

pA(1) = 0 ⇒ γ0 + γ1 + γ2 + γ3 = 0. (7.20)

Bazując na twierdzeniu Cayley-Hamiltona2 mówiącym o tym, że każda macierz spełnia rów-nanie swojego wielomianu charakterystycznego (pA(A) = 0). Więc dla dowolnego wektoraz ∈ R

n:pA(λ)z = 0 ⇒ [γ0I + γ1A + γ2A

2 + γ3A3]z = 0

Podstawiając z = −→x (k):

[γ0I + γ1A + γ2A2 + γ3A

3]−→x (k) = 0.

Z równań (7.17 - 7.19) otrzymujemy:

γ0−→x (k) + γ1

−→x (k+1) + γ2−→x (k+2) + γ3

−→x (k+3) = 0.

Podstawiając z równania (7.20) γ0:

(−γ1 − γ2 − γ3)−→x (k) + γ1

−→x (k+1) + γ2−→x (k+2) + γ3

−→x (k+3) = 0.

i grupując:(−→x (k+1) −−→x (k)

)

γ1 +(−→x (k+2) −−→x (k)

)

γ2 +(−→x (k+3) −−→x (k)

)

γ3 = 0. (7.21)

2 http://www.cs.ut.ee/ toomas l/linalg/lin1/node19.html

Page 49: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 49

Niech:−→y (k+1) =

(−→x (k+1) −−→x (k))

,

−→y (k+2) =(−→x (k+2) −−→x (k)

)

,

−→y (k+3) =(−→x (k+3) −−→x (k)

)

.

Zapisując (7.21) w notacji macierzowej:(−→y (k+1) −→y (k+2) −→y (k+3)

)−→γ = 0.

Chcąc znaleźć nietrywialne rozwiązanie dla −→γ należy ustalić główny współczynnik w wie-lomianie pA:

γ3 = 1 (7.22)

Operacja tak jest możliwa, ponieważ powoduje ona tylko ustawienie wartości skalowaniadla −→γ , nie ma ona jednak wpływu na miejsca zerowe. Dzięki temu:

(−→y (k+1) −→y (k+2))

(

γ1

γ2

)

= −−→y (k+3).

Rozwiązując powyższe równanie:(

γ1

γ2

)

= Y +−→y (k+3) (7.23)

gdzie Y + jest pseudo odwrotnością macierzy Y =(−→y (k+1) −→y (k+2)

)

. Dzięki temu równania(7.20, 7.22, 7.23) wyznaczają wszystkie współczynniki wielomianu pA(λ).Dzieląc pA(λ) przez (λ − I) otrzymujemy wielomian qa(λ), którego miejscami zerowymi

są λ2 i λ3, czyli kolejne wartości własne macierzy A.

qA(λ) =γ0 + γ1λ + γ2λ

2 + γ3λ3

λ − I= β0 + β1λ + β2λ

2.

Rozwiązując powyższe równanie za pomocą dzielenia wielomianów:

β0 = γ1 + γ2 + γ3

β1 = γ2 + γ3

β2 = γ3

Ponownie korzystając z twierdzenia Cayley-Hamilton’a, jeżeli z ∈ Rn:

qA(λ)z = −→u1,

gdzie −→u1 jest wektorem własnym macierzy A odpowiadającym wartości własnej równej 1.Podstawiając za z = −→x (k+1):

−→u1 = qA(λ)−→x (k+1) =[

β0I + β1A + β2A2]−→x (k+1)

Z równań (7.17 - 7.19) otrzymujemy:−→u1 = β0

−→x (k+1) + β1−→x (k+2) + β2

−→x (k+3) (7.24)

Ponieważ, punktem wyjścia było założenie o istnieniu tylko 3 wektorów −→u1 otrzymanerozwiązanie w (7.24) jest tylko oszacowaniem prawdziwego −→u1.

Page 50: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 50

7.4 Modyfikacje idei algorytmu

7.4.1 Tematyczny PageRank

Punktem wyjścia dla tej modyfikacji [9](ang. Topic-Sensitive PageRank) jest utworzeniekilku wektorów początkowych −→pj . Wektory te zamiast przedstawiać rozkład jednostajny,przedstawiają rozkład, który preferuje pewne tematy. Tego typu wektor można, któregoelementy odpowiadają stronom, można dowolnie ustalać. W [9] wykorzystano 16 wekto-rów bazowych preferujące główne tematy Open Directory Project. Poszczególne wektorymiały ustawiony jednostajny rozkład na podzbiorze odnośników stron z danej kategorii.Dodatkowo obliczona została macierz temat-słowo D, której elementami były częstotliwośćwystępowania słowa w temacie. Przez temat należy rozumieć zestaw dokumentów znajdu-jących się w danej kategorii.Następnie liczy się PageRank dokumentu dla wszystkich wektorów −→pj (niech rankdj

oznacza ranking dokumentu d w temacie j). Oraz dodatkowo liczy się prawdopodobień-stwo tematu pod warunkiem zadanego zapytania. Zakładając, że q oznacza zapytanie, a q′

oznacza kontekst zapytania (słowa otaczające zapytanie, w szczególności cały dokument)to:

P (cj|q) =P (cj) · P (q′|cj)

P (q′)∝ P (cj) ·

i

P (q′i|cj) (7.25)

gdzie cj oznacza przynależność do klasy, a P (q′i|cj) można policzyć na podstawie macierzyD.Ostateczna wartość tematycznego PageRank tPR liczona w przeciwieństwie do poprzed-

nich elementów w locie definiuje się następująco:

tPR(q, d) =∑

j

P (cj|q′) · rankdj (7.26)

7.4.2 Zależny od zapytania PageRank

W [25] opisane jest inna modyfikacja. W tym modelu w przeciwieństwie do PageRank, niema założenia o równych wagach krawędzi. Wagi te są dobierane w zależności od zapytania.Modyfikacja ta nosi angielską nazwę Query-Dependent PageRank, w skrócie QDPageRank.W ogólności zmodyfikowany wzór na prawdopodobieństwo dokumentu wygląda następują-co:

Pq(j) = (1 − c)P ′q(j) + c

i∈T j

Pq(i)Pq(i, j) (7.27)

gdzie T j to zbiór dokumentów wskazujących na dokument j, P ′q(j) prawdopodobieństwo,

że użytkownik zechce zmienić stronę losowo, a Pq(i, j) prawdopodobieństwo przejścia zestrony i na stronę j pod warunkiem zapytania q.

P ′q(j) =

Rq(j)∑

k∈W Rq(k)(7.28)

Pq(i, j) =Rq(j)

k∈FiRq(k)

(7.29)

Page 51: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 51

gdzie W oznacza zbiór węzłów grafu, a Fi zbiór stron wskazywanych przez stronę i, funkcjaRq(i) odpowiada ważności dokumentu i względem zapytania q. Funkcja R może być do-wolną funkcją odpowiedniości, począwszy od prostych metod jak GfIdf (patrz rozdz. ??)do bardzo skomplikowanych jak LSA czy PLSA. Uwzględnienie wielu zapytań zapytaniaznajduje się w [25].

7.5 Wyniki eksperymentalne

W przeciwieństwie do metod poprzednich PageRank nie jest algorytmem klasteryzującym.Oznacza to, że nie można zastosować tych samych miar jakie były stosowane uprzednio(odpowiedź i dokładność). Wykorzystanie tych miar nie byłoby skutecznym miernikiem.Algorytm PageRank zwracałby dokumenty w tej samej kolejności. Zakładając, że klasęodpowiedzi dla danego dokumentu stanowi 15% najwyżej ocenionych dokumentów, to nakażde zapytanie odpowiedź byłaby identyczna. Algorytm PageRank jest nieczuły na kon-tekst.Aby uniknąć stacjonarnej odpowiedzi, należy dodatkowo zastosować wybór dokumen-

tów podobnych. Mechanizm pokazywania użytkownikowi odpowiedzi jest dwu fazowy, naj-pierw dokonuje się wyboru dokumentów, a następnie za pomocą algorytmu PageRank po-rządkuje się je tak aby strony(dokumenty) o najwyższej wartości były zaprezentowaneużytkownikowi jako pierwsze.Badania przeprowadzono nad szybkością zbieżności algorytmu PageRank, oraz wyko-

nano badania nad modyfikacją QDPageRank (patrz 7.5.1. Do mierzenia zbieżności wyko-rzystano normę L1, zdefiniowaną następująco ‖−→x ‖1 =

i |xi|.Rysunki 7.1 i 7.2 pokazują prędkość zbiegania do wektora stabilnego. Podstawowy al-

gorytm w ciągu 1000 iteracji zbiegł w najlepszym przypadku do wartości różnicy pomiędzywektorami równej niecałe 10−50. Ekstrapolacja pokazana na rysunku 7.2 wykazuje już w 60krokach zbieżność wysokości 10−90. Wykres ma charakter schodkowy, ponieważ w celuuniknięcia obciążeń związanych ze stosunkowo kosztownym liczeniem ekstrapolacji. Meto-dę Aitken’a stosowano co 10 iteracji. W przypadku wykorzystania bazy składającej się z 50milionów dokumentów, poprawa o 10 dziesięć rzędów wielkości w jednym kroku staje siępoważnym zyskiem w porównaniu do metody tradycyjnej.

7.5.1 QDPageRank

Jak wspomniano uprzednio oryginalny algorytm PageRank nie jest w stanie wykonać kla-steryzacji dokumentów, jednak jego modyfikacja, która jest zależna od zapytania, przypewnych założeniach może posłużyć do tego celu.Jeżeli przyjmiemy, że zapytaniem jest cały dokument i względem niego policzymy Page-

Rank zgodnie z tym co zostało napisane w rozdz. 7.4.2, to element najbardziej prawdopo-dobny (mający najwyższy PageRank) należy uznać za ten który jest najbardziej odpowiednijako kolejny dokument do przeglądania.Jeżeli dokument, który jest proponowany jako następny należy do tej samej grupy co

dokument przeglądany to przyjmujemy, że odpowiedź systemu była poprawna.Oprócz opisu grafu QDPageRank potrzebuje również informacji o ważności dokumentu

względem zapytania. W tym celu wykorzystano prawdopodobieństwa policzone w rozdz.4. Za pomocą PLSA policzono prawdopodobieństwo przynależenia dokumentu do klas.

Page 52: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 52

1e-50

1e-45

1e-40

1e-35

1e-30

1e-25

1e-20

1e-15

1e-10

1e-05

1

0 100 200 300 400 500 600 700 800 900 1000 1100

Del

ta

Iteracja

Szybkosc zbiegania do wektora stabilnego

teleport=0.10teleport=0.05teleport=0.01

Rys. 7.1: Zbieżność podstawowej metody PageRank.

Page 53: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 53

1e-90

1e-80

1e-70

1e-60

1e-50

1e-40

1e-30

1e-20

1e-10

1

0 10 20 30 40 50 60

Del

ta

Iteracja

Szybkosc zbiegania do wektora stabilnego przy uzyciu ekstrapolacji Aitken’a

teleport=0.10teleport=0.05teleport=0.01

Rys. 7.2: Zbieżność ekstrapolacji Aitken’a

Przyjmując że dokument należy do klasy o najwyższym prawdopodobieństwie, to ważnośćdokumentu A względem zapytania (dokumentu B) jest prawdopodobieństwem przynależe-nia dokumentu A do grupy do której przynależy dokument B.Rysunki 7.3-7.6 pokazują stosunki otrzymane dla wszystkich rodzajów grafów, przy

wykorzystaniu poszczególnych wyników PLSA. Jak widać z powyższych rysunków, nie ist-nieje znacząca różnica w wynikach dla poszczególnych mutacji grafu. Wynika z tego, że dużawaga została przydzielona informacji zebranej za pomocą PLSA, a parametry wynikającez grafu w małym stopniu wpływają na zachowanie się metody.Wyniki obliczono wyliczając dla danego podziału PLSA i grupy stosunek trafnych od-

powiedzi do całej ilości odpowiedzi. Jako odpowiedź QDPageRank uznawano pierwszy do-kument jakim odpowiada algorytm dla zapytania. Jeżeli dokument będący zapytaniem idokument będący odpowiedzią znajdowały się w tej samej grupie to odpowiedź uznawanojako trafny.Należy jednak zauważyć znaczącą różnicę w mierniku, podczas gdy w poprzednich me-

todach brane były pod uwagę zbiory dokumentów odpowiadające dokumentowi. To w tymprzypadku, porównywanie jest jeden do jednego co znacząco wpływa na wyniki. Dodat-kowym źródłem błędów, może być fakt wykorzystania PLSA, jako miary podobieństwapomiędzy dokumentami. Algorytm ten, w teorii, powinien odpowiedzieć dokumentem-autorytetem dla tego dokumentu. Jednak stało się tak w bardzo małej ilości przypadków.Dokładność odpowiedzi (wykresy 7.7 - 7.10) uzyskano badając średni stosunek trafnych

odpowiedzi w względem oryginalnych grup w podziale na klasy PLSA i grafy cytowań.Opisana dokładność w taki sposób daje wyniki w okolicach jednego, dwóch procent.

Wynik ten nie jest wysoki, lecz był on oczekiwany, ze względu na wyniki odpowiedzi idefinicję obydwu mierników.

Page 54: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 54

0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0 20 40 60 80 100 120 140

Odp

owie

dz

Ilosc klas

Stosunek odpowiedzi trafnych do wszystkich odpowiedzi dla grafu idealnego.

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 7.3: Odpowiedź dla grafu idealnego

0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0 20 40 60 80 100 120 140

Odp

owie

dz

Ilosc klas

Stosunek odpowiedzi trafnych do wszystkich odpowiedzi dla grafu zaburzonego o 2%.

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 7.4: Odpowiedź dla grafu zaburzonego o 2%

Page 55: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 55

0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0 20 40 60 80 100 120 140

Odp

owie

dz

Ilosc klas

Stosunek odpowiedzi trafnych do wszystkich odpowiedzi dla grafu zaburzonego o 5%.

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 7.5: Odpowiedź dla grafu zaburzonego o 5%

0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0 20 40 60 80 100 120 140

Odp

owie

dz

Ilosc klas

Stosunek odpowiedzi trafnych do wszystkich odpowiedzi dla grafu zaburzonego o 10%.

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 7.6: Odpowiedź dla grafu zaburzonego o 10%

Page 56: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 56

0

0.005

0.01

0.015

0.02

0.025

0.03

0 20 40 60 80 100 120 140

Dok

ladn

osc

Ilosc klas

Dokladnosc dla grafu idealnego.

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 7.7: Dokładność dla grafu idealnego

0

0.005

0.01

0.015

0.02

0.025

0 20 40 60 80 100 120 140

Dok

ladn

osc

Ilosc klas

Dokladnosc dla grafu zaburzonego 2%.

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 7.8: Dokładność dla grafu zaburzonego o 2%

Page 57: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

7. PageRank 57

0

0.005

0.01

0.015

0.02

0.025

0.03

0 20 40 60 80 100 120 140

Dok

ladn

osc

Ilosc klas

Dokladnosc dla grafu zaburzonego 5%.

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 7.9: Dokładność dla grafu zaburzonego o 5%

0

0.005

0.01

0.015

0.02

0.025

0 20 40 60 80 100 120 140

Dok

ladn

osc

Ilosc klas

Dokladnosc dla grafu zaburzonego 10%.

wszystkie slowaz wylaczeniem stop listy

rdzenierdzenie z wylaczeniem stop listy

Rys. 7.10: Dokładność dla grafu zaburzonego o 10%

Page 58: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

8. PORÓWNANIE METOD

Przeprowadzone badania odbywały się na zbiorze obejmującym 820 dokumentów. Jest tobardzo mały zbiór danych w porównaniu do badań związanych z Internetem gdzie wyko-rzystywano zbiory o wielkości nawet do 3.5GB[15]. Zaletą zbioru testowego był jednak faktpogrupowania przez ekspertów dokumentów do różnych klas tematycznych, co pozwoliłona badanie jakości wyników za pomocą standardowo przyjętych mierników.Podział metod. Uwzględnione metody można podzielić na dwa różne sposoby. Pierw-

szym kryterium podziału są dane potrzebne do działania algorytmu. Do grupy metod ba-zujących na słownictwie zawartym w dokumentach należy zaliczyć metody LSA (rozdz. 3),PLSA (rozdz. 4) i WebSOM (rozdz. 5). Druga grupa zawiera metody bazujące na grafiecytatów: PHITS (rozdz. 6) i PageRank (rozdz. 7). Drugim sposobem podziały jest funkcjo-nalność metody. W ten sposób można podzielić metody na klasteryzujące i metody ocenia-jące jakość stron. Do pierwszej należy zaliczyć LSA, PLSA, WebSOM i PHITS, natomiastdo drugiej tylko algorytm PageRank. Podział ten obrazuje tabela 8.1.Wzrost danych. Metody oparte o treść dokumentów korzystają z macierzy często-

tliwości dokument-słowo. Taka reprezentacja zakłada, że dokumenty zawierają wszystkiesłowa występujące w macierzy, chociaż większość z nich pokazuje się w dokumencie z czę-stotliwością zero. W momencie analizowania tak dużych struktur jak Internet powstajeproblem przyrastania danych w miarę wzrostu ściągniętych stron do analizy. Przewidywanyscenariusz wzrostu danych macierz dokument-słowo będzie rosnąć, ale od pewnego momen-tu przyrost w wymiarze słów powinien być dobrze przybliżony przez funkcję o charakterzelogarytmicznym, w przeciwieństwie do wymiaru dokumentów, który będzie wzrastał linio-wo.W przypadku modeli opartych o odnośniki, graf opisany jest o często przez reprezen-

tację macierzową. Rozmiar takiej macierzy będzie rósł liniowo w obydwu wymiarach, cooznacza że koszt pamięci, tylko na przechowywanie grafu będzie przyrastał kwadratowo.Zastosowanie metod przyspieszających jak opisana w rozdz. 7 ekstrapolacja Aitken’a czyekstrapolacja kwadratowa, znacząco przyspiesza otrzymanie wyników. Reprezentacje grafuoszczędzające pamięć, zwalniają prędkość obliczeń, przez stworzenie wąskiego gardła przydostępie do elementów.Brak miernika. Okazuje się, że kłopotliwe jest zbadanie skuteczności przeglądarki

względem jej przydatności dla użytkownika. Od dłuższego czasu wiadomo, że przeciętny

klasteryzujące oceniającezawartość dokumentu LSA, PLSA, WebSOM

odnośniki pomiędzy dokumentami PHITS PHITS, PageRank

Tab. 8.1: Podział podstawowych metod wykorzystanych w badaniach

Page 59: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

8. Porównanie metod 59

użytkownik nie jest w stanie przejrzeć więcej niż 10-20 wyników zaprezentowanych przezwyszukiwarki. Wyszukiwarki internetowe mają tendencje do odpowiadania na zapytaniebardzo dużą ilością dokumentów. Jakość samej wyszukiwarki jest w dużej mierze związanawłaśnie z pierwszymi wynikami i ich trafnością względem zapytania. Miernik taki powinienwięc uwzględniać następujące elementy:

Ilość odpowiedzi Ilość dokumentów zwróconych przez wyszukiwarkę.

Ważoną sumę dokumentów Pozycję dokumentu oraz jego trafność względem zapytania.

Mechanizm normalizacji Pewien mechanizm normalizacji, lub pewne stałe parametry w ce-lu porównania wyników np. ważenie tylko pierwszych 25, 50, 100 wyników.

Zastosowanie takiego miernika pomoże w wyszukiwarkach prezentujących wyniki jako li-sty, nie będzie on jednak w stanie mierzyć wartości dla wyszukiwarek graficznych, gdziereprezentowane są raczej struktury i zależności, niż pojedyncze strony.Zmiany wartościowania dokumentów. W pracy nie zostały ujęte metody warto-

ściowania słów względem ich występowania w tekście. Mechanizm ten jest często wyko-rzystywany w komercyjnych wyszukiwarkach. Polega on na przypisywaniu różnych wag doposzczególnych słów na podstawie kontekstu w jakim się znajdują. Typowymi przykładamijest zwiększanie wag dla słów: znajdujących się na początku dokumentu, wytłuszczonych,znajdujących się w nagłówkach, itp.

8.1 Zestawienie wyników

Poniżej zostały zaprezentowane zbiorcze wyniki dla metod klasteryzujących (tabele 8.2,8.3 i wykresy 8.1, 8.1: odpowiedź i dokładność). W celach prezentacji wybrano z każdejmetody wyniki najlepsze dla klasteryzacji na 64 klasy jako najbliższej grupie oryginalnej.Ciekawostką jaka ujawnia się w tym zestawieniu jest fakt, że metoda LSA i WebSOM

daje takie same wyniki dla dokładności, ale WebSOM radzi sobie znacznie lepiej z odpo-wiedzią, niż LSA.W porównaniu zdecydowanie najlepiej wypadł mechanizm PHITS, który jest ponad

dwukrotnie lepszy od następnego algorytmu (w przypadku dokładności PLSA, w przypad-ku odpowiedzi WebSOM). Wysoka wydajność metody PHITS zależy od hipotezy posta-wionej w rozdziale 6. Założono bowiem, że struktura stron Internetowych w dużej mierzejest poprawna i autorzy stron odwołują się do innych stron zgodnie z zainteresowaniamiopisanymi w dokumencie. Hipoteza o poprawności odnośników nie jest zbadana.Ponieważ QDPageRank było mierzone w inny sposób (rozdz. 7.5.1), nie można go po-

równywać w jakikolwiek sposób z poprzednimi wynikami.Możliwe warianty poprawy skuteczności. Poprawę skuteczności wyszukiwarek in-

ternetowych powinno osiągnąć się poprzez połączenie obydwu rodzajów metod. Takie pró-by były już robione PLSA+PHITS [6] czy opisany skrótowo w rozdz. 7 Query-DependentPageRank [25], przy zdefiniowanej w inny sposób mechanizmie odpowiedzi.

8.2 Wnioski

Na podstawie zaprezentowanych metod nasuwają się pewne wnioski:

Page 60: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

8. Porównanie metod 60

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 20 40 60 80 100 120 140

Odp

owie

dz

Ilosc klas ukrytych

Najlepsze wyniki odpowiedzi dla badanych metod

LSAPLSA

WebSOMPHITS

Rys. 8.1: Najlepsze wyniki dla odpowiedzi na zapytanie w badanych metodach.

ilość klas LSA PLSA WebSOM PHITS2 0.552471527 0.914132812 0.9971407454 0.351468396 0.810634711 0.913655948 0.9902069488 0.288927520 0.739962818 0.895115342 0.98660859516 0.256650376 0.754857528 0.841917087 0.98917102432 0.243827425 0.680320701 0.925136848 0.97746510764 0.238223070 0.570980299 0.610114332 0.981398516128 0.235901922 0.203259474 0.638558886 0.829620726

Tab. 8.2: Odpowiedź

ilość klas LSA PLSA WebSOM PHITS2 0.014231686 0.024363125 0.0261617354 0.017393725 0.041835203 0.020648387 0.0513904398 0.024229739 0.084729550 0.027479778 0.10370970616 0.036492300S 0.159903495 0.031724418 0.20952674632 0.061232766 0.293985497 0.051019559 0.40908558564 0.101311705 0.442727686 0.095973362 0.768625453128 0.160274831 0.428495730 0.162046426 0.992600658

Tab. 8.3: Dokładność odpowiedzi

Page 61: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

8. Porównanie metod 61

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 20 40 60 80 100 120 140

Dok

ladn

osc

Ilosc klas ukrytych

Najlepsze wyniki dokladnosci dla badanych metod

LSAPLSA

WebSOMPHITS

Rys. 8.2: Najlepsze wyniki dla dokładności na zapytanie w badanych metodach.

• Podobieństwo tematyczne dokumentów nie zawiera się w słownictwie użytym w tychdokumentach.

• Odnośniki znacznie lepiej definiują podobieństwo dokumentów.

• Przygotowanie klasteryzacji i oceny dokumentów jest bardzo czasochłonne.

• Wykorzystanie stop listy znacząco poprawia wyniki.

• Wykorzystanie rdzenia w niewielkim stopniu poprawia wyniki.

Zebrane wyniki wskazują, że słowa użyte do stworzenia dokumentu nie są głównymelementem definiującym podobieństwo wyników. Jedną z przyczyn takiego stanu jest fakt,że język naturalny umożliwia posługiwanie się niejednoznacznym opisem.Wykorzystanie odnośników, jako elementu definiującego podobieństwo znacznie popra-

wia wyniki. Taki mechanizm jest symulacją zachowań pewnych zachowań z rzeczywistości.Zdarza się często, że kolejnych materiałów tekstowych poszukuje się przez przejrzenie biblio-grafii danej książki, czy artykułu. Innym mechanizmem jest poszukiwanie prac napisanychprzez tego samego autora. Nikt jednak nie spróbował stworzyć mechanizmu opartego o tąmetodę. Wiąże się to z trudnością ustalenia autorstwa w Internecie. Zapewne 95% doku-mentów znajdujących w Internecie byłoby przypisanych do autora o nazwie „anonim”.Metody próbujące dzielić duże zbiory danych z natury zadania będą miały długi czas

przetwarzania. Stworzenie mechanizmów przyspieszających otrzymanie wyników jest bar-dzo pożądane. W większości algorytmów zrównoleglenie przetwarzania jest raczej oczywiste,przez uruchomienie równoległe na zadanej porcji danych. Procesy optymalizacyjne dla me-

Page 62: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

8. Porównanie metod 62

tod numerycznych jest również wskazana, dzięki temu można zaoszczędzić całkowitą ilośćiteracji potrzebnych do przetworzenia danych i uzyskania wyniku zadowalającej jakości.Badania wskazują, że mechanizm inteligentnej nawigacji w dokumentach tekstowych

musi składać się z dwóch etapów. Mechanizmu klasteryzującego i mechanizmu sortującegowyniki.Aktualnie słabo zbadane lub nie zbadane ścieżki obejmują takie dziedziny wyszukiwania

informacji jak Latent Dirichlet Analysis, automatyczne obliczanie optymalnej ilości klasukrytych, czy tworzenie streszczeń ze zbiorów dokumentów[22].

Page 63: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

DODATEK

Page 64: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

A. STOP LISTA

Jak powstała stoplista?

Stop lista dla słów i rdzeni została w obydwu przypadkach stworzona na zasadzie wybra-nia tych słów, których ilość wystąpień była większa niż ilość dokumentów. Taki wybórstop listy można uzasadnić w następujący sposób: Skoro słowo występuje więcej razy niżilość dokumentów to statystycznie występuje ono we wszystkich dokumentach. Taki układoznacza, że za pomocą tego słowa nie jesteśmy w stanie podzielić zbioru dokumentów nadokumenty zawierające i nie zawierające to słowo. A więc nie niesie ono informacji. Takisam tok rozumowania został przeprowadzony dla rdzeni słów.

Słowa będące na stop liście

57 słówa (11229), about (1260), after (991), all (906), also (868), an (1980), and (12239), are

(1896), as (2842), at (2838), be (2342), been (1290), but (2007), by (2836), for (4344), from(2626), had (1626), has (1834), have (2128), he (3086), her (901), his (2039), i (1275), in(11692), is (3882), it (2945), its (1450), more (1126), no (859), not (1699), of (15245), on(3788), one (1176), or (1060), other (844), out (832), people (1302), said (5399), she (864),than (918), that (5455), the (34558), their (1239), there (971), they (1586), this (1480),to (12470), two (890), was (4349), we (988), were (2241), when (1003), which (1139), who(1612), will (1462), with (2920), would (1193)

Rdzenie słów będące na stop liście

65 rdzenia (11229), about (1260), after (991), all (906), also (868), an (1980), and (12244), ar

(1896), as (2842), at (2843), be (2667), been (1290), but (2007), by (2836), for (4344), from(2626), ha (1840), had (1626), have (2206), he (3165), her (910), hi (2039), i (1275), in(11692), is (3882), it (4396), more (1127), mr (892), nation (849), new (1092), no (860),not (1699), of (15245), offici (877), on (5002), or (1073), other (1015), out (833), peopl(1364), report (829), sai (997), said (5399), she (886), state (1145), than (918), that (5583),the (34558), thei (1586), their (1239), there (1047), thi (1480), time (842), to (12471), two(890), us (1281), wa (4350), we (988), were (2241), when (1003), which (1139), who (1632),will (1495), with (2920), would (1193), year (1496)

Page 65: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

B. ALGORYTM SVD

Aby rozłożyć macierz A ∈ Rm×n metodą SVD (A = UΣV T )należy dokonać następujących

kroków:

I. Znaleźć wartości własne macierzy AT A i posortować je malejąco.

II. Znaleźć ilość wartości własnych macierzy AT A równych zeru.

III. Znaleźć wektory ortogonalne macierzy AT A odpowiadające znalezionym wartościomwłasnym i ustawić je w takiej samej kolejności aby stworzyć macierz w postaci wek-torów kolumnowych V ∈ R

n×n.

IV. Stworzyć macierz diagonalną Σ ∈ Rm×n ustawiając pierwiastki drugiego stopnia σi =√

λi dla p = min(m,n) pierwszych wartości własnych macierzy AT A otrzymanychw pierwszym kroku w kolejności malejącej.

V. Znaleźć pierwszy wektorów kolumnowy macierzy U ∈ Rm×m:

ui = σ−1i Avi(i = 1, 2, ...r)

VI. Dodaj do macierzy U resztę (m − r) wektorów korzystając z procesu ortogonalizacjiGrama-Schmidta.

B.1 Przykład

Spróbujmy znaleźć rozkład SVD dla macierzy:

A =

1 10 11 0

∈ R3×2

Krok I.

Znajdujemy wartości własne macierzy AT A =

[

2 11 2

]

:

λ1 = 3, λ2 = 1

Krok II.

Ilość niezerowych wartości własnych macierzy AT A : r = 2.

Page 66: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

B. Algorytm SVD 66

Krok III.

Poszukiwanie ortonormalnych wektorów własnych macierzy AT A odpowiadających warto-ściom własnym λ1 i λ2:

v1 =

[ √2

2√2

2

]

i v2 =

[ √2

2

−√

22

]

tworząc w ten sposób macierz:

V =[

v1 v2

]

=

[ √2

2

√2

2√2

2−

√2

2

]

∈ R2×2

Krok IV.

Tworzenie macierzy wartości szczególnych: Σ ∈ R3×2.

Σ =

√3 0

0√

10 0

=

√3 0

0 10 0

,

na diagonalnej znajdują się pierwiastki wartości własnych macierzy AT A (w malejącejkolejności), reszta wartości macierzy Σ to zero.

Krok V.

Poszukiwanie dwóch pierwszych wektorów kolumnowych macierzy U ∈ R3×3.

u1 = σ−11 Av1 =

√3

3

1 10 11 0

[ √2

2√2

2

]

=

√6

3√6

6√6

6

i

u2 = σ−12 Av2 =

1 10 11 0

[ √2

2

−√

22

]

=

0

−√

22√2

2

Krok VI.

Aby znaleźć wektor u3 należy najpierw zastosować process ortogonalizacji Grama-Schmidtaotrzymując w ten sposób wektor u3 prostopadły do u1 i u2:

u3 = e1 − (uT1 e1)u1 − (uT

1 e2)u2 =[

13

−13

−13

]T

gdzie ei oznacza wektor jednostkowy wzdłuż osi przestrzeni, np. dla R3 Wektory e opisane

są zbiorem [1 0 0], [0 1 0], [0 0 1]. Podając wektor u wektor normalizacji:

u3 =

√3

3

−√

33

−√

33

.

Page 67: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

B. Algorytm SVD 67

Stąd:

U =[

u1 u2 u3

]

=

√6

30

√3

3√6

6

√2

2−

√3

3√6

6−

√2

2−

√3

3

A końcowa postać rozkładu wygląda następująco:

A =

√6

30

√3

3√6

6

√2

2−

√3

3√6

6−

√2

2−

√3

3

√3 0

0 10 0

[ √2

2

√2

2√2

2−

√2

2

]

.

Page 68: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

C. IMPLEMENTACJA ALGORYTMÓW

W celu wykonania badań zastosowano szeroki zestaw mechanizmów i narzędzi kompute-rowych. Między innymi wykorzystano: bazę danych (Oracle 9i), narzędzia unix’owe, językJava, język C].Przyjęto formułę pakietu, tzn. stworzono zestaw programów, do badania poszczególnych

metod. Całościowy widok pokazuje rys. C.1. W kroku pierwszym nastąpuje oczyszczeniedanych i wprowadzenie ich do bazy danych. W kroku drugim na podstawie informacji z bazydanych (identyfikatory słów i dokumentów) przygotowano pliki wejściowe dla poszczegól-nych programów z pakietu. Krok trzeci to wprowadzenie wyników działania programów dobazy danych. W kroku czwartym następuje agregacja wyników, w celu otrzymania danychpotrzebnych do stworzenia wykresów i analiz.Wszystkie potrzebne skrypty oraz przykłady użycia są zawarte na płycie CD. Na płycie

znajduje się również szczegółowa instrukcja uruchomienia i przeprowadzenia badań.

C.1 Narzędzia Unix’owe

W celach wstępnego przetworzenia danych skorzystano z narzędzi zawartych w pakiecieUWIN1. W celach przetwarzania wykorzystano takie narzędzia jak:

ksh możliwości skryptowe powłoki ksh pozwoliły na wielokrotnie wykonanie tych samychczynności (np. dla każdego pliku z listy wykonanie zestawu poleceń)

find umożliwił wyszukiwanie plików w drzewie katalogów;

sed pozwolił na wyczyszczenie oryginalnych plików ze znaków interpunkcji, cudzysłowów,znaczników HTML, itp.;

awk pozwolił na przetworzenie pliku tekstowego na listę słów, to narzędzie było równieżczęsto wykorzystywane do operacji związanych z wprowadzeniem wyników do bazydanych;

sort pozwolił na posortowane listy słów;

unique umożliwił policzenie częstotliwości słów w dokumencie.

C.2 Baza danych

Baza danych posłużyła jako repozytorium danych wejściowych i wyników zebranych w cza-sie poszczególnych badań. Punktem wyjścia było wprowadzenie dwóch tabel słownikowych

1 http://www.research.att.com/sw/tools/uwin/

Page 69: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

C. Implementacja algorytmów 69

Rys. C.1: Schemat implementacji

Page 70: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

C. Implementacja algorytmów 70

i tabeli, tak zwanych, operacyjnych. Tabele słownikowe to repozytorium słów i repozyto-rium dokumentów. Tabele operacyjne to utrzymana w formie znormalizowanej reprezenta-cja macierzy słowo - dokument, oraz tabela zawierająca informację, który dokument należydo której grupy.Dzięki mechanizmom bazy i wykorzystaniu języka Java (patrz dodatek C.3) utworzono

wersje tabel słownikowych z rdzeniem, oraz ze stop listami (patrz dodatek A).W po zebraniu wyników baza danych dostarczyła podstawę do wyliczeń ostatecznych

mierników skuteczności metod. W większości przypadków implementacje opisanych algoryt-mów zwracały informację, który dokument został przypisany do której grupy. Wyjątkiemw tym przypadku jest implementacja QDPageRank, gdzie zastosowano inny model.

C.3 Java

Język Java został wykorzystany do zaimplementowania funkcji zwanej stemmer’em, jest tofunkcja która mając na wejściu słowo zwraca rdzeń tego słowa. W tym przypadku wyko-rzystano algorytm zaproponowany przez pana Porter’a2. Wersja ta została zmodyfikowanao funkcję, działającą na pojedynczych słowach i wprowadzona do środowiska bazy danych.W ten sposób uzyskano tabele słów z rdzeniami i stworzono macierz rdzeń - dokument.

C.4 C]

Wszystkie algorytmy przedstawione w pracy zostały zaimplementowane w języku C]. Naplatformie .NET firmy Microsoft. Środowisko to zostało wybrane ze względu na duże po-dobieństwo do języka Java (C] jest w pełni obiektowy), a zarazem oferuje moc obliczeniowąnie wiele mniejszą od języków kompilujących do kodu binarnego samej maszyny. Dodatko-wo duże wsparcie środowiska internetowego dla języka Java, pozwoliło na o wiele szybszetworzenie kodu dla tego języka.Wszystkie programy są napisane w wersji na konsolę. Każdy z programów oczekuje

pliku oraz parametrów specyficznych dla tegoż algorytmu. Uruchomienie bez podania pa-rametrów, przedstawia listę parametrów dostępnych, zarówno obowiązkowych jak i opcjo-nalnych.Aby jakikolwiek program mógł zostać uruchomiony wymagana jest instalacja narzędzia

o nazwie .NET frameworkPonieważ, tablice zmiennych w języku C] są indeksowane od zera to dane wejściowe

i dane wyjściowe muszą posiadać indeksację od zera. Jedynym wyjątkiem jest LSA, którydokonuje przesunięcia wartości wewnątrz implementacji.

LSA

Program oczekuje dwóch parametrów: listy klas rozdzielonej przecinkami i otoczonej cudzy-słowami, oraz pliku wejściowego. Wyniki, są zapisywane do plików tekstowych w podkata-logach o nazwach odpowiadającym plikom wejściowym, a nazwy plików odpowiadają klasiei odpowiednim kombinacjom macierzy D, S, T. Implementacja oczekuje iż plik wejściowybędzie zawierał dane w następującej postaci:

2 http://www.tartarus.org/ martin/PorterStemmer/

Page 71: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

C. Implementacja algorytmów 71

I. linia pierwsza zawiera ilość rzędów w macierzy

II. linia druga zawiera ilość kolumn w macierzy

III. pozostałe linie zawierają elementy nie zerowe macierzy w postaci:<rząd> <kolumna> <wartość>

PLSA

Ten algorytm wykorzystano również do policzenia algorytmu PHITS, ponieważ nie istnie-ją pomiędzy nimi żadne różnice, wykorzystywane są natomiast różne zbiory danych. Jakzaznaczono w rozdz. 4 oryginalna implementacja powstała w Javie. Kod implementacjizostał przeniesiony do języka C], oraz został zmodyfikowany w celu przyspieszenia iteracji(implementacja ta ma jednak większe wymagania co do zasobów pamięciowych).Implementacja korzysta z dwóch plików wejściowych, w formacie podobnym do formatu

przedstawionego dla LSA. Pliki różnią się zawartością nagłówka, czyli w przypadku LSAdwóch pierwszych linii, a w przypadku PLSA jednej linii. Ta jedna linia zastąpiła dwie zLSA i wygląda następująco:<nazwa 1>: <wartość 1> <nazwa 2>: <wartość 2>

Nazwa 1 to nazwa elementów znajdujących się w rzędzie, nazwa 2 to nazwa elementówznajdujących się w kolumnach, wartość 1 i 2 to odpowiednio ilość rzędów i kolumn.Wynikiem działania algorytmu jest zestaw macierzy gęstych odpowiadający poszczegól-

nym prawdopodobieństwom ze wzoru (4.11), które są zapisywane do katalogów podanychzgodnie z prefiksem, podawanym jako parametr wejściowy.

WebSOM

Implementacja algorytmu WebSOM oczekuje na wejściu trzech parametrów: Pliku z da-nymi, w tym przypadku pliku identycznego z plikiem wejściowym dla PLSA. Ilości klas,która będzie zmodyfikowana w celu uzyskania macierzy kwadratowej, zgodnie ze wzoremd√ilość klase. Trzeci i ostatni z wymaganych parametrów to ilość iteracji algorytmu zanim

zostaną przedstawione wyniki.Wynikiem działania implementacji jest przypisanie poszczególnym klasom dokumentów,

które są najbardziej podobne do wektora modelowego. Wyniki są kierowane na standardowewyjście w następującej postaci:<nazwa grupy> <numer dokumentu>.

PageRank

Implementacja tego algorytmu bazuje na dwóch parametrach: zbiorze opisującym graf zapomocą macierzy w formacie zgodnym z formatem przedstawionym przy PLSA, oraz pa-rametrze definiującym prawdopodobieństwo losowej zmiany strony przez użytkownika.Wyjściem programu jest plik tekstowy, w którym zawarte są różnice pomiędzy kolejnymi

iteracjami dla standardowej metody PageRank oraz przyspieszenia Aitken’a, plik wyniko-wy ma postać:<iteracja> <metody standardowa> <przyspieszenie Aitken’a>

Page 72: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

C. Implementacja algorytmów 72

gdzie metoda standardowa oznacza różnicę w wyniku działania iteracji w metodzie stan-dardowej, a przyspieszenie Aitken’a oznacza różnicę w wyniku działania iteracji wyko-rzystującej metodę Aitken’a.Algorytm zapisuje wyniki działania do katalogu badanieDelta, do pliku o nazwie Po-

werMethod<wartość teleportacji>.xls

QDPageRank

Jak zostało opisane w rozdz. 7.4.2 korzysta z dwóch informacji: informacji o grafie, orazinformacji o ważności dokumentu względem zapytania. Implementacja wykorzystana za-kłada, iż graf jest podany w formacie zgodnym z formatem dla implementacji PLSA, orazwykorzystuje wynik działania PLSA. W szczególności wykorzystuje macierz prawdopo-dobieństwa P (d|z). Wejściem jest zmodyfikowany wynik PLSA. Modyfikacja polega nazmianie pierwszego wiersza pliku p d z.xls na format zgodny z wejściem dla PLSA.Wynikiem działania jest zestaw par dokument-kolejny dokument do pokazania. Wyniki

są wysyłane na standardowe wyjście.

C.5 Instalacja i uruchomienie

Pakiet został pomyślany jako zestaw narzędzi do badania pewnego problemu. Baza danychpokazana na rysunku C.1 nie jest konieczna, została jednak użyta ze względu wydajnośćpracy. W tym podrozdziale będą często znajdywały się odwołania do zawrtości płyty CDzałączonej do pracy.

Wymagania

Wymagania uruchomienia składowych pakietu są równoważne wymaganiom stawianym dlaśrodowiska .NET firmy Microsoft3.

Instalacja

Zakładając, że dane wejściowe zostały przygotowane w formacie jakiego oczekują składowepakietu, należy zainstalować środowisko .NET Framework, którego wersja 1.1 znajduje sięna płycie dołączonej do pracy.Przygotowanie danych. W celu przygotowania danych dla programu skorzystano z

bazy danych. Nie jest to konieczne, dane dla poszczególnych programów można stworzyćw dowolny sposób.Aby nadać każdemu słowu i każdemu dokumentowi identyfikator wykorzystano mecha-

nizmy z pakietu UWIN (wersja instalacyjna znajduje się na płycie, w katalogu UNIX)oraz mechanizmy bazy danych (sekwencje). Za pomocą skryptów dla programów awk ised, każdy dokument został zareprezentowany przez listę słów i częstotliwość występowa-nia w dokumencie. Na tej podstawie, za pomocą procedury składowanej, wstawiono tę

3 Aktualnie są to systemy operacyjne z rodziny Windows: 2000, XP, 2003. Szczegółowe wymagania dlaplatformy znajdują się na stronie WWW produktu:http://msdn.microsoft.com/netframework/productinfo/sysreqs/default.aspx

Page 73: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

C. Implementacja algorytmów 73

informację do bazy danych4. Dzięki wstawieniu do bazy danych obiektu stemmer 5. Dowprowadzenia stemmer ’a do bazy danych posłużyły standardowe narzędzia dostarczone zwykorzystaną bazą (Oracle 9i). Można jednak skompilować oddzielnie obiekt stemmer i zapomocą odpowiedniego skryptu wsadowego przetworzyć dokumenty do postaci dokumen-tów składających się tylko z rdzeni słów.Dokumentacja bazy danych (definicje tabel, sekwencji, wyzwalaczy, itp) znajduje się w

katalogu /preprocess/database structure.

Uruchomienie

Po instalacji środowiska .NET Framework uruchomienie poszczególnych elementów odby-wa się poprzez wywołanie ich z wiersza poleceń. Programy znajdują się w katalogu /al-gorytmy/nazwa algorytmu/bin/Release. Przykładowe uruchomienia znajdują się w plikuprzetwarzania wsadowego go.bat. Składnia uruchomienia została opisana powyżej.Dane wejściowe i wyniki działania poszczególnych programów zostały spakowane i znaj-

dują się w katalogu /algorytmy/nazwa algorytmu.Wyniki w formie podanej przez poszczególne programy, są przetworzone za pomo-

cą skryptów awk, tak aby można było wprowadzić je do bazy danych (katalog /prepro-cess/data). Do wprowadzenia informacji zebranych do bazy danych wykorzystano narzędziebazy Oracle 9i o nazwie SQL*LDR.Skrypty agregujące dane i końcowe wyniki pokazane w pracy zostały otrzymane za

pomocą przetwarzania SQL, poszczególne wywołania znajdują się w katalogu /prepro-cess/LSA test.

Zawartość płyty CD

Poniżej pokazano główny podział zawartości płyty CD:Katalog OpisUNIX Instalator programu UWINpreprocess Przetwarzanie wsadowe, kroki 1, 3 i 4 ze schematu C.1.algorytmy Źródła i binaria do poszczególnych elementów programów pakietuDOTNET 1.1 Instalator środowiska Microsoft .NET w wersji 1.1DUC Oryginalne dane testoweSeminarium Prezentacje z pracy magisterskiej podczas seminarium dyplomowegoText Tekst pracy magisterskiej w wersji LATEXZrodla Dokumenty zrodlowe do pracy magisterskiejmagisterka.pdf Praca magisterska w wersji Adobe Acrobat

4 Skrypt dla środowiska UWIN znajduje się w katalogu /preprocess/bin5 Katalog /algorytmy/stemmer

Page 74: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

BIBLIOGRAFIA

[1] David M. Blei, Andrew Y. Ng, and Michael I. Jordan. Latent dirichlet allocation.Journal of Machine Learning Research, 3:993–1022, 2003.

[2] Sergey Brin and Lawrence Page. The anatomy of a large-scale hypertextual Websearch engine. Computer Networks and ISDN Systems, 30(1–7):107–117, 1998.

[3] Paweł Cichosz. Systemy uczące się. Wydawnictwa Naukowo-Techniczne Warszawa,1st edition, 2000.

[4] N. Coccaro and D. Jurafsky. Towards better integration of semantic predictors in sta-tistical language modeling. In ICSLP-98, Sydney, Australia, 1998. Australian SpeechScience and Technology Association, Incorporated.

[5] David Cohn and Huan Chang. Learning to probabilistically identify authoritativedocuments. In Proc. 17th International Conf. on Machine Learning, pages 167–174.Morgan Kaufmann, San Francisco, CA, 2000.

[6] David Cohn and Thomas Hofmann. The missing link - a probabilistic model of docu-ment content and hypertext connectivity. In Neural Information Processing Systems13, 2001.

[7] Scott C. Deerwester, Susan T. Dumais, Thomas K. Landauer, George W. Furnas, andRichard A. Harshman. Indexing by latent semantic analysis. Journal of the AmericanSociety of Information Science, 41(6):391–407, 1990.

[8] Susan T. Dumais. Enhancing performance in latent semantic indexing. TechnicalReport TM-ARH-017527, Bellcore, 1990.

[9] Taher H. Haveliwala. Topic-sensitive pagerank. In Proceedings of the eleventh inter-national conference on World Wide Web, pages 517–526. ACM Press, 2002.

[10] Thomas Hofmann. Probabilistic latent semantic analysis. In Kathryn B. Laskey andHenri Prade, editors, Proceedings of the 15th Conference on Uncertainty in ArtificialIntelligence (UAI-99), pages 289–296, S.F., Cal., July 30–August 1 1999. MorganKaufmann Publishers.

[11] Thomas Hofmann and Jan Puzicha. Unsupervised learning from dyadic data. TechnicalReport TR-98-042, Berkeley, CA, 1998.

[12] Timo Honkela. Self-Organizing Maps in Natural Language Processing. PhD thesis,Helsinki University of Technology, Espoo, Finland, 1997.

Page 75: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

Bibliografia 75

[13] Lan Huang. A survey on web information retrieval technologies. Technical report,Experimental Computer Systems Lab, 2002.

[14] Richard O. Hill Jr. Elementary Linear Algebra with Applications. Saunders CollegePublishing, 3rd edition, 1996.

[15] Sepandar D. Kamvar, Taher H. Haveliwala, Christopher D. Manning, and Gene H.Golub. Extrapolation methods for accelerating PageRank computations. In Proc.12th Int. World Wide Web Conf. ACM Press, 20–24 May 2003.

[16] Jon M. Kleinberg. Authoritative sources in a hyperlinked environment. Journal of theACM, 46(5):604–632, 1999.

[17] Teuvo Kohonen. Self-Organizing Maps. Springer Series in Information Sciences. Sprin-ger, 1st edition, 1995.

[18] Mieczysław A. Kłopotek. Inteligentne wyszukiwarki internetowe. Problemy współ-czesnej nauki Teoria i Zastosowania - Informatyka. Akademicka Oficyna WydawniczaEXIT, 1st edition, 2001.

[19] Mieczysław A. Kłopotek. Dynamiczne i statyczne mapy w inteligentnej nawigacji wzbiorach dokumentów. Technical report, Instytut Podstaw Informatyki PAN, 2003.

[20] W. Krysicki, J. Bartos, W. Dyczka, K. Królikowska, and M. Wasilewski. Rachunekprawdopodbieństwa i statystyka matematyczna w zadaniach, volume Część I: RachunekPrawdopodobieństwa. Wydanictwo naukowe PWN, 7th edition, 1999.

[21] Krista Lagus. Text mining with WEBSOM. PhD thesis, Helsinki University of Tech-nology, Espoo, Finland, 2000.

[22] Daniel Marcu and Laurie Gerber. An inquiry into the nature of multidocument abs-tracts, extracts, and their evaluation. In Workshop on Automatic Summarization,Pittsburgh, PA, 2001. The Second Meeting of the North American Chapter of theAssociation for Computational Linguistics.

[23] Peter Marendy. A review of world wide web searching techniques, focusing on hits andrelated algorithms that utilise the link topology of the world wide web to provide thebasis for a structure based search technology. citeseer.nj.nec.com/559198.html.

[24] Lawrence Page, Sergey Brin, Rajeev Motwani, and Terry Winograd. The pagerankcitation ranking: Bringing order to the web. Technical report, Stanford Digital LibraryTechnologies Project, 1998.

[25] Mathew Richardson and Pedro Domingos. The intelligent surfer: Probabilistic combi-nation of link and content information in pagerank. In Advances in Neural InformationProcessing Systems 14. MIT Press, 2002.

[26] Ellen M. Voorhees. The cluster hypothesis revisited. In Proceedings of the 8th AnnualInternational ACM SIGIR Conference on Research and Development in InformationRetrieval, pages 188–196. ACM Press, 1985.

Page 76: Politechnika Warszawska - prac.elka.pw.edu.plprac.elka.pw.edu.pl/~mczyzowi/wspolne/magisterka1s.pdf · Politechnika Warszawska Wydzial Matematyki i Nauk Informacyjnych Praca magisterska

Bibliografia 76

[27] Andrzej Kajetan Wróblewski. Co nalezy wiedziec o cytowaniach prac naukowych.Sprawy Nauki - Biuletyn Komitetu Badań Naukowych, (2), 1996.