Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS
Dyskretyzacja - definicja Dyskretyzacja - zamiana atrybutów ciągłych (wartości z R) na dyskretne (przyjmujące jedną ze z góry ustalonych możliwych wartości). Terminu używa się także w przypadku agregacji atrybutów porządkowych, tzn. rzutowaniu atrybutów przyjmujących wartości całkowite na mniejszą liczbę reprezentantów.
Dyskretyzacja - cele Dyskretyzacja umożliwia zastosowanie klasyfikatorów, które nie obsługują wartości ciągłych. W przypadku klasyfikatorów obsługujących atrybuty ciągłe, dyskretyzacja pozwala na uproszczenie modelu klasyfikatora, a także pozwala osiągnąć lepsze wyniki klasyfikacji.
Pomysł Algorytmy klasteryzacji dzielą zbiór danych na grupy (klasy), w taki sposób, żeby zmaksymalizować podobieństwo próbek w ramach jednej klasy i zminimalizować podobieństwo grup między sobą. Pozwala to na: równomierne pokrycie próbek reprezentantami klas, uproszczenie rozwiązywanego problemu dzięki użyciu reprezentantów zamiast pełnego zakresu danych. Dlaczego więc nie zastosować klasteryzacji jako metody dyskretyzacji?
Ogólny algorytm 1. Posiadamy macierz M (n,m+1) z próbkami uczącymi. W n wierszach znajdują się kolejne próbki, które opisane są m atrybutami i klasą decyzyjną. 2. Dla każdego i=1,,m: 1. Przypisz do X i-tą kolumnę z M; 2. Przeprowadź dyskretyzacje dla X; 3. Wyznacz przedziały dyskretyzacji na podstawie wyniku dyskretyzacji; 4. Rzutuj wartości z X na odpowiadające im przedziały dyskretyzacji. 3. Uruchom algorytm klasyfikacji na zdyskretyzowanych danych.
Korzyści Wartości, których występuje więcej mają większy wpływ na wynik klasyfikacji. Pokrywamy zakres danych przedziałami dyskretyzacji w taki sposób, że: Każda liczna grupa posiada swojego reprezentanta; Grupy o małej liczbie próbek także posiadają swoich reprezentantów*; Duże grupy mogą zostać rozdzielone na wiele przedziałów dyskretyzacji. *w zależności od maksymalnej liczby przedziałów dyskretyzacji;
Badane algorytmy i ich warianty Dyskretyzacja równych przedziałów; Dyskretyzacja równych częstotliwości; Rosnący gaz neuronowy: Warunek stopu: liczba spójnych składowych topologii równa zadanej liczbie przedziałów dyskretyzacji -1; Warunek stopu: liczba neuronów równa zadanej liczbie przedziałów dyskretyzacji -1; Algorytm k-średnich: Klasyczne rzutowanie próbek na przedziały dyskretyzacji wykorzystując diagramy Woronoja; Ważone rzutowanie próbek.
Klasyfikacja metod dyskretyzacji
Algorytm k-średnich 1. Wybierz k początkowych środków i przyporządkuj każda próbkę do najbliższego środka. 2. Oblicz środki ciężkości dla każdej z grup. 3. Przyporządkuj każdą próbkę do najbliższego środka ciężkości. 4. Powtarzaj punkty 2 i 3 tak długo, póki występują zmiany przyporządkowania.
Dyskretyzacja na podstawie algorytmu k-średnich
Algorytm k-średnich
Pozostałe algorytmy (1) Dyskretyzacja równych przedziałów Dzieli dziedzinę atrybutu na zadaną liczbę przedziałów o równej długości. Dyskretyzacja równych częstotliwości Sortuje wartości atrybutu, a następnie przydziela kolejno do przedziałów dyskretyzacji tak długo, aż liczba wartości w przedziale nie przekroczy (liczba próbek/liczba przedziałów).
Pozostałe algorytmy (2) Rosnący gaz neuronowy Dla rozkładu P tworzy indukowaną triangulacje Delaunay (ang. induced Delaunay triangulation) graf, który posiada spójne składowe w obszarach, na których gęstość P przyjmuje wysokie wartości.
Histogram
Dyskretyzacja równoczęstotliwościowa
Dyskretyzacja równoprzedziałowa
Pożądany wynik dyskretyzacji wykorzystującej klasteryzację
Miara efektów (1) Nie istnieje jedna właściwa miara efektów dyskretyzacji. Często używa się miar bazujących na entropii. Pozwala to na szybką ocenę podziału i jest możliwe do zastosowania np. w k krotnej walidacji krzyżowej.
Miara efektów (2) Miary bazujące na entropii nie są jednak idealne. Stosowanie ich oznacza przyjęcie założenia o niezależności zmiennych, podobnego jak w naiwnym klasyfikatorze Bayesa. W przypadku klasyfikatorów regułowych może to utrudniać budowę poprawnego modelu.
Miara efektów (3) Celem przeprowadzenia dyskretyzacji jest skorzystanie z klasyfikatora. Z tego też względu jako najbardziej rzetelną miarę efektów dyskretyzacji postanowiliśmy przyjąć procent poprawnie sklasyfikowanych próbek przy użyciu różnych klasyfikatorów, jednocześnie budując model klasyfikatora przy użyciu 10 krotnej walidacji krzyżowej.
Metodyka badań i wyniki (1) Testy przeprowadziliśmy dla zbiorów danych: Ionosphere, iris, wheather Użyliśmy klasyfikatorów: Tabele decyzyjne, PART, Ridor Zbadaliśmy następujące liczby przedziałów: 5,6,7 I wykonaliśmy 10-krotną walidację krzyżową dla każdego możliwego zestawienia parametrów.
Metodyka badań i wyniki (2) Poskutkowało to przeprowadzeniem 270 testów. Badania zostały wykonane przy użyciu środowiska Weka, zaś testowane algorytmy dyskretyzacji zostały zaimplementowane jako filtry danych.
Wyniki: Rosnący gaz neuronowy (1) Wyniki pokazują, że rosnący gaz neuronowy nie nadaje się do zastosowania jako metoda jednowymiarowej klasteryzacji. W żadnym z wariantów nie udało się uzyskać satysfakcjonujących wyników. Wariant pierwszy aby uzyskać zadaną liczbę spójnych składowych musiał korzystać z takich wartości parametrów, które powodowały, że spójne składowe były wyznaczone losowo.
Wyniki: Rosnący gaz neuronowy (2) Wariant drugi także nie przyniósł pożądanych efektów. Sąsiedztwo topologiczne w jednowymiarowej przestrzeni powodowało, że wszystkie neurony były skupione w jednym obszarze, nie pokrywając równomiernie całego przedziału. W wyniku otrzymywaliśmy histogram z wysoką wartością w jednym przedziale i bliskimi zeru wartościami w pozostałych.
Tabela wyników zbiorczych
Średni wynik w zależności od algorytmu i zbioru danych 100 95 90 85 80 75 70 ionosphere iris weather 65 60 55 50 EqualFrequency EqualWidth KMeans KMeansWeighted
Praktyczne zastosowania
Dalsze możliwości rozwoju Dyskretyzacja wieloatrybutowa dyskretyzacja połączona z redukcją wymiarowości. Uruchamia się proces klasteryzacji dla większej liczby wymiarów, przeprowadza klasteryzacje i na podstawie uzyskanych klastrów przeprowadza dyskretyzacje wielu atrybutów w jeden.
Dziękuję za uwagę