4.3 Grupowanie według podobieństwa Przykłady obiektów to coś więcej niż wektory wartości atrybutów. Reprezentują one poszczególne rasy psów. Ważnym pytaniem, jakie można sobie zadać, jest to jak dobrymi danymi dysponujemy. Czy informacje jakie posiadamy odzwierciedlają naturalną hierarchię ras. Jednym ze sposobów na znalezienie odpowiedzi, jest zastosowania algorytmów grupowania według podobieństwa. Ten proces uczenia powoduje wyznaczenie pewnego podziału zbioru trenującego na kategorie. Podział odbywa sie przy wykorzystaniu oceny podobieństwa pomiędzy obiektami. W rezultacie otrzymujemy zbiór grup, który możemy wykorzystać nie tylko do oceny poprawności danych. Jednym z możliwych zastosowań jest porównanie różnych metod grupowania i wygenrowanie na tej podstawie wag, określających istotność pewnych cech w ocenie podobieństwa psów. Przykładowo intuicyjnie wielkość psa wydaje się bardziej istotna dla ludzie, niż cecha określająca długość ogona. 4 3 1 Definicja grupowania Grupowanie jest jednym z rodzajów uczenia bez nadzoru. Zbiór trenujący składa się z przykładów nieetykietowanych. Algorytm polega na zaproponowaniu podziału przykładów na kategorię (inaczej zwane grupami, lub też klastrami) i dodatkowo skonstrułowaniu dobrego opisu każdej grupy. Obiekty we wspólnej kategorii powinny być maksymalnie podobne i maksymalnie zróżnicowane między różnymi grupami. Wybór algroytmu grupowania ogranicza się do nastpujących kroków[6]: definicja funkcji podobieństwa określenie metody grupowania Dodatkowo niektóre algorytmy wymagają jeszcze kroku wstępnego, polegającego na selekcji cech, które mają być wykrzystywane w procesie grupowania. Ale nie jest to krok zawsze wymagany. 4 3 2 Grupowanie hierarchiczne Wynikiem grupowania hierarchicznego jest dendrogram. Dendrogram jest diagramem w kształcie drzewa ukazującym związki pomiędzy grupami na podstawie przyjętego kryterium określającego podobieństwo. Standardowy algorytm grupowania przyrostowego 59
Algorithm 4.1 Standard Agglomerative Clustering function agglomerative( E: zbiór_przykładów) returns dendrogram, dla k = 1 do E begin i C i = x i } for k = E down to 1 endloop dendrogram k = C 1... C k i j d i j) = D C i C j ) l m = argmin a b d a b) C l = Join C l C m ) Remove(C m ) end Źródło: Agglomerative Hierarchical Clustering with Constraints: Theoretical and Empirical Results [5] został przedstawiony w listingu 4.1. W pierwszym kroku, każdy z przykładów x i jest umieszczony w osobnej grupie C i. Następnie tworzone są poszczególne elementy dendrogramu. Funkcja odległości D C i C j ) określa podobieństwo pomiędzy parami klastrów. Następnie wybierane są i łączone w jedną, dwie najbardziej podobne grupy. Kryterium stopu, może być umieszczenie wszystkich przykładów w jednym klastrze, lub otrzymanie określonej liczby grup. Większość hierarchicznych algorytmów grupowania opiera się na trzech podstawowych metodach: single-link, complete-link i minimum-variance. Najpopularniejsze są single-link i complete-link. Różnią się one sposobem okreslania odległości pomiędzy kategoriami[6]: single-link: odległość pomiędzy dwiema kategoriami to minimalna odległość pomiędzy wszystkimi parami z tych kategorii (jeden przykład z pierwszej grupy, drugi z drugiej) complete-link: odległość pomiędzy dwiema kategoriami to maksymalna odległość pomiędzy wszystkimi parami z tych kategorii Single-link cierpi na efekt zwany: chaining effect. Ma tendencję do wytwarzania grup, które są nadmiernie wydłużone. Natomiast metoda complete-ling cierpi na inny problem. 60
Wykres 4.1: Maltańczyk i pekińcznyk Źródło: http://images.google.pl/ Poświęca za dużo uwagi wartościom skrajnym, punktów, które nie mieszczą się w globalnej strukturze klastra. 4 3 3 Przykładowe dendrogramy Przy użyciu programu Orange w wersji 1.0b 1 został wykonany dendrogram dla danych psy_29.csv. Jako funkcję oceny wykorzystano jedną z najprostszych miar, każda różnica w wartościach cech podowodwuje wzrost odległości o 1. Algorytm korzysta z metody single-link. W rezultacie otrzymano dendrogram zaprezetowanty na rysunku 4.2. Bardzo podobne do siebie psy zostały połączone w prawidłowe kategorię. Przykładowo maltese i pekingese trafiły do jednego klastra. Podkreślone zostało ich spore podobieństwo, co widać między innymi na rysunku 4.1. W bardziej ogólnej analizie, można zauważyć utworzenie dwóch dużych grup. Jedna zawiera psy rasy od poodle do otterhound, druga resztę psów z wyjątkiem komodora. Jednak ten podział zawiera już błędy. W jednym klastrze znalazły się zarówno shih tzu oraz rottweiler, w drugim np. pekingese i newfoundland. Rasy te są bardzo odmienne i małe jest prawdopodobieństwo, by zostały uznane za podobne. Przyczyną takich pomyłek mogą być: błędy w danych, czyli złe wartości niektórych atrybutów zbyt mała liczba cech 1 Orange: http://www.ailab.si/orange/ 61
Wykres 4.2: Dendrogram dla danych psy_25.csv Źródło: Opracowanie własne 62
jednakowe traktowanie wszystkich atrybutów Jednym z możliwych sposobów radzenia sobie z błędami jest przypisywanie atrybutom wag, które mogą być użyte do obliczania podobieństwa. Wyznaczanie wag, może być wykonane poprzez analizę ocen podobieństwa ras, jakie dokonują ludzie. Powinno zapobiec to umieszczaniu skrajnie niepodobnych psów w jednej grupie. 63