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.