Vous êtes sur la page 1sur 55

Rok akademicki 2012/2013

Politechnika Warszawska
Wydzia Elektroniki i Technik Informacyjnych
Instytut Informatyki

PRACA DYPLOMOWA INYNIERSKA


Micha Karpiuk

Klasyfikacja dokumentw tekstowych z


wykorzystaniem uoglnionych wzorcw
sekwencyjnych.

Opiekun pracy
dr in. Piotr Andruszkiewicz

Ocena: .....................................................

................................................................
Podpis Przewodniczcego
Komisji Egzaminu Dyplomowego

Kierunek:

Informatyka

Specjalno:

Inynieria Systemw Informatycznych

Data urodzenia:

1990.12.14

Data rozpoczcia studiw:

2009.10.01

yciorys

Urodziem si 14 grudnia 1990 roku w Bielsku Podlaskim. W roku 2006


ukoczyem Gimnazjum i rozpoczem nauk w IV Liceum Oglnoksztaccym im.
Kamila Cypriana Norwida w Biaymstoku. W szkole redniej uczszczaem do klasy o
profilu matematyczno-informatycznym. W roku 2009 rozpoczem studia dzienne na
Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej na kierunku
Informatyka. W roku 2011 odbyem trzymiesiczn praktyk w firmie Samsung R&D
Polska.

........................................................
Podpis studenta

EGZAMIN DYPLOMOWY
Zoy egzamin dyplomowy w dniu ................................................................................. 2013 r
z wynikiem ...................................................................................................................................
Oglny wynik studiw: ................................................................................................................
Dodatkowe wnioski i uwagi Komisji: .........................................................................................
......................................................................................................................................................
......................................................................................................................................................
2

STRESZCZENIE
Niniejsza praca powicona jest tematyce eksploracji danych tekstowych w
rodowisku sieci web, a w szczeglnoci takim metodom jak uoglnione wzorce
sekwencji oraz klasyfikacja. Podstawowym celem tej pracy byo zbadanie efektywnoci
klasyfikacji stron domowych naukowcw i uniwersytetw na podstawie wystpowania
w ich treci czstych sekwencji tekstowych.
W pracy dokadnie zosta opisany algorytm GSP wykorzystywany do
odkrywania wzorcw sekwencji w tekcie. Przedstawione zostay rwnie typowe
reprezentacje tekstu w algorytmach eksploracji danych tekstowych oraz sposb
przeksztacania dokumentu do reprezentacji odpowiedniej dla zada wykrywania
sekwencji oraz klasyfikacji.
Do przeprowadzenia klasyfikacji uyto nastpujcych klasyfikatorw: DeEPs,
Naive Bayes oraz KStar, ktrych dziaanie zostao opisane. W szczeglnoci skupiono
uwag na leniwym klasyfikatorze DeEPs.
Sowa kluczowe: Eksploracja danych w tekcie, GSP, Sekwencje, Klasyfikacja, DeEPs

ABSTRACT
Title: Classification of Text Documents based on Generalized Sequence Patterns.
This bachelor thesis concerns the subject of text data mining in web
environment, especially such techniques as discovering generalized sequence patterns
and classification. The main purpose of the work was to investigate the effectiveness of
the classification of home pages of researchers and universities based on the
occurrences of frequent text sequences in their content.
This work thoroughly describes GSP algorithm, which is used to discover text
sequence patterns. It also presents typical representations of text in text data mining
algorithms and explains how a document is converted to a representation suitable for the
tasks like sequence discovery and classification.
The following classifiers were used to perform classification: DeEPs, Naive
Bayes and KStar. In particular it focuses on a lazy method of classification called
DeEPs.
Key words: Text Data Mining, GSP, Sequence, Pattern, Classification, DeEPs
3

Spis treci
1.

2.

Wstp .................................................................................................................................... 6
1.1.

Eksploracja danych w sieci Web ............................................................................... 7

1.2.

Cel pracy ...................................................................................................................... 8

1.3.

Struktura pracy ........................................................................................................... 8

Reprezentacje stron www w systemie................................................................................ 9


2.1.

HTML .......................................................................................................................... 9

2.2.

Rodzaje reprezentacji ................................................................................................. 9

2.2.1.

Reprezentacja pena .......................................................................................... 10

2.2.2.

Reprezentacje unigramowe .............................................................................. 10

2.2.3.

Reprezentacja n-gramowa................................................................................ 10

2.2.4.

Reprezentacja - gramowa .............................................................................. 11

2.2.5.

TF IDF ............................................................................................................. 11

2.2.6.

Reprezentacja pozycyjna .................................................................................. 12

2.2.7.

Strona www jako sekwencja ............................................................................ 12

2.2.8.

Strona www jako obiekt do klasyfikacji ......................................................... 13

2.3.

3.

Transformacja dokumentw tekstowych ................................................................ 14

2.3.1.

Parsowanie dokumentu HTML ....................................................................... 14

2.3.2.

Tokenizacja ........................................................................................................ 15

2.3.3.

Ograniczanie reprezentacji .............................................................................. 16

2.3.3.1.

Stemming ................................................................................................... 16

2.3.3.2.

Filtracja sw ............................................................................................. 17

2.3.3.3.

Waga TF IDF .......................................................................................... 17

Wzorce sekwencji .............................................................................................................. 18


3.1.

Proces odkrywania wzorcw sekwencji .................................................................. 19

3.2.

Przebieg algorytmu GSP .......................................................................................... 20

3.3.

Taksonomie elementw............................................................................................. 23

3.4.
4.

Podsumowanie problemu i obserwacje ................................................................... 24

Klasyfikacja ....................................................................................................................... 26
4.1.

Naiwny Klasyfikator Bayesa .................................................................................... 27

4.2.

Klasyfikatory leniwe ................................................................................................. 28

4.2.1.

k-Nearest Neighbors (kNN) .............................................................................. 29

4.2.2.

K Star classifier (K*) ........................................................................................ 29

4.2.3.

Decisions through Emerging Patterns (DeEPs) .............................................. 29

4.2.3.1.
5.

6.

7.

Przebieg klasyfikacji metod DeEPs ....................................................... 31

Architektura rozwizania ................................................................................................. 34


5.1.

Pobieranie treci stron www na podstawie adresw URL ..................................... 34

5.2.

Modu wykrywania sekwencji czstych................................................................... 35

5.3.

Modu klasyfikacji..................................................................................................... 36

Testowanie ......................................................................................................................... 38
6.1.

Dane treningowe ........................................................................................................ 38

6.2.

Miary poprawnoci ................................................................................................... 39

6.3.

Wykryte wzorce sekwencji ....................................................................................... 40

6.4.

Wybr sekwencji do klasyfikacji ............................................................................. 41

6.5.

Ewaluacja modelu klasyfikatora ............................................................................. 42

6.6.

Wyniki testw ............................................................................................................ 43

6.6.1.

Porwnanie klasyfikatorw .............................................................................. 43

6.6.2.

Liczba atrybutw a jako klasyfikacji ........................................................... 46

6.6.3.

Sekwencje a sowa ............................................................................................. 46

Podsumowanie ................................................................................................................... 52

Bibliografia 54

1. Wstp
Eksploracja danych jest popularn i wan dziedzin informatyki majc bardzo due
znaczenie praktyczne. Jej istota polega na wykorzystaniu szybkoci komputerw,
specjalnych algorytmw i technik do odkrywania ukrytych dla czowieka zalenoci i
prawidowoci w ogromnych zbiorach danych, ktrych czowiek nie byby wstanie
opanowa konwencjonalnymi metodami jak typowe zapytania do bazy danych. Jest to
take geneza powstania tej dziedziny: w wielu branach jest potrzeba gromadzenia
danych, ktre bardzo czsto nieprawdopodobnie rozrastaj si do wielkich rozmiarw.
Bez odpowiedniej analizy tych danych staway si bezuyteczne, wic potrzebny by
mechanizm wydobywania wiedzy zawartej w surowych danych.
Naley rwnie rozrni eksploracj danych od zwykych zapyta operacyjnych na
bazie danych, ktrych przykadem moe by zapytanie o liczb okrelonych produktw
sprzedanych w sklepie w konkretnym miesicu lub nawet bardziej zoonych z
podziaem na kategorie, miesice czy jeszcze inne parametry czy ograniczenia.
Eksploracja pozwala na znalezienie odpowiedzi na pytania bardziej oglne, wyszej
abstrakcji, do ktrych nie sposb uoy zapytania SQL1. Przykadem moe by np.
klasyfikacja klienta na podstawie jego aktywnoci lub zakupw.
W kontekcie baz danych eksploracja danych jest jednym z etapw bardziej oglnego
procesu odkrywania wiedzy. W procesie tym najpierw naley odpowiednio
przygotowa dane do uycia konkretnej metody. Wie si to z takimi czynnociami jak
selekcja odpowiednich danych, usunicie danych nierelewantnych z punktu widzenia
problemu czy nawet przeksztacenie ich do odpowiedniej reprezentacji, na ktrej bdzie
operowa algorytm. Po caym procesie naley odpowiednio zinterpretowa same wyniki
eksploracji, aby ostatecznie odkry wiedz zawart w danych.
Eksploracja danych jest silnie powizana z takimi dziedzinami nauki jak statystyka czy
sztuczna inteligencja, gwnie uczenie maszyn, z ktrej wywodz si techniki
eksploracji danych.

Structured Query Language

1.1. Eksploracja danych w sieci Web


Eksploracja sieci Web jest obecnie szczeglnie istotn dziedzin eksploracji danych.
Jest to odkrywanie interesujcej, potencjalnie uytecznej, dotychczas nieznanej wiedzy
ukrytej w zawartoci sieci Web, zarwno w treci, strukturze czy nawet logach
serwerowych. Ze wzgldu na rodzaj analizowanych danych wyrnia si 3 podstawowe
grupy metod eksploracji sieci web:

eksploracja zawartoci sieci Web (ang. Web Content Mining)


Eksploracja zawartoci sieci Web jest wykrywaniem wiedzy z treci stron
internetowych, w duej mierze przypomina eksploracj dokumentw tekstowych z
tym, e mamy tu do czynienia z czciowo uporzdkowan struktur dokumentu
HTML, zawierajcego nie tylko waciw tre strony, ale rwnie rne znaczniki,
ktre su do nadania dokumentowi jego struktury. Typowymi zagadnieniami przy
eksploracji zawartoci jest: grupowanie stron WWW, klasyfikacja stron WWW.

eksploracja pocze sieci Web (ang. Web Structure Mining)


Eksploracja struktury sieci web polega na analizowaniu grafu pocze miedzy
stronami internetowymi za pomoc odnonikw (ang. hyperlink lub link). Oglnie
suy do badania relacji miedzy zasobami w sieci www. Wyszukiwarki internetowe
wykorzystuj taka analiz do tworzenia rankingu wanoci stron internetowych.
Jednym z gwnych i bardziej znanych algorytmw wykorzystywanych w takiej
analizie jest Page Rank stosowany przez jedn z wikszych wyszukiwarek
internetowych.

eksploracja korzystania z sieci Web (ang. Web Usage Mining)


Eksploracja korzystania z sieci web jest analiz dziaa uytkownika sieci. Bada
zachowanie uytkownikw podczas korzystania z sieci. Sprowadza si do analizy
logw serwerowych np. historii przegldania stron przez uytkownikw na jakim
portalu. Wynik analizy mona wykorzysta np. do znalezienia najlepszej logicznej
struktury witryny, spersonalizowa j pod kontem konkretnych uytkownikw,
znale najlepsze miejsca na reklamy.

W pracy przeprowadzane jest znajdowanie wzorcw sekwencji, a nastpnie klasyfikacja


stron www jedynie na podstawie samych treci stron internetowych. W zwizku z tym
zagadnienia tej pracy mona zaklasyfikowa do kategorii eksploracji zawartoci sieci
web.
7

1.2. Cel pracy


Gwnym celem niniejszej pracy byo stworzenie systemu umoliwiajcego
klasyfikacj dokumentw tekstowych na podstawie wzorcw sekwencji wykrytych w
grupie stron www. Aby to osign system powinien by w stanie automatycznie
pobra treci stron internetowych, (w tym przypadku byy to strony domowe
naukowcw oraz strony uniwersytetw) znajdujcych si pod podan, znan wczeniej
list adresw URL. Z tak zdobytych dokumentw powinny zosta wykryte czste
sekwencje tekstowe, ktre bd wykorzystane budowy modeli klasyfikatorw. Przy
pomocy systemu ma zosta zbadana jako takiego podejcia do klasyfikacji.
Po wstpnej analizie, zostay wybrane odpowiednie algorytmy oraz narzdzia i
zewntrzne rda potrzebne do zrealizowania wyej wymienionych zada. W ramach
czci praktycznej owe algorytmy zostay zaimplementowane, a zewntrzne moduy
takie jak biblioteki do klasyfikacji zintegrowane z systemem.
Zrealizowane zadania zostay przetestowane, a wyniki tych testw przedstawione i
opisane.

1.3. Struktura pracy


Kolejne rozdziay tej pracy prezentuj zagadnienia i problemy, z jakimi kolejno naley
si zetkn przy realizacji zaoonych celw. W kadym z nich na pocztku
przedstawione s podstawy teoretyczne i opis problemu, po czym szczegowo ukazane
jest rozwizanie. Drugi rozdzia stanowi opis rnych sposobw reprezentacji
dokumentw tekstowych w algorytmach eksploracji danych. Kolejny rozdzia
powicony jest wykrywaniu sekwencji czstych w grupie dokumentw tekstowych.
Nastpny opisuje sposb klasyfikacji strony www na podstawie wzorcw sekwencji
czstych uzyskanych w poprzednim etapie. Rozdzia pity dotyczy prezentacji
architektury rozwizania zastosowanej w czci praktycznej niniejszej pracy. W
przedostatnim rozdziale przedstawione zostay wyniki przeprowadzonych testw
zwizanych z gwnymi zadaniami, ktrych dotyczya praca. Ostatni, sidmy rozdzia
jest podsumowaniem pracy. Zawarto w nim wnioski dotyczce wykorzystanych
algorytmw jak i samej pracy oraz propozycje dalszego rozwoju zbudowanego systemu.

2. Reprezentacje stron www w systemie


W rozdziale tym zostan przedstawione typowe reprezentacje dokumentw tekstowych,
wykorzystywane w algorytmach eksploracji tekstu. W dalszej czci opisane zostan
rwnie struktury wykorzystywane w czci praktycznej tej pracy do reprezentowania
przeksztaconych dokumentw, zarwno w celu wykrywania sekwencji jak i
klasyfikacji. Zostan opisane rwnie metody i narzdzia, ktre s stosowane podczas
procesu przeksztacania dokumentw z formy oryginalnej do waciwej algorytmowi
reprezentacji.
2.1. HTML
Gwnym przedmiotem analizy niniejszej pracy s strony internetowe ludzi nauki oraz
uniwersytetw. Zanim przejd do opisu reprezentacji tekstowych warto wtrci kilka
sw o pocztkowej formie dokumentw bdcych przedmiotem analizy. Strona
internetowa jest dokumentem jzyka znacznikw HTML (ang. HyperText Markup
Language). Jest to jzyk wprowadzajcy czciow struktur informacji do dokumentu.
Pozwala on opisa struktur informacji zawartych wewntrz strony internetowej,
nadajc znaczenie poszczeglnym fragmentom tekstu. Struktur t wprowadzaj
znaczniki HTML. Treci stron znajduj si wewntrz znacznikw, pomidzy jego
otwierajcym elementem (np. <body>) a zamykajcym (</body>). Odpowiednie
rozmieszczenie tych elementw, ktre tworz np. nagwek, listy, formularze,
odnoniki, tworzy przejrzyst struktur strony www.

2.2. Rodzaje reprezentacji


Posta dokumentu reprezentujcego stron www jest zazwyczaj nieodpowiednia dla
wejcia algorytmw, ktre dziaaj na danych o szczeglnie okrelonej strukturze.
Dlatego te niezbdnym krokiem jest uprzednie przeksztacenie dokumentu do innej
formy, w ktrej moe zosta wykorzystany przez dany algorytm.
Przy doborze reprezentacji rozsdnym wydaje si by denie do takiej reprezentacji,
ktra jest maksymalnie ograniczona jednak wystarczajco obszerna, tak aby nie obnia
jakoci dziaania algorytmu. Reprezentacja powinna przede wszystkim by jak najlepiej
dopasowana do konkretnego problemu.

2.2.1. Reprezentacja pena


Jest to sposb reprezentacji dokumentu zachowujcy pen informacj o nim, a wic
przechowujcy wszystkie wystpienia kadego sowa wraz z jego umiejscowieniem w
tekcie. Na jej podstawie mona dokadnie odtworzy oryginalny dokument. Nie
zawsze jest jednak potrzeba przechowywania wszystkich informacji. Co wicej
korzystanie z takiego modelu dokumentu podczas pracy algorytmu moe by bardziej
uciliwe oraz mniej wydajne.

2.2.2. Reprezentacje unigramowe


Skrajnie odmiennym przykadem jest reprezentacja unigramowa (ang. Unigram Model).
Jest to bardzo prosty, jednak dosy czsto stosowany model reprezentacji dokumentw.
Polega na przedstawieniu tekstu w postaci wektora, w ktrym zawarta jest informacja o
wystpieniach konkretnych sw w dokumencie. Std inna nazwa tej reprezentacji to
worek sw (ang. Bag of words). Liczba wymiarw takiego wektora jest rwna liczbie
wszystkich rnych sw wystpujcych we wszystkich dokumentach ze zbioru.
Istniej dwa warianty reprezentacji unigramowej:

Binarna odnotowywany jest jedynie fakt wystpienia danego sowa w


dokumencie. Nie ma natomiast informacji, o tym ile razy sowo to wystpio w
tekcie.

Czstociowa liczone s wystpienia danego sowa w dokumencie.

2.2.3. Reprezentacja n-gramowa


Jest to bardziej zoona reprezentacja tekstu, zawierajca w sobie wicej informacji ni
unigramowa. Uwzgldnia ona bowiem wzajemn kolejno sw w dokumencie.
Zamiast czstoci pojedynczych sw zawiera ona wiadomoci o czstoci
wystpowania sekwencji dugoci n ssiednich sw w tekcie. Powanym problemem
takiej reprezentacji jest jej duy oraz bardzo szybko rosncy wraz ze wzrostem sw
rozmiar. W zwizku z tym rzadko korzysta si z reprezentacji o dugociach sekwencji
wikszych ni 3 [3].
Dugo sekwencji (n)
Liczba wymiarw wektora
2 (Bigram)
1 milion (10002)
3 (Trigram)
1 miliard (10003)
Tabela 2.1. Rozmiary wektorw reprezentujcych dokumenty, w zalenoci od
dugoci n-gramw dla 1000 rnych sw.

10

2.2.4. Reprezentacja - gramowa


Jest bardziej elastyczn wersj reprezentacji n-gramowej, ktra zawieraa czstoci
sekwencji sw o ustalonej dugoci n. Reprezentacja gramowa nie ma takiego
ograniczenia. Moe przechowywa informacj o czstociach sekwencji sw rnych
dugoci, zaczynajc od dugoci rwnej 1, czyli po prostu pojedynczych sw. Mona
powiedzie, e reprezentacja ta jest zoeniem modelu unigramowego oraz kilku modeli
n-gramowych, w zalenoci od tego, jakiej maksymalnie dugoci sekwencje maj by
uwzgldnione.
2.2.5. TF IDF
W poprzednio opisanych modelach uwzgldniana bya jedynie obecno lub czsto
wystpowania sowa w danym dokumencie. Reprezentacja TF-IDF (ang. Term
Frequency Inverse Document Frequency) jest pod tym wzgldem bardziej
wyrafinowana. Zamiast czstoci przypisuje ona wag obliczan na podstawie
istotnoci sowa w dokumencie.
Aby j wyznaczy trzeba najpierw znale nastpujce miary:

Term frequency TF(ti, d) liczba wystpie sowa ti w dokumencie dj.

Document frequency DF(ti) liczba dokumentw, w ktrych wystpio sowo


ti .

Inverse document frequency IDF(ti) = log(|D|/DF(ti))


gdzie |D| to liczba wszystkich rozpatrywanych dokumentw.

Ostateczna waga sowa ti w dokumencie dj wynosi:


wi = TF(ti, d) IDF(ti)
Jak wida miara ta jest tym wiksza, im czciej wystpuje w dokumencie. Z drugiej
strony wano termu zmniejsza si, im czciej wystpuje on w innych dokumentach
ze zbioru. Interpretacja tego jest taka, e sowo z du wag, jest charakterystyczne dla
tego dokumentu i raczej dobrze opisuje jego tematyk. Dziki temu metoda jest odporna
na sowa, ktre s popularne w wikszoci dokumentw zbioru, wic nie s
wartociowe w analizie, a stanowi jedynie szum. Takimi wyrazami s czsto sowa z
listy stopwords (2.3.3.2).

11

2.2.6. Reprezentacja pozycyjna


W dotychczas przedstawionych reprezentacjach, zawarte byy jedynie informacje o
wystpieniach sw lub sekwencji sw w dokumentach. Nie byo jednak w aden
sposb uwzgldniane ich pooenie w obrbie dokumentu. Informacja ta jednak w
przypadku wielu metod eksploracji tekstu takich jak wykrywanie sekwencji ma
kluczowe znaczenie.
W podejciu tym dzieli si dokument na pewne przedziay, ktrych wielko moe by
dobrana w zalenoci od potrzebnej szczegowoci modelu. Nastpnie obliczane s
czstoci sw w kadym z przedziaw, w efekcie czego dla kadego sowa
otrzymujemy funkcj rozkadu czstoci jego wystpowania w dokumencie. W
szczeglnym przypadku, gdy przedzia skada si z jednego sowa, moliwe jest
cakowite odtworzenie oryginalnej postaci dokumentu. Kiedy natomiast przedzia ma
rozmiar caego dokumentu, jest ona rwnowana z modelem unigramowym.

2.2.7. Strona www jako sekwencja


Do analizy tekstu pod wzgldem wyszukiwania czstych sekwencji potrzebna bya
reprezentacja dokumentw uwzgldniajca pozycj kadego sowa. W zwizku z tym
model opierajcy si na zwykym zliczaniu wystpie sw nie nadawa si do tego
zadania. Oczywistym wyborem bya tutaj reprezentacja pozycyjna dokumentujca
dokadne umiejscowienie w tekcie kadego uwzgldnianego w analizie sowa.
Przebieg transformacji dokumentu wyglda nastpujco:
1. Pobranie rda strony www w formacie HTML na podstawie adresu URL
Dokadny opis w przedstawiony w 5.1.
2. Parsowanie dokumentu HTML w celu wydobycia treci strony znajdujcej si
wewntrz znacznikw HTML. W tym kroku usuwane s wszystkie elementy
charakterystyczne dla jzyka HTML. Opis kroku w 2.3.1.
3. Tokenizacja (2.3.2) treci strony www.
4. Stemming (2.3.3.1) tokenw.
5. Filtracja sw
a. Tokeny o dugoci 1 znaku zostaj odfiltrowane.
b. Usuwanie sw znajdujcych si na stoplicie (ang. Stopwords).
Powysze kroki zostay opisane w dalszej czci tego rozdziau.

12

Przykad
Zamy, e spod pewnego adresu URL pobrano rdo strony, ktre po sparsowaniu i
wydobyciu tekstu dao nastpujc tre:
Welcome to my home page. Like other home pages it contains information about my
work.
Po przejciu wszystkich etapw transformacji, dokument bdzie w programie widziany
jako zbir mapowa: rdze sowa pozycje wystpienia sowa:
welcom
home
page
like
contain
Inform
Sowo
Pozycje
1
4,8
5,9
6
11
12
wystpie
Tabela 2.2. Reprezentacja przykadowego dokumentu w programie.

work
15

Odfiltrowane zostay wszystkie sowa znajdujce si na stopwords: to, my, it, about.
Dziki procesowi stemmingu sowa przedstawiane s w formie rdzenia, dziki temu np.
sowo w liczbie pojedynczej page oraz w liczbie mnogiej pages zostay
potraktowane jako ten sam element.
2.2.8. Strona www jako obiekt do klasyfikacji
W pracy tej klasyfikacja strony www odbywaa si na podstawie obecnoci w niej
czstych sekwencji wyszukanych w zbiorze trenujcym. Strona www reprezentowana
bya przez czste sekwencje sw, ktre zawieraa. Obecno kolejnych sekwencji bya
odznaczana za pomoc elementw binarnego wektora. Wspominane czste sekwencje
mog by rnej dugoci. Std model ten mona porwna z binarn reprezentacj gramow, przy czym w czystej reprezentacji gramowej sowa sekwencji musz
rzeczywicie by ssiednimi sowami w tekcie. W reprezentacji wykorzystywanej w tej
pracy nie ma takiego ograniczenia, poniewa przyjto, e maksymalny odstp midzy
kolejnymi sowami sekwencji tekstowej wynosi 3. Ponadto liczba sekwencji brana pod
uwag przy klasyfikacji jest niewielka i uwzgldnia jedynie najczstsze i najbardziej
istotne sekwencje wybrane spord wszystkich znalezionych. Waha si ona midzy 2 a
30 sekwencjami.

13

Przykad
Zamy,

procesie

sekwencjonowania

zostay

wykryte,

nastpnie

wyselekcjonowane do celw klasyfikacji nastpujce sekwencje:


1) homepage
2) departmentcomputerscience
3) researchinterests
4) internationalconference
Przyjmijmy rwnie, e nastpujcy tekst jest treci strony www, cignitej spod
pewnego adresu URL. Strona ta ma sta si obiektem poddanym klasyfikacji.
In my home page you can find information about my research, general interests and
list of my publications.
Pogrubion czcionk oznaczono wyrazy wchodzce w skad wyej wypisanych
czstych sekwencji.
W pierwszym kroku tre strony sprowadzona jest do reprezentacji pozycyjnej wg
schematu opisanego w poprzednim punkcie 2.2.7. W takiej reprezentacji atwo jest
sprawdzi, czy strona zawiera w swojej treci kolejne sekwencje z listy sekwencji
branych pod uwag przy klasyfikacji. Jeli strona zawiera dan sekwencj pod
odpowiedni pozycj w wektorze wynikowym wstawiana jest warto 1, a w
przeciwnym razie 0.
Wektor wynikowy w podanym przykadzie miaby nastpujc posta [1, 0, 1, 0] co
oznacza, e strona zawiera w treci pierwsz i trzeci sekwencj z listy.
2.3. Transformacja dokumentw tekstowych
Kolejna cz rozdziau stanowi opis krokw prowadzcych do sprowadzenia strony
internetowej do postaci obiektu wykorzystywanego w algorytmach eksploracji.
2.3.1. Parsowanie dokumentu HTML
W celu eksploracji zawartoci sieci web potrzeba narzdzia, za pomoc ktrego
moliwe bdzie wygodne wydobywanie interesujcych nas danych. Takim narzdziem
moe by parser jzyka HTML.

14

Parser jest to program dokonujcy analizy skadniowej danych wejciowych w celu


okrelenia ich struktury gramatycznej w zwizku z okrelon gramatyk formaln.
Analizator skadniowy umoliwia przetworzenie tekstu czytelnego dla czowieka w
struktur danych przydatn dla oprogramowania komputera.
W przypadku analizy informacji ze struktury dokumentu HTML umoliwia on
wykonanie takich operacji jak wyszukiwanie elementw strony, wydobywanie treci
konkretnych znacznikw, czy nawet wszystkich treci znajdujcych si we wszystkich
elementach strony.
W pracy interesuje mnie tre strony zawarta we wszystkich znacznikach, natomiast nie
ma dla mnie znaczenia, w jakich znacznikach znajdoway si te treci. Analizie nie jest
poddawana struktura strony, ani sposb rozmieszczenia treci strony.

2.3.2. Tokenizacja
Tokenizacja (inaczej atomizacja) jest pierwszym krokiem analizy dokumentw
tekstowych. Jest to podzia danych na pojedyncze obiekty zwane etonami (ang.
Token). W przypadku tekstu s to po prostu pojedyncze sowa. Tokeny mog si
powtarza, zatem istotna jest rwnie jego pozycja w dokumencie. Tokenizacj zajmuje
si analizator leksykalny inaczej zwany skanerem lub lekserem. Przeglda on kolejne
znaki tekstu i grupuje je w tokeny wedug okrelonej reguy lub zbioru regu. Tokeny
rozpoznawane przez lekser, lub elementy rozdzielajce tokeny, mog by opisane w
programie wyraeniami regularnymi. W pracy korzystam z analizatora leksykalnego
dostpnego w jednej z gwnych bibliotek jzyka Java. Zakada on, e tokeny
rozdzielone s cigami znakw opisanymi wyraeniem regularnym:
[^\\p{L}]+ liczby nie s tokenami
"[\\W]+" uznajcy liczby jako tokeny
Oznacza to, e tokeny (sowa) rozdzielone s cigami znakw, wrd ktrych nie ma
liter (lub nie ma liter ani liczb w drugim przypadku). Dziki temu ju na tym etapie
odfiltrowane s wszelkie znaki nie zoone z liter (np. znaki interpunkcyjne), a do
dalszej analizy przychodz tylko waciwe sowa.
Naley rwnie wspomnie, e po rozpoznaniu tokena nastpuje zamiana wszystkich
jego wielkich liter na mae. Ma to zapobiec rozpatrywaniu przez program tego samego
sowa pisanego rnymi wielkociami liter jako rne elementy.

15

2.3.3. Ograniczanie reprezentacji


Celem kroku jest zmniejszenia wielkoci reprezentacji dokumentu tekstowego poprzez
ograniczanie liczby cech reprezentujcych dokument, przy jednoczesnym zachowaniu
wysokiej jakoci dziaania algorytmu operujcego na tych danych. Nie zawsze, bowiem
zachowywanie jak najwikszej liczby informacji o dokumencie jest korzystne dla
dziaania algorytmu. Pomijajc kwesti efektywnoci, niektre informacje mog
stanowi szum i negatywnie wpywa na wyniki algorytmu.

2.3.3.1.
wietnym

Stemming
sposobem

na

ograniczenie

objtoci

reprezentacji

dokumentw

prowadzcym zazwyczaj rwnie do poprawy jakoci dziaania algorytmu jest proces


stemmingu. Sowo stem po angielsku oznacza rdze, trzon. Proces stemmingu polega
na przeksztaceniu sowa do jego podstawowej formy fleksyjnej.
Algorytm stemmingu wykorzystuje reguy budowy wyrazw panujce w danym jzyku,
do przeksztacenia go do formy podstawowej, wsplnej np. dla wszystkich odmian
jednego sowa. W zwizku z tym ten sam algorytm nie moe by uyty do rnych
jzykw.
Przykad dziaania:
sowa: "fishing", "fished", "fish", "fisher" zostan zamienione na fish
Otrzymany rdze nie zawsze jest istniejcym, poprawnym sowem np.:
{"argue", "argued", "argues", "arguing", "argus"} zamieniaj si w "argu".
Nie ma to jednak adnych negatywnych skutkw dla dziaania algorytmw eksploracji.
Dziki procesowi rne formy tego samego trzonu s reprezentowane jednym wyrazem.
W efekcie zbir rnych sw w dokumencie jest mniejszy oraz co waniejsze sowa o
tym samym znaczeniu, ale w innej formie, czasie lub liczbie s traktowane jako ten sam
element.
Najpopularniejszym algorytmem stemmingu sw jzyka angielskiego jest algorytm
Portera stworzony w 1980r. Dokadny opis algorytmu w [17]. W projekcie
wykorzystywana jest jego implementacja w ramach projektu Snowball1.
Proces stemmingu nie jest krokiem obowizkowym jednak w przypadku zada tej pracy
jak najbardziej podanym.

http://snowball.tartarus.org/index.php
16

2.3.3.2.

Filtracja sw

Kolejnym wanym krokiem przy przeksztacaniu dokumentu tekstowego do


wewntrznej reprezentacji jest filtracja danych zapisywanych do dalszej analizy. Na
tym etapie odrzucane s zbdne sowa, ktre nie nios za sob adnej informacji, nie
posiadaj adnej wartoci semantycznej, a mog negatywnie wpywa na wyniki
dziaania algorytmu. S to zazwyczaj spjniki, rodzajniki czy przyimki takie jak of,
and, the, as. Sowa takie w jzyku angielskim okrelane s czsto jako tzw.
stopwords. Zazwyczaj nie s one potrzebne i jedynie zaszumiaj tekst do analizy,
jednak naley stosowa je z rozwag w przypadku gdy np. istotne w analizie s zwizki
frazeologiczne, ktre bardzo czsto skadaj si z takich sw. Cech charakterystyczn
takich sw jest to, e wystpuj one z podobn czstoci w wikszoci treci, nawet w
aden sposb nie powizanych ze sob tematycznie. Typowo wyrazy z listy stopwords
s wyrazami czsto wystpujcymi w tekcie std te pozbycie si ich znacznie
zmniejszy rozmiar obiektw co bdzie miao pozytywny wpyw na skomplikowanie
problemu, a take wyniki algorytmw eksploracji.
Tabele poniej prezentuj najczciej wystpujce sowa w zbiorze stron domowych
naukowcw i uniwersytetw.

Of
And
Research The In
A
Public Univers For
722
702
676
643 628
609
607
603
589
Tabela 2.3. Najczstsze sowa w grupie stron domowych naukowcw.
Of
Student To
The
And
A
Academ
769
769
768
764
749
742
732
Tabela 2.4. Najczstsze sowa w grupie stron domowych uniwersytetw.

Comput
589
Campus
716

Jak wida, wrd najczstszych wyrazw przewaaj sowa z listy stopwords nadajce
si do usunicia.
Oprcz sw z listy stopwords, ignorowane s rwnie sowa o dugoci jednego znaku.

2.3.3.3.

Waga TF IDF

Decyzja o tym, czy dany atrybut powinien zosta zachowany czy te pominity jest
podejmowana moe by rwnie podejmowana na podstawie tzw. funkcji istotnoci.
Najprostsz tak funkcj jest TFIDF1. Sposb jej obliczania zosta podany podczas
opisu reprezentacji opartej na niej (2.2.5). Atrybuty, ktrych waga nie przekraczaaby
pewnej wartoci progowej nie byyby wczane do reprezentacji [13].
17

3. Wzorce sekwencji
Problem wykrywania sekwencji polega na analizie danych zawierajcych informacje o
zdarzeniach, ktre wystpiy w okrelonych przedziaach czasu lub w okrelonej
kolejnoci w celu znalezienia zalenoci pomidzy wystpowaniem tych zdarze w
czasie. Kiedy wartoci owych zdarze maj charakter numeryczny mamy do czynienia z
analiz trendw lub przebiegw czasowych, co jest podobn jednak inn dyscyplin. W
przypadku, gdy zdarzenia przyjmuj wartoci kategoryczne, jest to problem wzorcw
symbolicznych. Z takim wanie mamy do czynienia w tej pracy, gdzie wartociami s
kolejne sowa treci dokumentu.
Przykadow sekwencj czst moe by nastpujca zaleno:
Klient, ktry kupi ostatni cz sagi Gwiezdnych Wojen w przecigu nastpnego
miesica zakupi Star Treka.
Wzorce sekwencji mog stanowi rdo bardzo uytecznej wiedzy. Za pomoc
wzorcw sekwencji mona bada naturalne wzorce zachowa klientw w sklepach,
sposb

nawigacji

uytkownikw

witryn,

zalenoci

midzy

zdarzeniami

eksperymentach naukowych. W zwizku z tym wzorce sekwencji znalazy


zastosowania w bardzo wielu dziedzinach takich jak:

Analiza koszykowa: Badanie wzorcw zachowa klientw. Moe posuy do


wyznacza strategii marketingowych w odniesieniu do konkretnych klientw np.
przez wybieranie odpowiednich reklam.

Medycyna: Wzorce su do sprawdzania efektywnoci terapii leczenia czy te w


diagnostyce do znalezienia zalenoci midzy wystpieniami symptomw
chorobowych, a rozpoznanymi chorobami.

Serwery www: wzorce sekwencji odkryte poprzez analiz logw serwerowych


pozwalaj np. na znalezienie idealnej struktury logicznej witryny czy te znale
najlepsze miejsce na reklamy.

Telekomunikacja, bankowo, ubezpieczenia: badanie wzorcw zachowa


klientw prowadzcych np. do przejcia klienta do konkurencji.

Kolejnym zastosowaniem wzorcw sekwencji moe by wykorzystanie ich do


klasyfikacji dokumentw tekstowych. Gwnym zadaniem niniejszej pracy byo wanie
zbadaniem efektywnoci takiej klasyfikacji.

18

3.1. Proces odkrywania wzorcw sekwencji


Podstawowym algorytmem odkrywania wzorcw sekwencyjnych jest algorytm GSP
(Generalized Sequential Pattern algorithm). Jest to podstawowy, a za razem pierwszy
algorytm odkrywania wzorcw sekwencji opracowany w 1995r. Bazuje on na
algorytmie apriori wykrywania zbiorw czstych, jest jego rozszerzeniem. Lekko
zmodyfikowana podstawowa wersja GSP umoliwia na uwzgldnianie dodatkowych
kryteriw podczas odkrywania sekwencji. Jest to np. minimalny oraz maksymalny
odstp midzy wyrazami sekwencji lub uwzgldnienie taksonomii elementw
podlegajcych sekwencjonowaniu.
W celu zrozumienia algorytmu potrzebne jest wprowadzenie podstawowych poj i
definicji:

Zbir literaw

} - zbir wszystkich obiektw, ktre mog

pojawi si w sekwencji. Obiekty te nazywane bd elementami.

Transakcja T jest podzbiorem literaw tzn.

elementy w transakcji nie

mog si powtarza.

Sekwencja S jest uporzdkowan list transakcji.

, gdzie Ti

jest wyrazem sekwencji. Wyraz sekwencji nie moe by zbiorem pustym oraz
elementy wyrazu sekwencji nie mog si powtarza.

Zawieranie si sekwencji: Sekwencja


sekwencji

Przykadowo sekwencja
nie zawiera sekwencji

zawiera si w

wtedy, gdy istniej liczby cakowite:


takie, e

wspiera sekwencj

(A) (B) (C, D) zawiera sekwencj

(A) (D), ale

(A) (B, C, D). Inaczej mwi si, e sekwencja

, ale nie wspiera sekwencji

Wsparcie sekwencji sup(S): Iloraz liczby sekwencji, ktre wspieraj S (zawieraj


sekwencj S) do liczby wszystkich sekwencji wystpujcych w bazie danych
sekwencji.
( )

Rozmiar sekwencji - size(S): suma elementw (literaw) wszystkich wyrazw


sekwencji S.

Dugo sekwencji length(S): liczba wyrazw sekwencji S.


19

K-Sekwencja: Sekwencja o rozmiarze K

Podstawowymi

parametrami,

wpywajcymi

na

restrykcyjno

algorytmu,

pozwalajcymi okreli wymagania wobec wykrywanych wzorcw sekwencji s:

minSup(S): Minimalne wsparcie sekwencji w bazie wszystkich sekwencji DS,


ktre musi posiada sekwencja by sekwencj czst.

MaxGap: Maksymalny odstp midzy kolejnymi wyrazami sekwencji.

MinGap: Minimalny odstp midzy kolejnymi wyrazami sekwencji. Bardzo czsto


pomijany.

Wzorzec sekwencji Sekwencja, ktra spenia ograniczenie minimalnego wsparcia


minSup(S) w bazie sekwencji treningowych.
Sprowadzenie wykrywania wzorcw sekwencji w grupie dokumentw tekstowych do
przedstawionej powyej reprezentacji:

Kady dokument, zawierajcy tre pojedynczej strony internetowej jest pojedyncz


sekwencj nalec do bazy danych sekwencji.

Wyrazem sekwencji jest jedno sowo dokumentu lub sowo oraz nazwy grupy, do
ktrych naley dane sowo w przypadku, gdy obecne s taksonomie sw.

Dystans midzy elementami sekwencji jest odlegoci midzy sowami.


Przykadowo odlego sw nastpujcych bezporednio jedno po drugim wynosi
jeden.

3.2. Przebieg algorytmu GSP


1. Sprowadzenie bazy danych do postaci bazy sekwencji.
W konkretnym omawianym przypadku baz danych jest zbir stron internetowych
reprezentowanych przez dokumenty tekstowe. Kady dokument jest sprowadzany
do obiektu sekwencji o wektorowej reprezentacji szczegowo omwionej w
poprzednim sekcji 2.2.7.
2. Znalezienie wszystkich czstych 1-Sekwencji.
Krok ten polega na przejrzeniu wszystkich sekwencji w bazie w celu znalezienia
wszystkich wystpujcych elementw w sekwencjach oraz usuniciu tych, nie

20

speniajcych ograniczenia minimalnego wsparcia (minSup). Wynikiem s


jednoelementowe sekwencje czste, a wic po prostu czste sowa.
3. Sekwencjonowanie
Gwny krok algorytmu, poprzednie dziaania byy jedynie przygotowaniem do
przejcia do tego etapu. W tym miejscu znajdowane s wzorce sekwencji, dugoci
wikszej ni 1.
Jest to proces iteracyjny. W kadej iteracji znajdowane s sekwencje o rozmiarze o
1 wikszym ni te z poprzedniego kroku. Ptla koczy si, gdy w iteracji nie
zostan wygenerowane adne nowe wzorce czste.
Kada iteracja skada si z 2 podstawowych zada:
a) Generacja nowych kandydatw
Polega na generacji kandydatw na sekwencje na podstawie sekwencji czstych
wygenerowanych w poprzedniej iteracji. Skada si z dwch faz:

Faza czenia czenie par (k-1)-Sekwencji w k-sekwencje. Sekwencje


mona ze sob poczy jeli ostatnie k-2 wyrazy pierwszej sekwencji s
identyczne jak k-2 pierwsze wyrazy drugiej sekwencji. Sekwencja moe
by czona sama ze sob. Przykady czenia sekwencji:
(A) (B) (C) oraz (B) (C) (D) jest sekwencja (A) (B) (C) (D),
(A) (B) (C) oraz (B) (C, D) jest sekwencja (A) (B) (C, D),
(A) (A) po poczeniu ze sob da sekwencj (A) (A) (A)

Faza odcicia (ang. Prune) polega na wykorzystaniu wasnoci


apriori, mwicej o tym, e jeli zbir Z nie jest czsty, to kady
nadzbir zbioru Z rwnie nie jest czsty. Przekadajc t regu na
sekwencje otrzymujemy warunek pozwalajcy ju w fazie generacji
zredukowa liczb sekwencji kandydatw. Ma to wpyw na szybko
algorytmu, jako e obliczenie wsparcia sekwencji w caej bazie
sekwencji nie jest operacj szybk. Podczas generacji odrzucane s wic
takie sekwencje, ktre posiadaj podsekwencje, ktre nie s czste.
Przykadowo wiedzc, e sekwencja (A) (C) nie jest czsta moemy
by pewni, e sekwencja zawierajca j: (A) (B) (C, D) rwnie nie jest
czsta, a zatem nie musi by dalej rozpatrywana.

21

b) Pozbywanie si nieczstych kandydatw Przegld bazy sekwencji w celu


obliczenia wsparcia wszystkich wygenerowanych w tym kroku kandydatw oraz
usunicie tych, ktre nie speniaj kryterium minimalnego wsparcia minSup.
Wartym uwagi jest sam algorytm sprawdzania zawierania si sekwencji w
dokumencie

przeksztaconym

uprzednio

do

odpowiedniej

reprezentacji

wykorzystywanej w programie.
Sprawdzanie zawierania sekwencji z uwzgldnieniem ogranicze w
dokumencie
Obiekt reprezentujcy stron www, jest postaci opisanej w 2.2.7. Zamy, e
sprawdzamy

obecno

sekwencji

dokumencie.

Algorytm ma posta rekurencyjn i skada si z dwch faz:


Faza przednia Algorytm sprawdza, czy kolejne elementy zaczynajc od
pocztku sekwencji s zawarte w tej kolejnoci w dokumencie oraz czy odstp
midzy nimi jest odpowiedni (speniajcy ograniczenia minGap oraz maxGap).
Jeli, ktry z elementw sekwencji nie zosta znaleziony, operacja koczy si z
wynikiem negatywnym. Jeli natomiast element zosta znaleziony, ale odlego
midzy nim, a poprzednim jest wiksza od dopuszczalnej uruchamiana jest faza
wsteczna.
Faza wsteczna uruchamiana jest w momencie, gdy odstp w dokumencie
midzy aktualnie znalezionym i-tym oraz i-1 elementem sekwencji jest wikszy
od maxGap. Algorytm w takim przypadku prbuje podcign poprzednie
elementy sekwencji tak, aby speniay ograniczenia. Oznacza to, e w
dokumencie szukany jest i-1 element sekwencji, ktry znajduje si na dalszej
pozycji ni obecnie znaleziony. Jeli nie zostanie znaleziony, algorytm rwnie
koczy si niepowodzeniem. Jeli jednak element zostanie znaleziony
sprawdzane jest, czy spenia on ograniczenia, w stosunku do poprzednich
elementw sekwencji. Jeli nie poprzednie elementy rwnie s w ten sam
sposb podcigane. Dzieje si tak a do pierwszego elementu sekwencji albo
do momentu gdy podcignity element nie naruszy ograniczenia w stosunku
do poprzedniego wyrazu sekwencji. Wtedy to nastpuje przeczenie do
pierwszej fazy.

22

4. Usunicie sekwencji niemaksymalnych


Sekwencja jest maksymalna, jeli nie zawiera si w adnej innej sekwencji. Jest to
krok opcjonalny wykonywaniu w celu pozbycia si nadmiarowych wzorcw
mniejszej dugoci.

3.3. Taksonomie elementw


Do algorytmu mona dodatkowo wprowadzi taksonomi elementw, inaczej mwic
pewne pogrupowanie elementw w nazwane grupy. Uwzgldnienie taksonomii pozwala
na znalezienie bardziej oglnych regu. Za przykad niech posuy taksonomia
przedstawiona na rysunku 3.1.

zwierz

ssak

pies

kot

gad

paz

aba

Rysunek 3.1. Przykadowa taksonomia elementw


Przykad
Wystpujce bardziej szczegowe sekwencje:
(kot) (zamieszkuje) (tereny)
(w) (zamieszkuje) (tereny)
(aba) (zamieszkuje) (tereny)
Mog by zastpione jedn oglniejsz:
(zwierz) (zamieszkuje) (tereny)
Dziki taksonomiom mog zosta odkryte interesujce reguy, ktre inaczej nie
zostayby wykryte z powodu zbyt maego wsparcia przy rozpatrywaniu bardziej
uszczegowionych podobnych sekwencji jako cakiem rne.

23

Modyfikacja algorytmu GSP umoliwiajca uwzgldnienie taksonomii polega na


rozszerzeniu wyrazw sekwencji z bazy sekwencji o nazwy grup, do ktrych nale
elementy tego wyrazu wedug podanej taksonomii (lub kilku taksonomii).
Przykad
Ponownie posikujc si przykadem taksonomii z rysunku 3.1. pierwotna sekwencja z
bazy danych o postaci:
(w) (zamieszkuje) (tereny)
Zostanie zamieniona na:
(w, gad, zwierz) (zamieszkuje) (tereny)
Modyfikacja wydaje si by prost operacj jednak w rzeczywistoci znacznie
komplikuje algorytm.
W przypadku, gdy sekwencje reprezentuj dokument tekstowy bez uwzgldniania
taksonomii, wyrazem sekwencji jest jedno sowo w zwizku z tym wyrazy sekwencji
zawsze s jednoelementowe, a problem sekwencjonowania znacznie uproszczony. Jeli
natomiast wyrazy sekwencji mog zosta rozszerzone, trzeba je rozpatrywa jako
zbiory, co wpywa przede wszystkim na faz generowania kandydatw, a w nastpstwie
przekada si rwnie na efektywno algorytmu.

3.4. Podsumowanie problemu i obserwacje


Wybr algorytmu GSP by podyktowany gwnie tym, e jest to podstawowy algorytm
sucy do wykrywania wzorcw sekwencji. Dostpnych byo bardzo wiele materiaw
opisujcych jego dziaanie i sposb implementacji. Jest to algorytm mniej
skomplikowany

prostszy

do

zaimplementowania

od

innych

algorytmw

sekwencjonowania. Co wicej jest on prosty do rozszerzenia o dodatkowe


funkcjonalnoci takie jak uwzgldnienie taksonomii. Podczas pracy nie wykorzystano
penego potencjau algorytmu sekwencjonowania GSP. Stworzona wersja umoliwia
obsug taksonomii, jednak nie zostao to w tej pracy wykorzystane. By moe
znalezienie odpowiedniej taksonomii elementw dobrze dobranej do tematyki
dokumentw zaowocowaoby odkryciem dodatkowych ciekawych wzorcw.
Algorytmy z rodziny GSP jako jedyne pozwalaj na uwzgldnienie maksymalnej i
minimalnej odlegoci midzy elementami sekwencji. Jest to jednak ju do wiekowy
algorytm w zwizku z tym powstao kilka innych algorytmw lepiej radzcych sobie w
24

niektrych sytuacjach. Jego gwn wad jest saba skalowalno. Opis moliwoci
algorytmu GSP oraz jego dokadniejsze porwnanie z innymi mona znale w [12].
W przypadku analizy bardzo duego zbioru danych wartym zastanowienia jest
skorzystanie z innych algorytmw wyszukiwania sekwencji. Pattern-Growth [18] jest
grup algorytmw prezentujcych inne podejcie do problemu odkrywania wzorcw.
Algorytmy te mog dziaa szybciej przy ustawieniu niskiego wsparcia. Popularnym
przedstawicielem algorytmw z tej grupy jest PrefixSpan [20] lub SPADE [19].

25

4. Klasyfikacja
Klasyfikacja (ang. classification) to jedna z najstarszych jak rwnie najwaniejszych
metod eksploracji danych, ktra ma bardzo istotne znaczenie praktyczne. Polega ona na
znajdowaniu odwzorowania danych w zbir predefiniowanych klas. Na podstawie
zawartoci bazy danych budowany jest model (np. drzewo decyzyjne, reguy logiczne,
tablica prawdopodobiestw), ktry suy do klasyfikowania nowych obiektw w bazie
danych lub gbszego zrozumienia istniejcego podziau obiektw na klasy.
Gwnym

celem klasyfikacji

jest

zbudowanie formalnego modelu

zwanego

klasyfikatorem.
Proces klasyfikacji skada si zazwyczaj z trzech etapw:
1. Budowanie modelu.
Pierwszym krokiem jest zbudowanie modelu (waciwy klasyfikator), ktry
konstruowany jest na podstawie danych treningowych. Jest to zbir obiektw
skadajcych si z atrybutw i ich wartoci oraz jednego atrybutu decyzyjnego (ang.
Class label attribute), do ktrego przypisywana jest etykieta klasy obiektu.
2. Ewaluacja modelu.
Krok ten ma na celu przetestowanie jakoci zbudowanego klasyfikatora,
przetestowaniu dokadnoci klasyfikacji na podstawie danych testowych.
Wane jest, aby do tego zadania wykorzysta specjalnie wydzielone dane testowe.
Nie jest wskazane uywanie do tego celu danych, biorcych udzia w budowaniu
modelu, poniewa moe prowadzi to do zafaszowanego, zbyt optymistycznego
wyniku. Dokadniejszy opis rodzajw ewaluacji modelu przedstawiony zosta w
sekcji dotyczcej testowania (6.5).
Istnieje wiele wspczynnikw opisujcych jako klasyfikatora. Najprostszym,
czsto wystarczajcym jest oglna dokadno klasyfikacji. Jest to stosunek
obiektw poprawnie zaklasyfikowanych do wszystkich obiektw poddanych
klasyfikacji. Wicej o miarach jakoci w sekcji 6.2.
3. Klasyfikacja nowych obiektw.
Ostatnim etapem jest klasyfikacja przy pomocy zbudowanego modelu nowych
obiektw na podstawie wartoci ich atrybutw.
Powstao dotychczas bardzo wiele metod klasyfikacji. Jednym z najpopularniejszych
jak i najprostszych klasyfikatorw jest Naiwny Klasyfikator Bayesa.
26

4.1. Naiwny Klasyfikator Bayesa


Swoj popularno klasyfikator Bayesa zyska dziki swojej prostocie oraz
efektywnoci w wielu przypadkach nie odstpujcej od duo bardziej skomplikowanych
klasyfikatorw. Jest to klasyfikator liniowy, ktrego dziaanie opiera si na
prawdopodobiestwie warunkowym twierdzenia Bayesa:
(

) ( )
( )

Klasyfikacja jest wykonywana na podstawie porwnania prawdopodobiestwa


wystpienia zbioru konkretnych wartoci atrybutw obiektu dla kadej klasy.
Klasyfikator Bayesa zakada, e wartoci atrybutw w klasach s niezalene, std
przydomek naiwny. Jest to tak zwane zaoenie o niezalenoci warunkowej klasy.
Sposb klasyfikacji:
Zamy, e kady obiekt reprezentowany jest przez wektor wartoci atrybutw:
X = (F1,F2 Fn)
Dla kadej klasy Ci obliczane jest prawdopodobiestwo przynalenoci obiektu do tej
klasy, pod warunkiem posiadania danych wartoci atrybutw czyli P(Ci | X).
Obiekt zostaje zaklasyfikowany do tej klasy, dla ktrej takie prawdopodobiestwo jest
najwiksze.
Do obliczenia tego prawdopodobiestwa wykorzystuje si twierdzeniu Bayesa o
prawdopodobiestwie warunkowym:
(

) ( )
( )

Podstawiajc do wzoru otrzymujemy:


P(Ci | X) =

) ( )
( )

) (

) ( )

( )

P(X) prawdopodobiestwo wystpienia przykadu X (o wektorze wartoci atrybutw


(f1,f2 fn),
P(Ci) prawdopodobiestwo wystpienia klasy Ci. Jest to procent obiektw klasy Ci w
zbiorze trenujcym. Czsto przyjmuje si t warto tak sam dla kadej klasy,
P(X|Ci) prawdopodobiestwo wystpienia danej konfiguracji wartoci atrybutw w
klasie Ci
Wszystkie prawdopodobiestwa pobierane s z tablic prawdopodobiestw bdcych
modelem klasyfikatora zbudowanym na podstawie danych treningowych.

27

Przykadowa tablica prawdopodobiestw dla jednej klasy:


warto\atrybut

F1

F2

Val1

0.08

0.12

Val2

0.09

0.01

Tabela 4.1. Przykadowa tablica prawdopodobiestw klasy.


Warto 0.08 na skrzyowaniu Kolumny F1 oraz wiersza Val1 oznacza, e
prawdopodobiestwo wystpienia w obiekcie danej klasy wartoci atrybutu F1 rwnej
Val1 wynosi 8%, wic P(F1=Val1|Ci) = 0.08. Warto ta jest iloczynem liczby obiektw
klasy Ci, w ktrych warto atrybutu F1 wynosiVal1 do liczby wszystkich obiektw tej
klasy.

4.2. Klasyfikatory leniwe


Specyficzn rodzin klasyfikatorw s tzw. klasyfikatory leniwe. Wikszo
klasyfikatorw wykonuje klasyfikacj na podstawie wczeniej zbudowanego modelu na
podstawie danych trenujcych. Ten sam model jest uywany do klasyfikacji kadego
nowego obiektu.
Klasyfikatory leniwe stosuj inne podejcie. Interpretacja danych treningowych (np.
budowanie klasyfikatora) jest opniane do momentu pojawienia si obiektu do
klasyfikacji. Jest on wtedy porwnywany z baz przykadw trenujcych a nastpnie
klasyfikowany. Dziki temu podejciu moliwa jest analiza mniejszej czci bazy
danych, bez przetwarzania danych nierelewantnych wzgldem przykadu do
klasyfikacji. Kolejnym atutem jest moliwo dynamicznej zmiany danych trenujcych
bez koniecznoci przebudowywania klasyfikator. Sama klasyfikacja moe by jednak
dusza z powodu koniecznoci budowania modelu w czasie rzeczywistym.
Wanym pojciem w tym przypadku jest podobiestwo elementw definiowane przez
pewn funkcj podobiestwa.

28

4.2.1. k-Nearest Neighbors (kNN)


Najprostszym klasyfikatorem leniwym jest klasyfikator k-Nearest Neighbors [21]. W
pierwszym kroku znajduje on wrd przykadw treningowych k najbardziej podobnych
(wg okrelonej funkcji podobiestwa) obiektw do aktualnie klasyfikowanego
elementu. Wyborem klasyfikacji bdzie najpopularniejsza klasa wrd k najbliszych
ssiadw tzn. taka, ktra posiada najwicej przedstawicieli w dostpnym zbiorze
trenujcym.

4.2.2. K Star classifier (K*)


Unikalno klasyfikatora K* wynika z jego sposobu obliczania podobiestwa obiektw
na podstawie entropii. Takie podejcie jest motywowane teori informacji. Odlego
midzy dwoma obiektami jest zoonoci transformacji jednego obiektu w drugi.
Transformacja obiektu to sekwencja przeksztace obiektu prowadzca do uzyskania
innego

obiektu.

Im

transformacja

jest

bardziej

zoona

tym

mniejsze

prawdopodobiestwo jej przeprowadzenia.


Prawdopodobiestwo, e obiekt a naley do klasy C jest mierzone jako suma
prawdopodobiestw

transformacji

tego

obiektu

do

kadego

obiektu

danych

treningowych nalecego do klasy C.


(

a obiekt testowy
b obiekt ze zbioru treningowego nalecy do klasy C
Szczegowy opis klasyfikacji metod K* mona znale w [11]
4.2.3. Decisions through Emerging Patterns (DeEPs)
Jest to kolejna metoda leniwej klasyfikacji obiektw jednak koncepcyjnie rnica si
od tych opisanych wczeniej (kNN, K*). W poprzednich przypadkach przeprowadzana
bya analiza bazujca gwnie na odlegoci midzy obiektem, a krotkami
treningowymi, obliczana pewn charakterystyczn dla algorytmu funkcj podobiestwa
midzy obiektami. Rozpatrywano surowe dane treningowe, bez wspomagania si
wydobywaniem wyszego poziomu wzorcw czy regu.

29

Idea klasyfikacji algorytmu DeEPs polega na rozpatrywaniu kombinacji wartoci


wystpujcych czsto w jednej klasie obiektw, ale nie wystpujcych lub
wystpujcych bardzo rzadko w innych klasach. Taka kombinacja jest zbiorem
elementw, w ktrym element oznacza przyporzdkowanie atrybutowi konkretnej
wartoci. W dalszej czci opisu zbir bdzie si odnosi do tej definicji.
Zamy, e obiekty dziel si na dwie klasy:
Pozytywne Dp = {P1, P2 Pn} oraz negatywne Dn = {N1, N2 Nm}
Obiekt do klasyfikacji oznaczany bdzie przez T.
Rozwamy nastpujcy przykad danych treningowych:
F1

F2

F3

Klasa

Tabela 4.2. Przykadowy zbir danych treningowych.


Zbir elementw dla pierwszego obiektu bdzie mia tutaj posta {F1=1, F2=0, F3= 1}
Wzorce wyaniajce (ang. Emerging Patterns EPs) zbiory wartoci atrybutw,
ktrych wsparcie wrd obiektw jednej klasy jest znaczco wiksze od jego wsparcia
wrd obiektw innych klas. Zbir elementw X jest wzorcem wyaniajcym klasy C1,
wtedy gdy spenione jest rwnanie:
( )
( )
gdzie jest pewn, ustalan uprzednio wartoci
rne klasy obiektw
( ),

( ) wsparcie zbioru X, wrd obiektw z klas C1 oraz C2

Wzorce wyskakujce (ang. Jumping Emerging Patterns JEPs) zbiory, ktre


posiadaj wsparcie tylko w jednej klasie obiektw. Jest to szczeglnie rygorystyczny
podzbir wzorcw EP, ktry nie pozwala na istnienie danego wzorca w adnej innej
30

klasie. Inaczej mwic jest to zbir takich konfiguracji wartoci atrybutw, ktra
wystpuje wrd obiektw treningowych tylko jednej klasy.
Ju przy kilku atrybutach obiektw, liczba moliwych kombinacji ich wartoci jest
bardzo dua. Standardowe przechowywanie tylu zbiorw mogoby bardzo niekorzystnie
wpyn na algorytm, a nawet uniemoliwi jego prac w niektrych przypadkach. Aby
rozwiza ten problem wprowadzono nietypowy sposb reprezentacji zbiorw przy
pomocy granic:
Granica (ang. Border) - uporzdkowana para

dwch kolekcji zbiorw, midzy

ktrymi spenione s dwie zalenoci:


X L, Y R, taki e X Y ,
Y R, X L, taki e Y X.
Gdzie X i Y s zbiorami elementw.
Inaczej mwic granica obejmuje wszystkie zbiory, ktre s nadzbiorami, ktrego ze
zbioru z lewej granicy, oraz podzbiorami ktrego z prawej. Lewa granica jest
najbardziej ogln konfiguracj elementw, natomiast prawa reprezentuje najbardziej
szczegowe zestawienie.
Granice pozwalaj na zwize reprezentowanie przestrzeni bardzo wielu zbiorw. Na
granicach moliwe s rwnie rne operacje, takie jak suma, przecicie czy rnica.
Przykad:
Granica postaci < {{1}, {2}}, {{1,4}, {1,2,3}}> reprezentuje nastpujce zbiory:
{1}, {2}, {1, 2}, {1, 3}, {1, 4}, {2, 3}, {1, 2, 3}
Przestrze horyzontalna (Horizontal Space) granica o pustym lewym zbiorze,
przykadowo:
** ++ **

+*

++

Reprezentuje wszystkie podzbiory zbioru {1, 2} lub {1, 3, 5}. Nie ma w tym przypadku
drugiego ograniczenia, poniewa kady zbir jest nadzbiorem zbioru pustego.

4.2.3.1.

Przebieg klasyfikacji metod DeEPs

31

1. Redukcja danych trenujcych.


Celem tego kroku jest pozbycie si znaczcej czci danych trenujcych
nierelewantnych w kontekcie rozpatrywanego obiektu do klasyfikacji. Dziki temu
zabiegowi analizie poddawana jest mniejsza ilo danych, co uatwia problem i
korzystnie wpywa na efektywno algorytmu.
Redukcj wykonuje si przez wykonanie operacji przecicia przykadu testowego i
kadego przykadu treningowego z osobna:
T P1, T P2 . . . , T Pm
Korzystajc z bazy treningowej przedstawionej w tabeli 1 oraz przyjmujc przykad
testowy: T = {F1=1, F2=1, F3= 0}, baza treningowa po intersekcji z przykadem T
przedstawia si nastpujco:
Nr obiektu

F1

F2

F3

Klasa

1
N
4
Tabela 4.3. Zbir danych treningowych po przeciciu z przykadem testowym T.
2. Wyznaczenie przestrzeni horyzontalnej kadej klasy.
Przestrze horyzontalna budowana jest osobno dla kadej klasy obiektw. Powstaje
przez pozostawienie maksymalnych zbiorw powstaych po operacji przecicia
obiektu testowego z kadym obiektem treningowym z tej klasy z osobna. Zbir jest
maksymalny, jeli nie zawiera si w adnym innym zbiorze.
3. Odkrycie wzorcw wyskakujcych (JEPs) oraz wyaniajcych (EPs)
W wyniku odpowiednich operacji na przestrzeniach horyzontalnych klas, mona
wyznaczy wzorce JEP oraz EP.
Zbiory JEP klasy P powstaj przez wykonanie operacji rnicy przestrzeni
maksymalnej tej klasy z przestrzeni klasy przeciwnej N:
JEPs = < { * +, RP > < { * +, RN >
Wynikiem s wzorce, ktre wystpuj w klasie P, ale nie w klasie N.
EP jest wynikiem operacji koniunkcji przestrzeni horyzontalnych rnych klas
obiektw, w celu znalezienia ich czci wsplnej czyli wzorcw, ktre wystpuj w
wrd obiektw obydwu klasy.
32

EP = < { * +, RP > < { * +, RN >


Szczegowy opis operacji na granicach mona znale w [7] i [8].
4. Selekcja wzorcw JEP oraz EP do klasyfikacji
W kroku trzecim zostaj odkryte wszystkie wzorce wyskakujce JEP oraz
wyaniajce EP. W wikszoci przypadkw ich liczba jest bardzo dua i nie
wszystkie mog by uwzgldnione w procesie klasyfikacji. Dlatego te naley
spord nich wybra grup wzorcw, ktre najlepiej nadaj si do ustalenia klasy
obiektu. W pierwszej kolejnoci wybierane s wzorce JEP.
5. Wybr klasy obiektu
Po wyselekcjonowaniu pewnej liczby zbiorw JEP oraz EP biorcych udzia w
klasyfikacji, mona przystpi do wyznaczania jego wyniku. W tym celu dla kadej
klasy obliczana jest pewna warto wsparcia wzorcw JEP oraz EP wrd
przedstawicieli tych klas.
( )

C klasa, dla ktrej obliczany jest wynik


SEP wybrane do klasyfikacji wzorce JEP oraz EP
Dc zbir obiektw treningowych klasy C
(

) liczba obiektw klasy C, wspierajcych cho jeden wzorzec ze

zbioru SEP
Wynik ukazuje, jaka cz obiektw danej klasy pasuje do obiektu poddawanego
klasyfikacji.
Ostatecznie wybierana jest klasa, ktra uzyskaa najlepszy wynik.
Oprcz samych korzyci pyncych z klasyfikacji metod DeEPs, ktra jest w wielu
przypadkach bardzo skuteczna, co potwierdzaj testy przeprowadzone w [8], pozwala
ona na odkrycie interesujcych informacji o przebiegu klasyfikacji. Wzorce
wyskakujce (JEPs) oraz wyaniajce (EPs) mog ukaza informacj o tym, jakie
atrybuty, bd konfiguracje atrybutw przewayy o decyzji klasyfikatora.
Wad tej metody klasyfikacji okazaa si wyjtkowa wraliwo klasyfikatora na
zaszumienie danych treningowych.

33

5. Architektura rozwizania
Czci praktyczn mojej pracy byo stworzenie systemu realizujcego nastpujce
zadania:

Automatyczne pobranie treci stron internetowych (strony domowe naukowcw


oraz strony uniwersytetw) znajdujcych si pod podan, znan wczeniej list
adresw URL.

Znalezienie wzorcw sekwencji z danej grupy stron.

Wykorzystania czstych sekwencji do klasyfikacji stron internetowych jako strony


bdcej stron domow (naukowca lub uniwersytetu) bd nie bdca tak.

W czci praktycznej tej pracy stworzony zosta system umoliwiajcy realizacj


powyszych zada. Program realizujcy opisane w tej pracy zadania zosta napisany w
jzyku Java. Projekt zosta podzielony na kilka moduw realizujcych rne
funkcjonalnoci. Stworzone metody zastay rwnie dokadnie przetestowanie pod
ktem poprawnoci dziaania. Do zadania odkrywania sekwencji stworzony zosta
interfejs graficzny przy uyciu biblioteki Swing. Caa struktura programu oparta jest o
wzorzec projektowy MVC (Model View Controller).
5.1. Pobieranie treci stron www na podstawie adresw URL
Pierwszym krokiem niezbdnym do realizacji pozostaych czynnoci jest zdobycie
odpowiedniego zbioru danych treningowych w postaci negatywnych i pozytywnych
przykadw stron domowych naukowcw i uniwersytetw. Przed przystpieniem do
zadania posiadaem zbir odnonikw URL do takich stron (opis pochodzenia danych w
6.1). Modu ten odpowiedzialny jest za dostarczenie treci stron kryjcych si za tymi
odnonikami do uytku przez program. W tym celu skorzystaem z funkcjonalnoci
biblioteki Jsoup do pracy z dokumentami HTML. Czynnoci prowadzce do uzyskania
czystej treci strony www z podanego adresu URL:
1. Pobranie rda strony znajdujcej si pod danym adresem, moliwe byo
2. Parsowanie

rda

dokumentu

HTML

celu

uzyskania

struktury,

umoliwiajcej wydobycie interesujcych elementw strony.


3. Wydobycie treci wszystkich znacznikw strony ze struktury uzyskanej z
parsowania dokumentu.
34

Powysze zadania byy moliwe do zrealizowania przy pomocy biblioteki Jsoup w


kilku linijkach programu:
//pobranie I parsowanie rda strony
Document doc= Jsoup.connect(http://home.edu.pl).get();
//wydobycie zawartoci wszystkich znacznikw
String pageContent = doc.text();

Z powodu duej licznoci zbioru danych treningowych (kilkaset odnonikw do stron


www), cignicie wszystkich treci stron internetowych byo czasochonnym
zadaniem, ktre trwao kilkadziesit minut. Dlatego system zosta poszerzony o
funkcjonalno zapisania rde stron www do plikw przechowywanych lokalnie na
maszynie roboczej oraz nastpnie wczytania ich. Dziki temu zabiegowi czas
zaadowania do programu treci ok. 1500 stron www udao si zmniejszy do kilku
sekund.
5.2. Modu wykrywania sekwencji czstych
Modu ten realizuje jeden z gwnych celw pracy, czyli odkrywanie sekwencji
czstych

wystpujcych

jakiej

grupie

dokumentw.

Sekwencje

te

charakterystycznymi zwrotami w dokumentach z danej klasy i maj by dalej


wykorzystywane, jako cechy, dziki ktrym odbywa si bdzie klasyfikacja.
Danymi wejciowymi w tym etapie jest zbir treci stron internetowych z jakiej
okrelonej grupy stron np. domowe strony naukowcw.
Nastpnie nastpuje przeksztacenie kadej strony do obiektu o strukturze,
umoliwiajcej programowi ich wygodn analiz. Szczegowo transformacja opisana
w sekcji 2.2.7.
Algorytm jest konfigurowalny i moliwe jest ustawienie jego parametrw
wpywajcych na wykryte wzorce:

Minimalne wsparcie sekwencji czstych (minSup).

Maksymalny dystans midzy wyrazami sekwencji (maxGap).

35

Proces odkrywania wzorcw sekwencji jest dosy skomplikowany, a ponadto wymaga


wielokrotnego dostpu do kilkuset obiektw reprezentujcych dokumenty tekstowe. W
zalenoci od wielkoci zbioru danych oraz parametrw algorytmu operacja ta trwaa
nawet kilkadziesit sekund na redniej klasy komputerze. W zwizku z tym system
zosta wyposaona w opcj zapisu znalezionych sekwencji do pliku. Dziki temu przy
kadej klasyfikacji nie ma potrzeby odkrywania sekwencji.
5.3. Modu klasyfikacji
W ramach tej pracy wykorzystane zostay trzy klasyfikatory: DeEPs, Naive Bayes oraz
KStar. Klasyfikator DeEPs, zosta zaimplementowany w systemie, natomiast pozostae
dwa: Naive Bayes oraz KStar zostay zintegrowane dziki wykorzystaniu biblioteki
WEKA1. Jest to oprogramowanie napisane w jzyku Java, zawierajce szereg
algorytmw eksploracji danych, gwnie z dziedziny klasyfikacji i grupowania. W
czci praktycznej wykorzystane zostay rwnie metody walidacji modelu zawarte w
bibliotece WEKA.
Danymi wejciowymi procesu klasyfikacji s:

Zbir przykadw pozytywnych i negatywnych stron internetowych z okrelonej


grupy (np. domowe strony naukowcw). Zbiory te po przeksztaceniu do
odpowiedniej postaci stanowi bd dane treningowe i testowe.

Wyselekcjonowane czste sekwencje lub sowa wystpujce w pewnej klasie


dokumentw potrzebne do przeksztacenia dokumentw do odpowiedniej
postaci.

Ponisze schematy prezentuj przebieg klasyfikacji strony testowej.

WEKA: http://www.cs.waikato.ac.nz/ml/weka/

36

Rysunek 5.1. Pochodzenie atrybutw obiektw do klasyfikacji

Rysunek 5.2. Schemat klasyfikacji strony www.


37

6. Testowanie
W celu dokadnego przetestowania dokadnoci klasyfikacji stron domowych na
podstawie wystpowania w nich czstych sekwencji tekstowych, przeprowadzono
wielokrotne testy.
6.1. Dane treningowe
Do dyspozycji podczas testw miaem kilkaset przykadw pozytywnych i
negatywnych stron domowych naukowcw oraz podobn liczb przykadw stron
domowych uniwersytetw.
Prawdziwe strony domowe uniwersytetw zostay zaczerpnite z indeksu stron
uniwersytetw na terenie USA znajdujcego si na stronie: http://www.clas.ufl.edu/au/.
Przykady negatywne stron domowych uniwersytetw byy uzyskane z wynikw
zapyta wyszukiwarki internetowej Google. Przykadowa posta takiego zapytania
wygldaa w ten sposb: "University of Dallas" -site:udallas.edu.
Jednak wybierane byy te strony wynikowe, ktre nie byy stron domow tego ani
adnego innego uniwersytetu. Dziki temu przykady negatywne nie byy zupenie
losowe, ale byy to strony, ktre faktycznie mogy by przyjte za prawdziwe strony
domowe uniwersytetw. W ten sposb uzyskano dane, ktre w bardziej obiektywny,
surowy sposb pozwol przetestowa jako klasyfikatorw, poniewa dobrze
imitoway prawdziwe warunki klasyfikacji, gdzie klasyfikator po dokonaniu pewnego
zapytania w wyszukiwarce, majc zbir podobnych stron wynikowych bdzie musia
wybra t waciw.
Zbir pozytywnych przykadw stron domowych naukowcw zosta utworzony na
podstawie bazy ludzi strony DBLP1. Jest to strona zawierajc baz ludzi nauki oraz ich
publikacji zwizanych z dziedzin nauk informatycznych.
Przykady negatywne zostay pozyskane w podobny sposb jak w przypadku
uniwersytetw.
Do analizy uywane byy tylko strony angielskojzyczne.

Digital Bibliography & Library Project

38

6.2. Miary poprawnoci


Do oceny poprawnoci rozwizania stosuje si rne miary, ukazujce jako dziaania
algorytmu.
W niniejszej pracy zadaniem klasyfikatora byo ocenienie czy dana strona jest stron
domow naukowca (lub uniwersytetu). W takim przypadku klasyfikacji, kiedy mona
przydzieli obiektom jedn z dwch klasy, tzn. klasyfikacja ma charakter binarny,
obiekty testowe mona podzieli na cztery grupy:

Tp Prawdziwie pozytywne (ang. True positive) S to obiekty, ktre zostay


zaklasyfikowane jako strony domowe i w rzeczywistoci takimi bdce.

Fp Faszywie pozytywne (ang. False Positive) Obiekty, ktre zostay uznane


przez klasyfikator jako strony domowe, jednak faktycznie nie bdce nimi.

Tn Prawdziwie negatywne (ang. True negative) Obiekty poprawnie


zaklasyfikowane jako nie reprezentujce stron domowych.

Fn Faszywie negatywne (ang. False negative) Obiekty, ktre niewaciwie


zostay uznane za takie, ktre nie reprezentuj stron domowych, kiedy tak
naprawd s nimi.
Zaklasyfikowany jako
pozytywny

Zaklasyfikowany jako
negatywny

Naley do klasy
Tp (True positive)
Fn (False negative)
pozytywnej
Naley do klasy
Fp (False positive)
Tn (True negative)
negatywnej
Tabela 6.1. Podzia obiektw testowych w klasyfikacji binarnej.
Dokadno (ang. Accuracy) Jedna z najwaniejszych miar uywana do oceny jakoci
klasyfikacji. Okrela prawdopodobiestwo poprawnego zaklasyfikowania dowolnego
przykadu testowego. Jest ilorazem obiektw waciwie zaklasyfikowanych oraz
wszystkich obiektw poddawanych klasyfikacji:
Accuracy =

39

Precyzja (ang. Precision) Okrela jaka cz obiektw zaklasyfikowanych pozytywnie


jest poprawna. Inaczej jest to prawdopodobiestwo tego, e obiekt faktycznie jest
pozytywny jeli klasyfikator zaklasyfikowa go jako taki.
Precision =
Zupeno, kompletno (ang. Recall) Inaczej zwana True Positive Rate, jest miar
odpowiadajc na pytanie, jak cz faktycznie pozytywnych obiektw, klasyfikator
zaklasyfikowa poprawnie.
Recall =
Zaszumienie (ang. Fallout) Miara ukazujca stopie bdnego klasyfikowania
obiektw negatywnych jako pozytywne w stosunku do wszystkich negatywnych
obiektw.
Fallout =
F-Measure Popularna miara czca precyzj i dokadno. Czsto nazywana rwnie
miar F1. Liczona jest wg nastpujcego wzoru:
F-Measure =

6.3. Wykryte wzorce sekwencji


Podczas przeprowadzania testw wspczynnik minimalnego wsparcia sekwencji
czstej wrd danych treningowych wynosi 15%, co oznacza e co najmniej 15%
obiektw treningowych z danej grupy, musiao zawiera dan sekwencj aby staa si
ona wzorcem. Jest to liczba ustalona na podstawie dowiadcze, pozwalajca uzyska w
rozsdnym czasie, wystarczajc liczb sekwencji czstych. Przy wikszym progu,
sekwencji byo zbyt mao oraz byy krtkie (maksymalnie 2 elementowe), natomiast
gdy prg by ustawiony zbyt niski, algorytm znajdowa bardzo duo sekwencji, ktre
nie koniecznie byy wystarczajco charakterystyczne dla danej grupy dokumentw.
Poniej zostao przedstawionych kilka najlepszych sekwencji odkrytych w grupie
pozytywnych oraz negatywnych przykadw stron domowych naukowcw.

40

Pozytywne:
1. computerscienceuniversity
2. departmentcomputerscience
3. researchinterests
4. internationalconference
5. homepage
6. researchpublications
Negatywne:
1. contactus
2. privacypolicy
3. computerscience
4. rightsreserved
5. internationalconference
Jak wida w przykadach pozytywnych zostay odnalezione sekwencje, ktre faktycznie
s charakterystyczne dla stron domowych naukowcw w szczeglnoci zwizanych z
naukami Technologii Informacyjnych.
Natomiast czste wzorce sekwencyjne odnalezione w grupie negatywnych przekadw
stron domowych, czyli stron o rozmaitej tematyce, ale nie bdce stronami domowymi
naukowcw, s krtsze i mniej charakterystyczne dla konkretnego tematu. S to typowe
zwroty pojawiajce si na bardzo wielu stronach internetowych niezalenie od ich
tematyki.
Na tej podstawie mona byo przypuszcza, e sprawdzanie obecnoci typowych dla
konkretnej tematyki wzorcw czstych na stronie poddawanej klasyfikacji moe
przynie dobre rezultaty.
6.4. Wybr sekwencji do klasyfikacji
Do dalszej analizy zostaa wybierana pewna liczba N sekwencji. Poowa tej liczby
pochodzia ze zbioru sekwencji odkrytych w grupie dokumentw pozytywnych, a
poowa ze zbioru dokumentw negatywnych. Sekwencje najpierw byy sortowane

41

wedug jakoci, a nastpnie wybierane byy najlepsze. Na jako sekwencji wpyw


miay 2 czynniki:
1) W pierwszej kolejnoci brana pod uwag bya dugo odkrytej sekwencji. Dusze
sekwencje lepiej charakteryzoway dokumenty, w ktrych byy odkryte.
2) Na drugim planie bya popularnoci sekwencji. Im czciej wystpowaa tym bya
lepsza.

6.5. Ewaluacja modelu klasyfikatora


Aby przetestowa dziaanie klasyfikatora naley najpierw odpowiednio przygotowa
zbiory danych treningowych, majc na uwadze fakt rozcznoci danych treningowych,
sucych do budowy klasyfikatora oraz danych testowych, sucych do samego
testowania jego jakoci.
Mona rozrni kilka sposobw walidacji modelu, w zalenoci od sposobu podziau
dostpnych danych na treningowe i testowe:

Prosta walidacja polega na podzieleniu zbioru na dane uczce oraz dane


testowe. Zbir testowy zawiera zazwyczaj nie wicej ni 30% wszystkich
obiektw. Klasyfikator budowany jest z danych treningowych, a sprawdzany
danymi testowymi.

Walidacja krzyowa K-krotna (ang. K-fold Cross Validation) wszystkie


dane dzielone s na K rozcznych, rwnych objtociowo zbiorw. Proces
trenowania klasyfikatora zostaje przeprowadzony K razy, gdzie jeden
wyczony z K zbiorw peni rol zbioru testujcego, za pozostae cznie
stanowi zbir trenujcy. Kadorazowo przeprowadzane s testy, a ostateczny
wynik jest uredniany. Dziki takiemu podejciu kady obiekt treningowy
zostanie dokadnie raz przetestowany, a z drugiej strony wszystkie dane mog
zosta uyte do budowy klasyfikatora.

Leave One Out Odmiana K-krotnej walidacji krzyowej, w ktrej dane


dzielone s na zbiory o rozmiarze jednego obiektu tzn. jeden obiekt jest
testowany, a pozostae su do wytrenowania klasyfikatora. Metoda stosowana
raczej dla maych zbiorw danych.

42

Do ewaluacji poprawnoci uytych w programie klasyfikatorw skorzystano z 4-krotnej


walidacji krzyowej. Oznacza to, e w celu przetestowania dziaania klasyfikatora w
konkretnych warunkach (liczba atrybutw, rodzaj atrybutw) zbir danych dzielono na
cztery rwne czci, a nastpnie czterokrotnie budowano i testowano klasyfikator, za
kadym razem przy innym podziale na dane testowe i trenujce. Ostateczne wyniki
miar byy uredniany z czstkowych wynikw klasyfikatorw wedug strategii
makrouredniania.
czenie czstkowych wynikw testw moliwe jest na dwa sposoby: mikro oraz
makro uredniania. Dla zobrazowania rnicy zamy, e chcemy pozna Precyzj
klasyfikatora: Precision =

Makrourednianie dla kadego z czterech klasyfikatorw liczona jest


precyzja, a nastpnie jest ona uredniana.

Mikrourednianie dla kadego z czterech klasyfikatorw, nie jest od razu


liczona precyzja, ale jedynie zliczane s pewne wyniki klasyfikacji, potrzebne
do jej obliczenia (Tp - True Positives, Fp - False Positives). Na kocu te wyniki
s sumowane i dopiero obliczana jest ostateczna warto precyzji.

6.6. Wyniki testw


Testy prowadzono oddzielnie dla przypadku klasyfikacji stron domowych naukowcw
oraz stron domowych uniwersytetw.
Zostao zbadane jak liczba sekwencji brana pod uwag wpywa na jako klasyfikacji.
W zwizku z tym dla kadego przypadku testy zostay przeprowadzone z liczb
czstych sekwencji bdcych atrybutami obiektu wahajc si midzy 2 a 30.
6.6.1. Porwnanie klasyfikatorw
W testach porwnano wyniki kilku klasyfikatorw, rnicych si znacznie sposobem
dziaania. By to zaimplementowany w ramach tej pracy leniwy klasyfikator DeEPs
(4.2.3), popularny Naiwny Bayes (4.1) oraz dziaajcy w oparciu o entropi klasyfikator
KStar (4.2.2).

43

Na poniszych wykresach pozioma o oznacza liczb atrybutw (sekwencji lub sw)


wzitych pod uwag przy klasyfikacji. O pionowa to warto miary (np. dokadnoci,
precyzji lub zupenoci) w zakresie od 0 do 1.
Nastpujce wykresy prezentuj zestawienie oglnej dokadnoci klasyfikatorw
podczas klasyfikacji stron naukowcw i uniwersytetw najpierw przy uyciu sekwencji
(pierwsze dwa wykresy), a nastpnie przy pomocy sw (kolejne dwa).

Rysunek 6.1. Klasyfikacja sekwencjami stron domowych naukowcw porwnanie


klasyfikatorw.

Rysunek 6.2. Klasyfikacja sekwencjami stron domowych uniwersytetw porwnanie


klasyfikatorw.

44

Rysunek 6.3. Klasyfikacja sowami stron domowych naukowcw porwnanie


klasyfikatorw.

Rysunek 6.4. Klasyfikacja sowami stron domowych uniwersytetw porwnanie


klasyfikatorw
Najczciej najlepszym klasyfikatorem okazywa si KStar, jednak z reguy Naiwny
Bayes nie odstawa znacznie od niego, a nawet w jednym przypadku by lepszy.
Najsabsze wyniki w wikszoci przypadkw osiga klasyfikator DeEPs, zarwno na
zbiorze stron domowych naukowcw jak i uniwersytetw. Przyczyn takich wynikw
moe by dua wraliwo klasyfikatora na zaszumienie danych. Sekwencje tekstowe
wykryte w jednej z grup dokumentw np. w dokumentach pozytywnych czsto
wystpoway rwnie w dokumentach negatywnych. Eliminowao to moliwo
zbudowania wzorca wyskakujcego JEP, zawierajcego tak sekwencj (lub
konfiguracj sekwencji), ktre to byy gwnymi strukturami przy klasyfikacji metod
DeEPs.
Czsto dokumenty poddawane klasyfikacji nie zawieray adnej z czstych sekwencji.
W takim przypadku pozostae klasyfikatory mogy podj decyzj, np. klasyfikator
Bayesa oblicza, w ktrej klasie obiekty treningowe czciej nie zawieray adnych
sekwencji i na tej podstawie podejmowa decyzj. DeEPs jednak w takim przypadku nie
45

mia adnych podstaw do klasyfikacji i w tej sytuacji w testach uznawano to za


przypadek bdnej klasyfikacji. Std taka dua rozbieno w dokadnoci DeEPsa i
innych klasyfikatorw dla maej liczby atrybutw, kiedy taki przypadek by bardzo
czsty.
Problem braku obecnoci dowolnej sekwencji w dokumencie testowym jest dokadniej
przestawiony w dalszej czci pracy.
6.6.2. Liczba atrybutw a jako klasyfikacji
Zaczynajc ju od dwch atrybutw, wyniki s na do wysokim poziomie. Kolejne
zwikszanie atrybutw powoduje raczej agodn popraw klasyfikacji. Przypuszczalnie
jest to zasuga waciwego wyboru sekwencji do klasyfikacji, gdzie wybierane w
pierwszej kolejnoci sekwencje s lepszymi reprezentantami danej klasy. Okazao si
rwnie, e w wikszoci przypadkw nie ma potrzeby uwzgldniania bardzo duej
liczby atrybutw do celw klasyfikacji. Zazwyczaj klasyfikacja osiga najlepsze
rezultaty dla liczby okoo 20 sekwencji, cho czasami wystarczao nawet 10.
6.6.3. Sekwencje a sowa
Dla porwnania efektywnoci klasyfikacji na podstawie wzorcw sekwencji wyniki
zestawiono z klasyfikacj stron jedynie na podstawie czstych sw wystpujcych w
danej grupie dokumentw, bdce w rzeczywistoci sekwencjami o dugoci 1, jednak
do wydobycia ktrych nie s potrzebne skomplikowane algorytmy wykrywania
sekwencji.

Rysunek 6.5. Klasyfikator DeEPs porwnanie klasyfikacji sekwencjami i sowami


stron domowych naukowcw.

46

Rysunek 6.6. Klasyfikator Bayesa porwnanie klasyfikacji sekwencjami i sowami


stron domowych naukowcw.

Rysunek 6.7. Klasyfikator KStar porwnanie klasyfikacji sekwencjami i sowami


stron domowych naukowcw.
Wyniki dla zbioru stron domowych uniwersytetw:

Rysunek 6.8. Klasyfikator DeEPs porwnanie klasyfikacji sekwencjami i sowami


stron domowych uniwersytetw.

47

Rysunek 6.9. Klasyfikator Bayesa porwnanie klasyfikacji sekwencjami i sowami


stron domowych uniwersytetw.

Rysunek 6.10. Klasyfikator KStar porwnanie klasyfikacji sekwencjami i sowami


stron domowych uniwersytetw.
Okazao si, e w zdecydowanej wikszoci przypadkw klasyfikacja na podstawie
czstych sw osiga nie gorsze wyniki ni na podstawie sekwencji. Wszystkie trzy
przetestowane klasyfikatory to potwierdzaj. Zarwno testy na zbiorze stron domowych
naukowcw jak i uniwersytetw przedstawiaj si podobnie. S pojedyncze przypadki,
w ktrych sekwencje s lepszymi atrybutami. Trzeba jednak uzna, e mimo to nadal
klasyfikacja na podstawie sw wydaje si by lepszym rozwizaniem, tym bardziej, e
nie wymaga kopotliwego oraz czsto czasochonnego odkrywania wzorcw sekwencji.
Jak wida klasyfikacja sekwencjami wyjtkowo sabo sprawowaa si w porwnaniu z
klasyfikacj sowami dla maej liczby atrybutw. W miar ze zwikszaniem ich liczby
ta rnica si zmniejszaa. Jest tak dlatego, e pojedyncze czste sowa wystpuj duo
czciej od czstych sekwencji. W przypadku, gdy liczba sekwencji wzita pod uwag
przy klasyfikacji bya niewielka, czsto miaa miejsce sytuacja, w ktrej obiekt testowy
nie zawiera adnej z tych sekwencji. W takiej sytuacji algorytm DeEPs nie ma podstaw
do dokonania jakiejkolwiek decyzji. Przy dwch sekwencjach czstych, w obydwu
48

zbiorach danych (strony domowe naukowcw oraz uniwersytetw) a okoo 70%


obiektw bya nieklasyfikowana.
Potwierdza

to

rwnie

nastpujcy

wykres

ukazujcy

porwnanie

liczby

nieklasyfikowanych obiektw testowych podczas klasyfikacji sekwencjami oraz


sowami w zalenoci od liczby atrybutw wzitych pod uwag.

Rysunek 6.11. Nieklasyfikowane obiekty porwnanie klasyfikacji sekwencjami i


sowami.
W jednym przypadku dao si jednak zauway ciekaw zaleno. Przy niewielkiej
liczbie atrybutw obiekt czsto by nieklasyfikowany. Jeli jednak obiekt zawiera cho
jedn z czstych sekwencji i zosta zaklasyfikowany to dokadno bya bardzo wysoka,
bowiem dochodzca do 100%. wiadczy to o tym, e udao si znale w tym
przypadku sekwencj, ktrej wystpienie, oznaczao prawie cakowit pewno
klasyfikacji. Jeli bra pod uwag tylko te obiekty, dla ktrych zostaa podjta decyzja
klasyfikacji metod DeEPs, czyli prawdopodobnie takie, ktre zawieray cho jedn
sekwencj (lub sowo), klasyfikacja na podstawie sekwencji staje si dokadniejsza ni
na podstawie sw. Nastpujcy wykres przedstawia dokadno klasyfikacji bez
uwzgldnienia obiektw nieklasyfikowanych.

49

Rysunek 6.12. Klasyfikator DeEPs porwnanie dokadnoci klasyfikacji wybranych


obiektw na podstawie sekwencji i sw.
Gdy atrybutw jest niewiele klasyfikator duo rzadziej moe podj decyzj, ale wtedy
jego decyzje s najdokadniejsze. Oznacza to, e najlepsze sekwencje mog wietnie
charakteryzowa grup dokumentw i nadawa si do klasyfikacji, ale niestety rzadko
s obecne w dokumentach.
Tabele poniej prezentuj peny zestaw miar zebranych dla klasyfikacji opisanego
powyej przypadku. Jak wida na przykadzie zbioru stron domowych naukowcw, nie
zawsze jednak udaje si znale tak dobre do klasyfikacji sekwencje.
Atrybuty
2
6
10
14
18
22
26
30
Dokadno
0,97
0,964
0,918
0,879
0,837
0,852
0,855
0,862
Dokadno2
0,274 0,333
0,458
0,561
0,698
0,743
0,76
0,775
(wszystkie obiekty)
Precyzja
1 0,996
0,989
0,979
0,95
0,942
0,929
0,91
Zupeno
0,214
0,308
0,432
0,514
0,655
0,749
0,773
0,796
fMeasure
0,35
0,47
0,601
0,674
0,773
0,835
0,844
0,872
Zaszumienie
0 0,003
0,01
0,018
0,049
0,062
0,087
0,114
Nieklasyfikowane
0,718
0,654
0,493
0,349
0,168
0,127
0,111
0,101

Tabela 6.1. Klasyfikacja stron uniwersytetw metod DeEPs na podstawie sekwencji.


Atrybuty
Dokadno
Dokladnosc2
(Wszystkie
obiekty)
Precyzja
Zupeno
fMeasure
Zaszumienie
Nieklasyfikowane

10

14

18

22

26

30

0,795

0,781

0,761

0,777

0,779

0,757

0,767

0,762

0,241

0,512

0,607

0,687

0,736

0,726

0,742

0,741

0,784
0,203
0,322
0,167
0,697

0,748
0,633
0,686
0,359
0,345

0,738
0,699
0,718
0,333
0,203

0,76
0,759
0,759
0,289
0,116

0,779
0,763
0,770
0,242
0,055

0,781
0,718
0,747
0,223
0,041

0,784
0,751
0,765
0,229
0,033

0,764
0,784
0,774
0,27
0,027

Tabela 6.2. Klasyfikacja stron naukowcw metod DeEPs na podstawie sekwencji.

50

Dla porwnania przedstawiono wyniki klasyfikacji dokumentw tego samego zbioru na


podstawie czstych sw, przy uyciu klasyfikatora Bayesa:
Atrybuty
Dokladnosc
Dokladnosc2
(Wszystkie
obiekty)
Precyzja
Zupelnosc
fMeasure
Zaszumienie

2
0,679
0,679
0,625
0,982
0,764
0,659

6
0,686
0,686
0,632
0,975
0,766
0,638

10
0,707
0,707
0,672
0,929
0,772
0,541

14
0,745
0,745
0,695
0,953
0,8
0,488

18
0,777
0,777
0,728
0,95
0,822
0,416

22
0,791
0,791
0,74
0,961
0,833
0,4

26
0,812
0,812
0,768
0,957
0,848
0,349

30
0,808
0,808
0,759
0,961
0,845
0,364

Tabela 6.3. Klasyfikacja stron naukowcw klasyfikatorem Bayesa na podstawie sw.

51

7. Podsumowanie
Celem pracy byo stworzenie systemu umoliwiajcego wydobycie z pewnej grupy
stron internetowych (w tym przypadku byy to strony domowe naukowcw i
uniwersytetw) czstych sekwencji tekstowych oraz wykorzystanie tych sekwencji do
budowy modeli klasyfikatorw. Nastpnie zbudowane modele klasyfikatorw miay
posuy do zbadania jakoci klasyfikacji stron domowych na podstawie obecnoci
sekwencji w tych stronach oraz porwnanie wynikw z klasycznym podejciem do
klasyfikacji opierajcej si na wystpowaniu czstych sw.
Praca ta omawia kolejne czynnoci prowadzce do realizacji okrelonych celw.
Poczwszy od sposobu pobierania treci stron www na podstawie adresw URL.
Opisuje rne reprezentacje tekstu w algorytmach eksploracji danych tekstowych i
sposoby przeksztacania strony do okrelonej postaci. Szczegowo opisano sposb
odkrywania sekwencji tekstowych z grupy dokumentw tekstowych za pomoc
zaimplementowanego w pracy algorytmu GSP. Przedstawiono rwnie dziaanie
uytych w pracy klasyfikatorw: Naive Bayes, KStar oraz DeEPs. Wyjtkow uwag
powicono klasyfikatorowi DeEPs, ktry zosta zaimplementowany w systemie.
Za pomoc algorytmu GSP udao si wydoby czste sekwencje, ktre faktycznie
sprawiay wraenie charakterystycznych dla grupy dokumentw o danej tematyce np. <
research, interests>. Sekwencje wykryte wrd przykadw negatywnych byy
zwrotami wystpujcymi w wikszoci stron internetowych bez wzgldu na tematyk
(<Contact, us>, <Privacy policy> itp.). Wybrane najlepsze sekwencje wyszukane w
dokumentach pozytywnych oraz negatywnych stanowiy atrybuty obiektu klasyfikacji.
Wszystkie testy wykonane za pomoc trzech wspomnianych wyej klasyfikatorw
wykazay, e skuteczno klasyfikacji stron domowych przy pomocy czstych
sekwencji tekstowych jako atrybuty, nie jest zadowalajca. Okazao si, e jedynie w
nielicznych przypadkach takie podejcie przewysza klasyfikacj w oparciu o czste
sowa. Mogo to by zwizane z rzadkoci wystpowania sekwencji w treci stron
www, w porwnaniu do pojedynczych sw. Wektory reprezentujce wystpowanie
sekwencji w dokumentach miay przewaajc liczb zer, co utrudniao klasyfikacj.
W jednym z przypadkw udao si wykry sekwencje, ktre wietnie charakteryzuj
pewn grup dokumentw i tylko na ich podstawie bardzo dokadnie mona byo
52

wyznaczy klas dokumentu. Wystpoway one jednak raczej rzadko w dokumentach


testowych, w przeciwiestwie do czstych sw. W zwizku z tym dobrym ulepszeniem
systemu klasyfikacji opartego na sekwencjach mogoby by poczenie trafnoci
klasyfikacji najlepszych sekwencji z czstoci wystpowania pojedynczych sw.
Przykadowo w pierwszej kolejnoci klasyfikacja przeprowadzana bya by na podstawie
tylko kilku najlepszych sekwencji, gdy jednak ta zawiedzie, wykorzystywane byyby
czste sowa. Innym podejciem moe by zawarcie zarwno sekwencji jak i czstych
sw

do

zbioru

atrybutw

przy budowie

klasyfikatora.

Kolejnym

wartym

dokadniejszego zbadania ulepszeniem mogoby by uwzgldnienie przy podejmowaniu


decyzji wynikw kilku rnych klasyfikatorw opartych o wykrywanie sekwencji oraz
sw.
Ponadto podczas wykrywania sekwencji nie zostay wykorzystane wszystkie
moliwoci algorytmu GSP. Znalezienie i zastosowanie pasujcej do problemu
taksonomii elementw mogoby pomc wyszuka bardziej oglne wzorce sekwencji
tekstowych, ktre czciej wystpowayby w dokumentach.
Podczas testw porwnano skuteczno klasyfikacji w zalenoci od liczby czstych
sekwencji wzitych pod uwag. Wyniki pokazuj, e nie ma potrzeby uwzgldniania
duej liczby sekwencji. W zalenoci od przypadku ju dla okoo 20 sekwencji, jako
zblia si do maksimum i dalsze zwikszanie atrybutw nie prowadzi do polepszenia
wynikw. Dokadniejsza interpretacja wynikw znajduje si w rozdziale 6,
powiconym opisowi testw.
Duym problemem w przypadku klasyfikacji sekwencjami okazaa si niedoskonao
danych treningowych oraz duy wpyw zaszumienia danych na dziaania algorytmw.
Czstym przypadkiem byo wystpowanie czstych sekwencji wykrytych w
dokumentach

pozytywnych,

rwnie

dokumentach

klasy

przeciwnej.

szczeglnoci negatywny wpyw miao to na algorytm DeEPs, gdzie uniemoliwiao to


lepsze wykrywanie wzorcw wyskakujcych (JEPs), ktre stanowiy gwn si tego
klasyfikatora. Wybr odpowiednich reprezentantw czstych sekwencji

i sw do

klasyfikacji, np. na podstawie wagi TF-IDF, moe by dalszym kierunkiem rozwoju


takiego systemu klasyfikacji.

53

Bibliografia
[1] R. Srikant, R. Agrawal. Mining Sequential Patterns: Generalizations and
Performance Improvements.San Jose, 1996.
[2] Helena Ahonen-Myka. Discovery of Frequent Word Sequences in Text. Helisinki.
[3] Piotr Gawrysiak. Automatyczna kategoryzacja dokumentw. Ph.D., Warsaw
University of Technology, 2001.
[4] Yu Hirate, H. Yamana, Generalized Sequential Pattern Mining with Item Intervals,
Journal Of Computers, Vol. 1, No. 3, June 2006
[5] Celine Fiot, Extended Time Constraints for Generalized Sequential Pattern Mining
[6] J. Han H. Cheng, D. Xin, X. Yan, Frequent pattern mining: current status and
future directions, 2007
[7] J. Li, K. Ramamohanarao, G. Dong, The Space of Jumping Emerging Patterns and
Its Incremental Maintenance Algorithms.
[8] J. Li, K. Ramamohanarao, G. Dong, L. Wong, DeEPs: a New Instance Based Lazy
Discovery and Classification System, 2004.
[9] J. Li, K. Ramamohanarao, G. Dong, Instance Based Classification by Emerging
Patterns.
[10]

J. Li, G. Dong, Efficient Mining of Emerging Patterns: Discovering Trends and

Differences.
[11]

J. Cleary, L. Trigg, K*: An Instance Based Learner Using an Entropic


Distance Measure, University of Waikato.

[12]

M. Wojciechowski, M. Zakrzewicz. Dataset Filtering Techniques in


Constrained-Based Frequent Data Mining.

[13]

P. Andruszkiewicz, Reprezentacje dokumentw tekstowych w kontekcie


wykrywania niechcianych wiadomoci pocztowych w jzyku polskim z
wtrceniami w jzyku angielskim, 2009, Politechnika Warszawska, Instytut
Informatyki.

[14]

M. Kryszkiewicz. Zastosowania i trendy rozwoju metod odkrywania wiedzy.

[15]

Tadeusz Morzy, Eksploracja Danych: Problemy i Rozwizania, Zakopane,


1999.

[16]

Jacek Staniec, Wyszukiwanie Informacji Tekstowej, Warszawa, 2004.

[17]

M. F. Porter. An algorithm for suffix stripping, 1980.

54

[18]

Jian Pei, Pattern Growth Methods for Frequent Pattern Mining, Simon
Fraser University, 2002.

[19]

Mohammed J. Zaki, SPADE: An efficient algorithm for mining frequent


sequences, 2001

[20]

Jian Pei, J. Han, B. Mortazavi-asl, H. Pinto, Q. Chen, U. Dayal, Mei-chun Hsu,


PrefixSpan: Mining Sequential Patterns Efficiently by Prefix-Projected Pattern
Growth, 2001.

[21]

Pdraig Cunningham and Sarah Jane Delany, k-Nearest Neighbour Classifiers,


2007.

55

Vous aimerez peut-être aussi