1. 1.1. 2. 3. 3.1. 3.2. Grupowanie...1 Algorytmy grupowania:...1 Grupowanie metodą k-średnich...3 Grupowanie z wykorzystaniem Oracle Data Miner i Rapid Miner...3 Grupowanie z wykorzystaniem algorytmu K-Means w środowisku ODM...3 Grupowanie w środowisku Rapid Miner a...7 1. Grupowanie Grupowanie jest metodą tzw. klasyfikacji bez nadzoru (ang. unsupervised learning). Podział obiektów na klasy jednorodne realizowany jest na podstawie podobieństwa elementów. Kryteria podziału: P={Aq} q, gdzie qaq=i Aq Aq =Ø, q<>q, I zbiór obiektów, W celu określenia podobieństwa rekordów bazy danych należy wykonać: Przekształcenie wszystkich wartości zmiennych w zmienne numeryczne. Gdy dwa punkty są bliskie w sensie geometrycznym odpowiadają podobnym rekordom w bazie danych. Podobieństwo zmiennych ilościowych określa się jako: Odległość między punktami Kąt miedzy wektorami Zmiennych nominalnych i zmiennych porządkowych nie można traktować jako składowe wektora położenia, Podobieństwo zmiennych jakościowych określa się jako liczbę wspólnych cech Zmienne mogą mieć różny wkład w położenie punktu, by uniknąć nadmiarowości zmiennych stosuje się: Dzielenie każdej zmiennej przez średnią Normalizacja - Dzielenie każdej zmiennej przez zakres, po odjęciu najmniejszej wartości Standaryzacja - Odjęcie średniej od każdej zmiennej i podzielnie zmiennej przez odchylenie standardowe 1.1. Algorytmy grupowania: Algorytmy poszukiwania ogólnego ekstremum funkcji kryterialnej, Wyznaczeniu wszystkich możliwych podziałów elementów przestrzeni na zadaną ilość grup. Określenie wartości przyjętej funkcji kryterialnej dla każdego z wyznaczonych podziałów. Za optymalny uznaje się ten, dla którego wartość funkcji kryterialnej osiągnęła ekstremum.
Algorytmy hierarchicznego podziału i grupowania. Algorytmy hierarchicznego podziału - poszukiwanie takiego podziału elementów przestrzeni na dwa rozłączne podzbiory, aby przyjęta funkcja kryterialna osiągnęła dla niego ekstremum. Po wyznaczeniu optymalnego podziału na dwie grupy, algorytm ma za zadanie wybrać spośród wszystkich grup, tę o najmniejszej spójności, i podzielić ją na dwie grupy, aby osiągnąć ekstremum przyjętej funkcji kryterialnej. Algorytmy hierarchicznego grupowania - łączenie w grupy elementów o największym podobieństwie. W pierwszym kroku każdy element przestrzeni stanowi oddzielną jednoelementową grupę. Następnie kolejno w każdym kroku następuje łączenie w grupy elementów, których wzajemne podobieństwo jest największe. Metody iteracyjne Wybór elementów, które można uznać za początkowe przybliżenie reprezentantów q(v1),...,q(vl). Przeprowadzenie klasyfikacji elementów, polegającej na takim przyporządkowaniu każdego elementu do grupy wyznaczonej przez reprezentanta, dla którego funkcja podobieństwa osiąga ekstremum. Określenie nowego położenie reprezentantów dla nowo wyznaczonych grup Gdy nowo wyznaczeni reprezentanci grup różnią się od reprezentantów z poprzedniego kroku iteracji, należy powrócić do kroku drugiego uwzględniając nowych reprezentantów grup. Natomiast w przypadku, gdy nowo wyznaczeni reprezentanci są identyczni z tymi z poprzedniego kroku iteracji, wówczas uzyskany podział uważa się za optymalny. Gdy obiekty nie poddają sie transformacji do przestrzeni euklidesowej, proces grupowania wymaga zdefiniowania innych miar odległości (podobieństwa): sekwencja dostępów do stron WWW, sekwencje DNA, sekwencje zbiorów, zbiory atrybutów kategorycznych, dokumenty tekstowe, XML, grafy, itp.. Ocena podobieństwa stron WWW: punkty w przestrzeni wielowymiarowej, w której pojedynczy wymiar odpowiada jednemu słowu z określonego słownika. Podobieństwo (odległość) D(x, y) stron x i y zdefiniowane jako znormalizowany iloczyn skalarny wektorów reprezentujących x i y, tj. miarę kosinusową. Współrzędne dokumentu w przestrzeni są zdefiniowane jako względna częstość występowania słów ze słownika
2. Grupowanie metodą k-średnich Klasyczny algorytm k-średnich (J. MacQueena), nazywany algorytmem centroidów, został spopularyzowany przez Hartigana i Wonga. Grupowanie metodą k-średnich polega na przypisaniu obserwacji (przy ustalonej liczbie k) do skupień. Następnie uzyskany podział jest poprawiany w ten sposób, że niektóre elementy są przenoszone do innych klas, tak, aby uzyskać minimalną wariancję wewnątrz uzyskanych klas. Proces ten powtarzany jest iteracyjnie tak długo, aż żaden z obiektów nie zmieni swej przynależności do klastra. 3. Grupowanie z wykorzystaniem Oracle Data Miner i Rapid Miner Zaimportuj tabelę z danymi. Dane: churn.txt. 3.1. Grupowanie z wykorzystaniem algorytmu K-Means w środowisku ODM. 1. Uruchom narzędzie Oracle Data Miner i połącz sie z serwerem bazy danych. 2. Z menu głównego wybierz Activity_Build. 3. Z listy Function Type wybierz Clustering. Rozwin listę Algorithm i wybierz z niej algorytm K-Means. 4. Wskaż schemat DMUSER i tabele CHURN (sprawdź nazwę pliku) jako zródło danych do eksploracji. Jako klucz podstawowy wskaż atrybut CUST_ID. W grupowaniu wykorzystaj następujące zmienne: account_length (czas współpracy) international_plan (plan międzynarodowy) voice_mail_plan (poczta głosowa) total_day_minutes (całkowita liczba minut w ciągu dnia) total_eve_minutes (całkowita liczba minut wieczorem)
total_night_minutes (całkowita liczba minut w nocy) total_intl_minutes (całkowita liczba minut rozmów międzynarodowych) total_intl_calls (całkowita liczba rozmów międzynarodowych) number_customer_service_calls, ( liczba rozmów z biurem klienta) 5. Podaj nazwę i krótki opis procesu eksploracji. 6. Kliknij przycisk Advanced Settings. Upewnij sie, że na zakładce Sample opcja próbkowania jest wyłączona (pole wyboru Enable Step jest odznaczone). Analogicznie upewnij sie, że wyłączone są kroki Outlier Treatement, Missing Values i Normalize. Przejdz na zakładke Build, wpisz wartosc 3 jako liczba klastrów (Number of Clusters). Wybierz euklidesowa funkcje odległosci (Distance Function - Euclidean), oraz Split Criterion ustaw na Size. Kliknij przycisk OK. 7. Upewnij sie, że opcja Run upon finish jest włączona. 8. Kliknij na odnośnik Result w bloku Build. Zaznacz opcję Show Leaves Only.
9. Przejdź na zakładkę Rules. Zaznacz opcję Only Show Rules for Leaf Clusters. Wybierz dowolny klaster i przeanalizuj atrybuty, które trafiają do wybranego klastra. 10. Zastosuj zbudowany model. W tym celu Z menu głównego wybierz Activity_Apply. Wybierz odpowiedni model (zbudowany w punkcie B) Wybierz odpowiedni zbiór danych
Wybierz atrybuty cust_id, churn, number_vmail_messages, international_plane Zaznacz Number of best cluster id Wprowadź opis 3. Przeprowadź analizę uzyskanych wyników
3.2. Grupowanie w środowisku Rapid Miner a Przygotuj diagram procesu analizy z wykorzystaniem algorytmu k-means Utwórz nowy proces ksrednich Zamieść operator Retrive (Repository Access->Retrive), który umożliwi wczytanie danych ze zbióru Iris (dostepny w przykładach). Wykorzystaj operator Select Attributes (Data Transformations -> Attribute Set Reduction and Transformations -> Selection -> Select Attributes). W algorytmie grupowania wykorzystane zostaną tylko a3, a4 i label Zamieścć operator grupowania metodą k-średnich (Modeling -> Clustering and Segmentation -> k-means). Ustal liczbę klastrów na 2
Uruchom proces Przeprowadź analizę uzyskanych wyników. Sprawdź jak zmieniają się wyniki przy zmianie liczby ugrupowań. Wykres rozproszenia dla badanych atrybutow Wyniki grupowania:
Przeprowadź analizę dla innej liczby klastrów Żródła: http://wazniak.mimuw.edu.pl/index.php?title=eksploracja_danych http://download.oracle.com/docs/cd/b28359_01/datamine.111/b28129/clustering.htm#b ABCEACC http://download.oracle.com/docs/cd/b28359_01/datamine.111/b28129/algo_oc.htm#ba BFDDJB http://www.statsoft.pl/textbook/stathome_stat.html?http%3a%2f%2fwww.statsoft.pl %2Ftextbook%2Fstcluan.html