publikacja on-line - Wyższa Szkoła Informatyki i Zarządzania w

Transkrypt

publikacja on-line - Wyższa Szkoła Informatyki i Zarządzania w
Testy porównawcze metod klasteryzacji jako narzędzia identyfikacji grup studenckich oraz tworzenia klas pytań ankietowych
Marek Jaszuk, Teresa Mroczek, Barbara Fryc
Wyższa Szkoła Informatyki i Zarządzania z siedzibą w Rzeszowie
(Raport cząstkowy z prac realizowanych w ramach projektu pt. Inteligentne
metody analizy szans i zagrożeń w procesie kształcenia)
1. Wstęp
Klasteryzacja lub inaczej analiza skupień jest istotnym elementem prac badawczych prowadzonych
w ramach projektu. Istnieje wiele metod klasteryzacji i prowadzone są wciąż nad nimi nowe badania
(Everitt 2011). Naszym celem nie było jednak opracowanie nowego algorytmu klasteryzacji, a jedynie
ocena pozwalająca na wybór spośród istniejących metod. Zasadniczo zadanie klasteryzacji polega na
znalezieniu zgrupowań obiektów w zbiorze danych w wielowymiarowej przestrzeni. Zgrupowania te
wyznaczają klasy obiektów, z którymi mamy do czynienia. W konsekwencji prowadzi to do zastąpienia
jedną etykietą całej grupy obiektów.
W przypadku naszych badań z zadaniem klasteryzacji mamy do czynienia w dwóch miejscach. Pierwszym z nich jest wyznaczenie grup studentów. Istotność tego zadania wynika z potrzeby określenia
charakterystycznych grup, które osiągają określone rezultaty w trakcie studiów, czyli należą do różnych
grup sukcesu edukacyjnego. Drugie z zadań polega na wyznaczeniu grup, do których możemy zakwalifikować odpowiedzi na pytania ankietowe zadawane studentom. Ta druga klasteryzacja jest o tyle
istotna, że stanowi kluczowy element algorytmu budowy modelu semantycznego. Właśnie dzięk i niej
jesteśmy w stanie wyznaczyć zbliżone do siebie semantycznie zbiory pytań, a w konsekwencji stworzyć
klasy będące podstawą każdego modelu semantycznego.
Zasadniczo do rozwiązania są tutaj dwa problemy. Jednym z nich jest metoda klasteryzacji, a drugim
liczba klastrów jaka będzie najbardziej odpowiednia. Każda ze znanych metod klasteryzacji ma swoją
specyfikę. W niektórych metodach musimy z góry przyjąć na ile klastrów podzielimy zbiór danych. W innych metodach liczba klastrów nie jest z góry zadana, a jest konsekwencją doboru pewnych parametrów algorytmu. Pierwsze z rozwiązań jest o tyle problematyczne, że zazwyczaj nie wiemy jak wygląda
naturalna struktura skupień w zbiorze danych. Narzucenie liczby klastrów może prowadzić do sytuacji,
w której klastry są wyznaczone w sposób sztuczny, źle odwzorowujący strukturę zbioru danych. Lepsze
są algorytmy, które samodzielnie wyznaczają liczbę klastrów przy założonych parametrach algorytmu.
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
Dobór właściwej metody klasteryzacji jest istotny z tego względu, że nie istnieje jedna najlepsza metoda dla wszystkich problemów. Wynika to z faktu, że każdy zbiór danych ma swoją charakterystykę
i metoda, która będzie działała na jednych danych, wcale nie musi sprawdzić się na innych. Zasadniczo
chodzi nam o to, żeby klastry najbardziej optymalnie odwzorowywały zgrupowania danych. Najprostsze metody analizy skupień tworzą klastry o kształcie kulistym. Jest to jednak przypadek bardzo idealny
i w rzeczywistych warunkach rzadko osiągany. Dlatego potrzebne są metody, które odwzorowują skupienia o dowolnym kształcie. Aby ocenić jakość wybranej metody klasteryzacji mierzy się precyzję odwzorowania tych skupień wg pewnych kryteriów. W niniejszym raporcie przedstawione zostaną wybrane kryteria pomiaru jakości klasteryzacji wraz z porównaniem wyników uzyskiwanych przy użyciu
różnych metod klasteryzacji branych pod uwagę w pracy.
Przy okazji metody klasteryzacji należy wziąć także pod uwagę sposób mierzenia odległości pomiędzy
obiektami. W przypadku klasteryzacji grup studentów, miarą odległości jest odległość euklidesowa.
Algorytm wyznaczania odległości semantycznej i tworzenia klas semantycznych wśród odpowiedzi ankietowych opiera się na odległości kosinusowej. Nie każda z metod klasteryzacji pozwala na wykorzystanie obydwu z tych metod. W konsekwencji metody, w których występuje takie ograniczenie, będą
nadawały się tylko do jednego bądź drugiego zadania klasteryzacyjnego.
2. Metody klasteryzacji
Zacznijmy od przedstawienia branych pod uwagę metod klasteryzacji, wraz z krótką charakterystyką
cech każdego z algorytmów, które mogłyby mieć istotny wpływ na wybór optymalnej metody. Wśród
znanych w literaturze metod należało wybrać te, które rokują uzyskanie dobrych wyników na analizowanym zbiorze danych. Przy ocenie wzięto pod uwagę następujące metody klasteryzacji: hierarchiczną, k-means, DIANA, FANNY, SOM, PAM, SOTA, CLARA, Farthest First, X-means, Density Based
Clustering. Poniżej krótka charakterystyka każdej z nich.
Klasteryzacja hierarchiczna
Jest to jedna z najpopularniejszych metod klasteryzacji. Wyróżniamy dwa rodzaje tej metody (Rokach
2005):


Aglomeracyjna – jest to podejście typu „bottom up”. Algorytm rozpoczyna swoje działanie od
przyporządkowania każdemu elementowi zbioru danych osobnego klastra (Murtagh 2014). W
kolejnych krokach algorytmu klastry leżące najbliżej siebie są łączone i w ten sposób tworzą
nowe klastry. Algorytm jest powtarzany aż do momentu, kiedy wszystkie klastry są połączone
w jeden.
Deaglomeracyjna (podziałowa) – podejście przeciwne do metody aglomeracyjnej, czyi „top
down”. Algorytm rozpoczyna swoje działanie od zgrupowania wszystkich danych w jednym
klastrze. Następnie klaster ten jest dzielony rekursywnie, aż do momentu, każdemu elementowi zbioru danych zostanie przyporządkowany indywidualny klaster.
Bez względu na wybrane podejście, wynikiem zastosowania metody hierarchicznej jest struktura drzewiasta klastrów, przedstawiana często w postaci dendrogramu. W zasadzie nie mamy tutaj jednego
podziału na klastry ale całe spektrum możliwości, w zależności od tego, które miejsce w hierarchii wybierzemy. Sama struktura hierarchiczna zazwyczaj nie nadaje się do użycia, gdyż klastry zawierają się
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
jedne w drugich i dla wybranego wektora danych nie możemy podać jednego klastra, do którego on
należy, ale całą hierarchię. Dlatego potrzebne jest przecięcie hierarchii w określonym punkcie, dzięki
czemu każdy punkt danych będzie przyporządkowany tylko do jednego klastra. Do określenia punktu
odcięcia hierarchii posługujemy się parametrem liczbowym, zazwyczaj w zakresie wartości 0-1. Wartość 1 oznacza szczyt hierarchii, wartość 0 to najniższy poziom hierarchii. Przypadki skrajne nie są interesujące. Wybieramy pewną wartość pośrednią. Jest to więc wolny parametr tej metody. Im wyższą
wartość wybierzemy, tym mniejszą liczbę klastrów uzyskamy. Precyzyjny wybór tego parametru zazwyczaj nie jest rzeczą oczywistą. Dlatego należy przeanalizować różne kryteria, które pozwolą nam
ocenić wyniki uzyskane przy takim lub innym podziale zbioru na klastry.
Metoda k-średnich (k-means)
Jest to jedna z najstarszych i najprostszych metod klasteryzacji (MacQueen 1967). W większości przypadków daje słabsze wyniki niż bardziej zaawansowane metody klasteryzacji, chociaż zdarzają się wyjątki. Dlatego warto ją włączyć do analizy celem porównania wyników. Zadaniem do zrealizowania jest
minimalizacja sumy kwadratów odległości pomiędzy elementami poszczególnych klastrów a wektorem
centralnym każdego z klastrów. Problem należy do zagadnień obliczeniowo NP-trudnych, a więc jego
dokładne rozwiązanie nie jest możliwe. W praktyce metoda k-średnich stosuje podejście heurystyczne,
które pozwala na znalezienie zbliżonego do optymalnego rozwiązania. Z punktu widzenia potrzeb projektu istotne jest, że metoda sama nie potrafi określić optymalnej liczby klastrów . Konieczne jest ustalenie tej liczby z góry. Jest to pewne ograniczenie, jednak gdybyśmy znali tę liczbę z góry, to metoda ta
mogłaby być przydatna.
DIANA (Divisive Analysis)
Jest to metoda należąca do metod klasteryzacji hierarchicznej (Borgatti 1994). Zgodnie z nazwą, jej
działanie polega na podziale klastrów. Algorytm w pierwszym kroku buduje jeden duży klaster ze
wszystkich obiektów w zbiorze danych. Następnie wyszukuje się obiekty najbardziej różniące się od
wszystkich pozostałych. Takie obiekty traktowane są jako zalążki osobnych klastrów, na które dzielony
jest klaster główny. Reprezentacja graficzna klasteryzacji uzyskanej tą metodą ma postać dendrogramu
niepodobieństwa. Wybór odpowiedniego punktu w tym dendrogramie generuje nam konkretny zbiór
rozłącznych klastrów. Dzięki temu nie mamy z góry narzuconej liczby klastrów, ale liczba klastrów wynika naturalnie ze struktury zbioru oraz przyjętej wysokości na dendrogramie.
PAM (Partitioning Around Medoids)
Jest to metoda klasteryzacji wykazująca pewne podobieństwa do metody k-średnich (Kaufman 1987).
Jej założeniem jest skupienie obiektów tworzących klastry wokół tzw. medoidów, czyli obiektów o najmniejszej średniej odległości od wszystkich obiektów tworzących klaster. W lite raturze funkcjonuje nazwa k-medoids dla tej metody, a właściwie grupy metod. Kluczową różnicą pomiędzy k-średnich, a tą
metodą jest brak ograniczenia przez założenie odległości euklidesowej między obiektami (co ma miejsce w przypadku k-średnich). Odległość między obiektami jest mierzona poprzez macierz odległości z
dowolnie wyrażoną miarą odległości. Jest to o tyle istotne, że w naszym przypadku interesujące są dwa
możliwe sposoby pomiaru odległości miedzy obiektami – odległość euklidesowa i kosinusowa.
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
Metoda klasteryzacji rozmytej (FANNY)
Jest to istotnie różna metoda od poprzednio wymienionych pod względem tego, że opiera się na teorii
zbiorów rozmytych. Nie mamy więc stuprocentowej przynależności danego obiektu do określonego
zbioru. Zamiast tego posługujemy się funkcją przynależności i algorytm klasteryzacji opiera się na takiej
właśnie funkcji. Oczywiście końcowy wynik musi odpowiadać na pytanie do jakiego klastra należy dany
obiekt. Dlatego na końcu przeprowadza się defuzyfikację poszczególnych klastrów i w ten sposób uzyskujemy podział na klastry taki jak w innych metodach. Podstawowa wersja algorytmu zakłada ustaloną
liczbę klastrów. Mamy tu więc sytuację podobną jak w przypadku algorytmu k-średnich.
Z perspektywy omawianego projektu, wykorzystanie teorii zbiorów rozmytych jest uzasadnione, gdyż
zarówno klasyfikacja studentów jak również odpowiedzi przez nich udzielanych ma charakter rozmyty.
Zazwyczaj nie możemy stwierdzić jednoznacznie, że dany student jest dobry lub słaby. Stwierdzamy to
z pewną dozą przekonania, co w teorii zbiorów rozmytych przekłada się na wartość funkcji przynależności do danego zbioru. To samo dotyczy odpowiedzi w ankietach. Odpowiadający rzadko są w 100%
pewni swoich odpowiedzi. Raczej wybierają odpowiedź, która najbardziej im odpowiada, co nie oznacza, że nie mogliby udzielić odpowiedzi zbliżonej, gdyby jeszcze raz wypełniali ankietę. Dlatego wykorzystanie zbiorów rozmytych jest wartą przetestowania alternatywą dla standardowych rozwiązań
opartych na klasycznej teorii zbiorów (z zero-jedynkową funkcją przynależności).
SOM
SOM (Self-Organizing Map) jest rodzajem sieci neuronowej, której nienadzorowany trening prowadzi
do stworzenia jedno- lub dwuwymiarowej mapy odwzorowania przestrzeni wejściowej. Od nazwiska
twórcy jest również nazywana siecią Kohonena (Kohonen 1982). Atutem tego rozwiązania jest możliwość wizualizacji rozkładu z wielowymiarowej przestrzeni. O tego typu sieci mówi się, że odwzorowuje
relacje topologiczne w danych. Daje to możliwość wyrobienia sobie wyobrażenia o rozkładzie przestrzennym danych. Z punktu widzenia projektu jest to kolejna warta rozważenia i analizy porównawczej alternatywa.
CLARA
Nazwa metody jest skrótem od Clustering for LARge Applications (Kaufman 1990). Zgodnie z nazwą
jest to rozwiązanie służące do klasteryzowania większych zbiorów danych. Działanie opiera się na klasteryzacji z wykorzystaniem k-medoid. Można powiedzieć, że jest to rozszerzenie metody PAM. Czynnikiem odróżniającym te dwie metody jest oparcie wyników na klasteryzacji próbki wybranej z całego
zbioru. Dzięki temu uzyskujemy większą wydajność obliczeń, a przez to możliwość szybkiego przetworzenia dużych zbiorów. Czynnikiem ryzyka w tej metodzie jest właściwy dobór próbek. Dlatego ważne
jest zapewnienie pełnej losowości wyboru próbek do klasteryzacji.
SOTA
Nazwa metody jest skrótem od Self-Organizing Tree Algorithm (Dopazo 1997, Herrero 2001). Jest to
metoda nienadzorowanego uczenia sieci neuronowej o topologii drzewa binarnego. Łączy w sobie zalety zarówno klasteryzacji hierarchicznej, jak i metody samoorganizujących sieci SOM. Jest to metoda
podziałowa, która rozpoczyna działanie od topologii binarnej składającej się z korzenia i dwóch liści.
Proces samoorganizujący dzieli dane na dwa klastry. Po osiągnięciu zbieżności na tym poziomie, sieć
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
jest sprawdzana. Jeśli poziom zmienności jest powyżej zadanego poziomu w jednym lub większej liczbie końcowych węzłów, wówczas drzewo rozrasta się w obszarze tych węzłów. Dwóch nowych potomków jest dodawanych w obszarze tych węzłów. Proces jest kontynuowany aż do os iągnięcia zakładanego kryterium we wszystkich węzłach.
Farthest First
To podejście opiera się na wyborze punktów danych o maksymalnej odległości, przez co maksymalizowany jest promień klastra (Dasgupta 2002). Stąd bierze się nazwa metody Farthest First (Hochbaum
1985). Podobnie jak w przypadku k-średnich mamy tu do czynienia z działaniem w dwóch fazach: wybór centroidów, oraz przypisanie do klastrów. Wybór centroidów rozpoczyna się od wyboru losowego
punktu jako początkowego centrum klastra. Następnie wybierane jest następne centrum, które jest
najdalszym punktem (zgodnie z zadaną metryką) od pierwszego centrum. Kolejne centra są wybierane
w podobny sposób – są najbardziej odległymi punktami od już wybranych. Po wybraniu zakładanej
liczby centroidów, algorytm przypisuje wszystkie pozostałe punkty danych do najbliżej leżących centroidów. Odmiennie niż metoda k-średnich, tutaj wystarczy jednokrotna iteracja algorytmu. Centrami
klastrów są punkty danych, a nie centra geometryczne klastrów, jak w metodzie k -średnich. Warto
porównać wyniki generowane przez te dwie metody.
X-średnich (X-means)
Ten algorytm jest rozszerzeniem metody k-średnich (Pelleg 2000). Początkowo działa jak metoda kśrednich aż do przypisania wszystkich punktów danych do klastrów. Następnie metoda prób uje podzielić każdy z klastrów na dwa odrębne klastry. Metoda x-średnich robi to przez obliczenie Bayesowskiego kryterium informacyjnego zarówno dla oryginalnego klastra, jak również dla dwóch nowych klastrów po podziale. Jeśli wartość kryterium jest wyższa dla nowych klastrów, wówczas są one zachowywane i liczba podziałów jest zwiększana. Atutem tej metody jest to, że liczba klastrów nie jest z góry
ustalona. Jest ona wynikiem analizy skupień danych, więc sam algorytm poprzez wynikową liczbę klastrów dostarcza nam informacji o strukturze danych.
DBSCAN (Density-Based Spatial Clustering of Applications with Noise)
Mając zbiór punktów danych w pewnej przestrzeni, algorytm grupuje razem punkty leżące w mniejszej
odległości od siebie (Ester 1996). Jednocześnie punkty leżące w obszarach o małej gęstości są oznaczane jako szum. Jest to jeden z najpopularniejszych i najczęściej cytowanych algorytmów. DBSCAN
wymaga dwóch parametrów: : ε – promień otoczenia punktu, oraz minimalna liczba punktów wymagana do stworzenia regionu gęstego. Algorytm startuje z dowolnego punktu, który nie został dotychczas odwiedzony. Otoczenie punktu o promieniu ε jest analizowane i jeśli zawiera wystarczająco wiele
punktów, wówczas staje się początkiem klastra. W przeciwnym wypadku punkt j est oznaczany jako
szum. Jednocześnie ten sam punkt może zostać znaleziony w otoczeniu innego punktu i w ten sposób
uczyniony częścią klastra. Proces jest kontynuowany aż do momentu odszukania całego klastra połączonego przez gęstość. Następnie nowy punkt, który dotychczas nie był sprawdzany jest analizowany
w ten sam sposób i może się stać zalążkiem nowego klastra. Istotne w tej metodzie jest to, że klastry
odszukiwane w taki sposób mogą mieć bardzo dowolny kształt. Jednocześnie liczba klastrów nie jest z
góry ustalona, gdyż wynika to ze skupień danych. Oczywiści liczba odkrytych skupień będzie zależała
od parametru otoczenia punktów ε.
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
Model Based Clustering
Dane do klasteryzacji wynikają z pewnego rozkładu statystycznego, będącego kombinacją dwóch lub
większej liczby komponentów. Każdy z komponentów jest opisywany przez funkcję gęstości, oraz ma
dowiązane prawdopodobieństwo lub wagę w mieszance. W zasadzie możemy zaadaptować dowolny
model dla komponentów, ale typowo przyjmuje się, że rozkłady są p-wymiarowymi rozkładami normalnymi. Dlatego rozkład prawdopodobieństwa dla klasteryzacji będzie często mieszanką wielowymiarowych rozkładów normalnych. Każdy z komponentów w mieszance jest tym co nazywamy klastrem.
3. Walidacja jakości klasteryzacji
Zadanie oceny klasteryzacji nie jest rzeczą oczywistą. Wynika to z faktu, że metody klasteryzacji nie
należą do metod uczenia nadzorowanego, ale do metod nienadzorowanych. Dlatego nie ma danych
testowych, z którymi można byłoby porównać wyniki generowane przez daną metodę. Dlatego konieczne jest stworzenie odpowiedniego kryterium ewaluacyjnego.
W literaturze Istnieje wiele metod oceny jakości klasteryzacji. Dzielą się one na dwie kategorie: ewaluację zewnętrzną i ewaluację wewnętrzną. Trudno jednoznacznie określić, które z kryteriów są właściwe
dla celów stawianych w projekcie, którego dotyczy opracowanie. Dlatego wziętych zostało pod uwagę
kilka kryteriów, które zostaną tutaj pokrótce omówione.
3.1 Ewaluacja wewnętrzna
Jeśli klasteryzacja jest ewaluowana w oparciu o dane, które zostały poddane klasteryzacji, to o takiej
metodzie mówimy, że jest to ewaluacja wewnętrzna. Metody tego typu przypisują wysoką wartość
algorytmom, które tworzą klastry o wysokim podobieństwie obiektów należących do poszczególnych
klastrów, przy jednoczesnym niskim podobieństwie pomiędzy klastrami (Manning 2008). Wadą kryteriów wewnętrznych jest to, że wysokie rezultaty w mierze wewnętrznej nie koniecznie muszą przekładać się na dobre rezultaty w konkretnych zadaniach. Ponadto takie metody preferuję algorytmy opierające się na tym samym kryterium, które wcale nie musi być najlepsze.
Wielkościami jakie poddawane są ocenie jest kompaktowość (compactness), łączność (connectedness)
oraz rozseparowanie poszczególnych klastrów. Łączność jest związana z tym, do jakiego stopnia dane
są umieszczone w tym samym klastrze, co ich najbliżsi sąsiedzi w przestrzeni danych (Handl 2005).
Kompaktowość ocenia jednorodność klastrów, zazwyczaj przez sprawdzanie wewnątrzklastrowej
zmienności. Rozseparowanie ocenia stopień rozdzielenia, zazwyczaj przez pomiar odległości między
centroidami klastrów. Kompaktowość i rozseparowanie dotyczą przeciwnych zależności. Kompaktowość zwiększa się z liczbą klastrów, a rozseparowanie zmniejsza. Popularne metody łączą w sobie te
dwie miary w postać jednego parametru. Indeks Dunn (Dunn 1974) oraz Silhouette Width (Rousseeuw
1987) są dwoma przykładami nieliniowych kombinacji kompaktowości, rozseparowania i łączności
(Handl 2005).
Łączność (connectedness)
Niech N oznacza całkowitą liczbę punktów danych w zbiorze (wierszy), a M oznacza całkowitą liczbę
kolumn. Oznaczmy przez 𝑛𝑛𝑖( 𝑗) j-tego najbliższego sąsiada punktu danych i. Niech 𝑥 𝑖,𝑛𝑛𝑖(𝑗) wynosi 0
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
jeśli i oraz j są w tym samym klastrze, a 1⁄𝑗 w przeciwnym przypadku. Wówczas dla określonego podziału na klastry ∁ = {𝐶1 ,. . . , 𝐶𝐾} zbioru N punktów danych na K odrębnych klastrów, łączność jest
zdefiniowana następująco:
𝐿
𝐶𝑜𝑛𝑛(∁) = ∑𝑁
𝑖−1 ∑ 𝑗=1 𝑥𝑖,𝑛𝑛𝑖(𝑗),
gdzie L jest parametrem dającym liczbę najbliższych sąsiadów, których chcemy użyć do obliczenia. Łączność osiąga wartości między 0 a ∞ i powinna być minimalizowana.
Wyniki analizy walidacji wewnętrznej wg kryterium łączności została przedstawiona na Rys. 1. Widać
wzrost tego parametru dla rosnącej liczby klastrów. Większość metod daje zbliżone do siebie wyniki.
Jedyną metodą wyraźnie odstającą od pozostałych jest klasteryzacja hierarchiczna, która daje wyraźnie
lepsze rezultaty, niż pozostałe metody.
Rysunek 1 Walidacja wewnętrzna wg kryterium łączności dla różnej liczby klastrów
Silhouette Width
Silhouette Width jest średnią wartości Silhouette dla każdego punktu danych. Wartość ta mierzy stopień pewności przypisania do klastra danego punktu, gdzie dobrze sklasteryzowany punkt ma wartość
bliską 1, a słabo sklasteryzowany punkt ma wartość -1. Dla obserwacji i parametr ten jest zdefiniowany
jako
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
𝑆(𝑖) =
𝑏 𝑖−𝑎𝑖
,
𝑚𝑎𝑥 ( 𝑏𝑖,𝑎𝑖 )
gdzie 𝑎 𝑖 jest średnią odległością między punktem i oraz wszystkimi innymi punktami danych w tym
samym klastrze, natomiast 𝑏𝑖 jest średnią odległością między i oraz wszystkimi punktami danych tworzącymi najbliżej położony klaster, czyli
𝑏𝑖 =
min
𝐶𝑘 ∈∁\𝐶 ( 𝑖)
∑𝑗∈𝐶𝑘
𝑑𝑖𝑠𝑡( 𝑖,𝑗)
,
𝑛( 𝐶𝑘)
gdzie 𝐶 (𝑖) jest klastrem zawierającym punkt i, 𝑑𝑖𝑠𝑡(𝑖, 𝑗) jest odległością między punktami i oraz j (wg
dowolnej miary), natomiast 𝑛(𝐶𝑘 ) jest liczebnością klastra 𝐶𝑘. Silhouette Width mieści się w interwale
[−1, 1] i powinna być zmaksymalizowana.
Wyniki analizy walidacji wewnętrznej wg kryterium Silhouette Width została przedstawiona na Rys. 2
(legenda jak w Rys. 1). Wartości maleją wraz ze wzrostem liczby klastrów, co dawałoby preferencję
mniejszym liczbom klastrów. Nie da się wskazać jednoznacznie najlepszej metody klasteryzacji. Dla
małych liczb klastrów może być to klasteryzacja hierarchiczna, lub DANA. Dla większych liczb klastrów
(4 i więcej) najlepsze wyniki zostały uzyskane przy pomocy metody k-średnich.
Rysunek 2 Walidacja wewnętrzna wg kryterium indeksu Dunna dla różnej liczby klastrów
Indeks Dunna
Indeks Dunna jest stosunkiem najmniejszej odległości między punktami danych, które nie należą do
tego samego klastra do największej odległości wewnątrzklastrowej. Wartość jest obliczana jako:
min
𝐷 (∁) =
( min 𝑑𝑖𝑠𝑡(𝑖,𝑗))
𝐶𝑘,𝐶𝑙∈∁, 𝐶𝑘≠𝐶𝑙 𝑖∈𝐶𝑘,𝑗∈𝐶𝑙
max 𝑑𝑖𝑎𝑚( 𝐶𝑚)
,
𝐶𝑚∈∁
gdzie 𝑑𝑖𝑎𝑚 (𝐶𝑚 ) jest maksymalną odległością między punktami danych w klastrze 𝐶𝑚. Indeks Dunna
ma wartość między 0 a ∞ i powinien być minimalizowany.
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
Wyniki analizy walidacji wewnętrznej wg kryterium indeksu Dunna zostały przedstawione na Rys. 3
(legenda jak w Rys. 1). Nie widać wyraźnego trendu dla tej wartości w zależności od liczby klastrów.
Najlepsze wyniki zostały uzyskane dla metody DIANA.
Rysunek 3 Walidacja wewnętrzna wg kryterium indeksu Dunna dla różnej liczby klastrów
3.2 Walidacja stabilności
Miary stabilności porównują rezultaty klasteryzacji na całym zbiorze danych z rezultatami na danych
uzyskanych przez usunięcie jednej kolumny. Za każdym razem usuwa się inną kolumnę. Ta miara działa
bardzo dobrze, jeśli dane są mocno skorelowane. Miary jakie się tu stosuje to średnia proporcja nieprzekrycia (APN – Average Proportion of Non-overlap), średnia odległość (AD – Average Distance),
średnia odległość między średnimi (ADM – Average Distance between Means), oraz wydajność (FOM
– Figure of Merit) (Datta 2003; Yeung 2001) . We wszystkich przypadkach średnia jest brana po wszystkich usuniętych kolumnach, a wartość miary powinna zostać zminimalizowana.
APN (Average Proportion of Non-overlap)
Jest to miara określająca średnią proporcję punktów danych, które znalazły się w innym klastrze przy
zamianie zbioru danych z pełnego na zbiór danych z usuniętą jedną kolumną. Niech 𝐶 𝑖,0 reprezentuje
klaster zawierający punkt danych 𝑖, gdzie klasteryzacja jest oparta na zbiorze z usuniętą kolumną ℓ.
Wówczas z całkowitą liczbą klastrów 𝐾, miara APN jest zdefiniowana następująco:
𝑁
𝑀
𝑛(𝐶 𝑖,ℓ ∩ 𝐶 𝑖,0 )
1
)
𝐴𝑃𝑁(𝐾 ) =
∑ ∑ (1 −
𝑀𝑁
𝑛 (𝐶 𝑖,0 )
𝑖−1 ℓ=1
Wartość APN mieści się przedziale [0,1], gdzie wartości bliskie 0 oznaczają stabilne rezultaty klasteryzacji.
Rys. 4. przedstawia wyniki badania wartości kryterium APN dla klasteryzacji zbioru studentów w przestrzeni ocen jakie uzyskali z poszczególnych przedmiotów na koniec semestru. Badania przeprowadzono dla wymienionych wcześniej metod klasteryzacji oraz dla różnych liczb klastrów. Wyniki mają
nam dostarczyć zarówno, która metoda klasteryzacji jest optymalna, jak również jaka liczba klastrów
jest daje najlepsze wyniki. Obserwując otrzymane wartości, widzimy, że wartość parametru stabilności
generalnie rośnie wraz z liczbą klastrów. Można by stąd wysnuć wniosek, że im mniej klastrów tym
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
lepiej. Jest to oczywiście słuszne rozumowanie, jednak należy też brać pod uwagę, że ten parametr nie
jest jedynym kryterium, które należy brać pod uwagę dobierając liczbę klastrów.
Co do metody klasteryzacji, to nie widać wyraźnego lidera. Jedną z mniejszych wartości przyjmuje metoda SOTA, ale nie działa to w pełnym zakresie. Przy mniejszych liczbach klastrów najlepsza okazuje
się metoda SOM.
Rysunek 4 Walidacja stabilności wg kryterium APN dla różnej liczby klastrów
AD (Average Distance)
Miara AD oblicza średnią odległość między punktami danych mieszczącymi się w tym samym klastrze,
przez klasteryzację opartą na pełnych danych oraz na danych z usuniętą jedną kolumną. Miara jest
zdefiniowana następująco:
𝑁
𝑀
1
1
(
𝐴𝐷(𝐾 ) =
∑∑
𝑖,0
𝑀𝑁
𝑛(𝐶 )𝑛(𝐶 𝑖,ℓ )
𝑖−1 ℓ=1
∑
𝑑𝑖𝑠𝑡(𝑖, 𝑗) )
𝑖∈𝐶 𝑖,0 ,𝑗∈𝐶𝑖,ℓ
AD ma wartości z zakresu od 0 do ∞. Im mniejsza wartość, tym lepsza klasteryzacja.
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
Rys. 5. przedstawia wyniki badania wartości kryterium AD dla klasteryzacji zbioru studentów w przestrzeni ocen jakie uzyskali z poszczególnych przedmiotów na koniec semestru. Badania przeprowadzono dla wymienionych wcześniej metod klasteryzacji (legenda taka jak na Rys. 4), oraz dla różnych
liczb klastrów. Wszystkie metody klasteryzacji oprócz hierarchicznej, dają podobne wartości kryterium,
z tendencją do spadku wartości przy większej liczbie klastrów. Jest to więc wskazówka odwrotna niż
daje kryterium. Klasteryzacja hierarchiczna daje wyraźnie gorsze wartości stabilności wg tego kryterium APN.
Rysunek 5 Walidacja stabilności wg kryterium AD dla różnej liczby klastrów
ADM (Average Distance between Means)
Miara ADM oblicza średnią odległość miedzy centrami klastrów, a punktami danych umiejscowionymi
w tym samym klastrze, dla klasteryzacji opartej na pełnym zbiorze i klasteryzacji z usuniętą jedną kolumną danych. Miara jest zdefiniowana następująco:
𝐴𝐷𝑀(𝐾 ) =
1
𝑀𝑁
𝑀
∑𝑁
̅̅̅̅̅,
𝑥 𝐶𝑖,0 ),
𝐶𝑖,ℓ ̅̅̅̅̅̅
𝑖−1 ∑ ℓ=1 𝑑𝑖𝑠𝑡 (𝑥
gdzie ̅̅̅̅̅̅
𝑥 𝐶𝑖,0 jest średnią z obserwacji w klastrze zawierający punkt danych 𝑖, przy klasteryzacji opartej na
pełnych danych, a 𝑥̅̅̅̅̅
𝐶 𝑖,ℓ to taka sama średnia przy klasteryzacji opartej na zbiorze danych usuniętą kolumną ℓ. ADM posiada wartość pomiędzy 0 i ∞, gdzie pożądane są wartości mniejsze.
Rys. 6. przedstawia wyniki badania wartości kryterium ADM dla klasteryzacji zbioru studentów w przestrzeni ocen jakie uzyskali z poszczególnych przedmiotów na koniec semestru. Badania przeprowadzono dla wymienionych wcześniej metod klasteryzacji (legenda taka jak na Rys. 4), oraz dla różnych
liczb klastrów. Wyniki większości metod nie różnią się między sobą. Można zauważyć pewne podobieństwo do wyników uzyskanych przy pomocy metody APN. Wartości rosną wraz ze wzrostem liczby klastrów. Uśredniając wyniki po wszystkich wartościach, najgorsze wartości daje klasteryzacja hierarchiczna, chociaż dla liczby klastrów równej 4, najgorsze wyniki daje klasteryzacja metodą k -średnich.
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
Rysunek 6 Walidacja stabilności wg kryterium ADM dla różnej liczby klastrów
3.3 Ewaluacja zewnętrzna
W ewaluacji zewnętrznej, rezultaty klasteryzacji są oceniane w oparciu o dane, które nie były używane
do klasteryzacji, takie jak znane etykiety klas lub zewnętrzne benchmarki. Takie benchmarki składają
się ze zbioru sklasyfikowanych danych (np. przy wykorzystaniu ekspertów). Tego typu benchmarki
mogą być uważane za złote standardy do ewaluacji. Te rodzaje metod ewaluacji mierzą jak blisko jest
klasteryzacja do określnych przez standard klas.
Omawiane metody budzą wątpliwości związane z zakresem stosowalności. Uważa się, że można je wykorzystywać ale dla danych wygenerowanych w sposób sztuczny do celów testowych (Färber 2010).
W przypadku realistycznych danych możliwość wykorzystania tego typu metod wydaje się ograniczona. Z punktu widzenia odkrywania wiedzy, odtwarzanie znanej wiedzy niekoniecznie musi być tym
o co nam chodzi.
W projekcie, którego dotyczy sprawozdanie, nie ma odgórnie narzuconych punktów dan ych i etykiet.
Dlatego przeprowadzenie takiej ewaluacji nie jest możliwe. Aczkolwiek takiej ewaluacji ni e można wykluczyć w przyszłości, gdy będzie można zidentyfikować wyraźnie rozróżnialne klasy obiektów.
Podsumowanie
W tekście zostały przedstawione wyniki ewaluacji dla zbioru metod klasteryzacji. Brane były pod uwagę
metody wewnętrznej oceny jakości klasteryzacji, oraz testy stabilności. Nie były prowadzone testy wg
zewnętrznych metod ewaluacji, ze względu na brak danych, które mogłyby być wykorzystane do takich
testów. Jednocześnie obliczenia zostały przeprowadzone dla różnych liczb klastrów w celu sprawdzenia, czy metody oceny klasteryzacji dają sugestię co do liczby klastrów. Uzyskane wyniki nie pozwalają
na jednoznaczne wyróżnienie którejś z metod klasteryzacji. W zależności od przyjętego kryterium,
rożne metody wydają się być najlepsze. W przypadku kryterium łączności, wyraźnie najlepsze wyniki
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
dała metoda hierarchiczna. Jeśli jednak weźmiemy pod uwagę kryterium stabilności ADM, to ta sama
metoda wypadła najsłabiej. Dlatego nie możemy wykluczyć użycia żadnej z metod klasteryzacji. Biorąc
pod uwagę, że dla kryterium łączności klasteryzacja hierarchiczna była wyraźnym liderem, oraz biorąc
pod uwagę jej zalety z użytkowego punktu widzenia, można rekomendować tę metodę do wykorzystania w dalszych pracach.
Co do liczby klastrów, to nie ma żadnych wskazówek, które pozwalałyby zdecydować się na określoną
ich liczbę. Powinna ona więc wynikać ze względów praktycznych, tzn. w omawianym przypadku użytkownik rozwiązania, musiałby sam określić jaka liczba grup studentów odpowiadałaby realnemu zapotrzebowaniu.
Szczegóły przedstawionego rozwiązania zostały dotychczas opublikowane w dwóch artykułach o zasięgu międzynarodowym:
1. Marek Jaszuk, Teresa Mroczek, Barbara Fryc, Data Integration through Clustering and Finding
Statistical Relations - Validation of Approach, Proc. of the international workshop Concurrency
Specification and Programming CS&P 2015, Rzeszów, 2015
2. Marek Jaszuk, Teresa Mroczek, Barbara Fryc, Identifying Semantic Classes within Student's
Data Using Clustering Technique, Proc. of the 3-rd International Conference on Data Management Technologies and Applications DATA 2014, Wiedeń, pp.371-376
3. Marek Jaszuk, Teresa Mroczek, Barbara Fryc, Automatyczna identyfikacja relacji semantycznych na przykładzie ankiet studenckich, publikacja on-line: https://www.wsiz.rzeszow.pl/pl/Uczelnia/kadra/mjaszuk/Documents/publikacja3.pdf
Literatura
1. Borgatti S.P., How to explain hierarchical clustering. Connections, 17(2), 1994, pp. 78-80.
2. Dasgupta S., Performance guarantees for hierarchical clustering, in Proceedings of the 15th
Annual Conference on Computational Learning Theory (COLT ’02), Sydney, Australia, July 8-10,
2002, pp. 351-363
3. Datta and S. Datta. Comparisons and validation of statistical clustering techniques
for microarray gene expression data. Bioinformatics, 19(4):459–66, 2003.
4. Dopazo J., Carazo, J.M., Phylogenetic reconstruction using a growing neural network that
adopts the topology of a phylogenetic tree. J. Mol. Evol. 44, 1997, pp. 226-233.
5. Dunn J.C., Well separated clusters and fuzzy partitions, Journal on Cybernetics, 4, 1974 pp. 95–
104.
6. Everitt B., Cluster analysis. Chichester, West Sussex, U.K: Wiley, 2011.
7. Ester M., Kriegel H.P., Sander J., Xu X., A density-based algorithm for discovering clusters in
large spatial databases with noise, Proceedings of the Second International Conference on
Knowledge Discovery and Data Mining (KDD-96), AAAI Press, 1996, pp. 226–231.
8. Färber I., Günnemann S., Kriegel H.P., Kröger P., Müller E., Schubert E., Seidl T., Zimek A., On
Using Class-Labels in Evaluation of Clusterings, In Fern, Xiaoli Z.; Davidson, Ian; Dy, Jennifer.
MultiClust: Discovering, Summarizing, and Using Multiple Clusterings, ACM SigKDD, 2010.
9. Handl J., Knowles J., Kell D.B., Computational cluster validation in postgenomic
data analysis. Bioinformatics, 21(15) 2005, pp. 3201–3212.
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.
10. Herrero J., Valencia A., Dopazo J., A hierarchical unsupervised growing neural network for clustering gene expression patterns. Bioinformatics 17, 2001, pp. 126-136.
11. Hochbaum D. S., Shmoys D.B., A best possible heuristic for the k-center problem, Mathematics
of Operations Research, vol. 10, no. 2, 1985, pp. 180-184.
12. Kaufman L., Rousseeuw P.J., Clustering by means of Medoids, in Statistical Data Analysis Based
on the L1–Norm and Related Methods, edited by Y. Dodge, North-Holland, 1987, pp. 405–416.
13. Kaufman L., Rousseeuw P. J., Clustering Large Applications (Program CLARA), in Finding Groups
in Data: An Introduction to Cluster Analysis, John Wiley & Sons, Inc., Hoboken, NJ, USA , 1990.
14. Kaufman L., Rousseeuw P.J., Finding Groups in Data: An Introduction to Cluster Analysis, WileyInterscience, 2005.
15. Kohonen, T., Self-Organized Formation of Topologically Correct Feature Maps, Biological Cybernetics, 43 (1), 1982, pp. 59–69.
16. MacQueen J., Some methods for classification and analysis of multivariate observations, Proc.
Fifth Berkeley Sympos. Math. Statist. and Probability (Berkeley, Calif., 1965/66) Vol. I: Statistics, 1967, pp. 281–297
17. Manning C.D., Raghavan P., Schütze H., Introduction to Information Retrieval, Cambridge University Press, New York, NY, USA, 2008.
18. Murtagh, F., Legendre, P.: Ward’s Hierarchical Agglomerative Clustering Method: Which Algorithms Implement Ward’s Criterion?. Journal of Classification, 31(3), 2014, pp. 274-295.
19. Pelleg D., Moore A., X-Means: Extending K-Means with Efficient Estimation of the Number of
Clusters, In Proceedings of the Seventeenth International Conference on Machine Le arning,
2000, pp. 727-734.
20. Rokach L., Oded M., Clustering methods. Data mining and knowledge discovery handbook.
Springer US, 2005, pp. 321-352.
21. Rousseeuw P.J., Silhouettes: a graphical aid to the interpretation and validation of cluster analysis, Journal of Computational and Applied Mathematics, 20 1987, pp. 53–65.
Projekt współfinansowany ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego oraz z budżetu Państwa w ramach
Regionalnego Programu Operacyjnego Województwa Podkarpackiego na lata 2007 – 2013.
Inwestujemy w rozwój województwa podkarpackiego.