Grupowanie danych. Wprowadzenie. Przykłady

Podobne dokumenty
Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Eksploracja danych. Grupowanie. Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne. Grupowanie wykład 1

Grupowanie. Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne. Eksploracja danych. Grupowanie wykład 1

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633

Analiza skupień. Analiza Skupień W sztucznej inteligencji istotną rolę ogrywają algorytmy grupowania

Hierarchiczna analiza skupień

Analiza Skupień Cluster analysis

1. Grupowanie Algorytmy grupowania:

Taksonomia numeryczna co to jest?

Agnieszka Nowak Brzezińska

Zagadnienie klasyfikacji (dyskryminacji)

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

Wyszukiwanie informacji w internecie. Nguyen Hung Son

Data Mining Wykład 5. Indukcja drzew decyzyjnych - Indeks Gini & Zysk informacyjny. Indeks Gini. Indeks Gini - Przykład

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Klasyfikator. ˆp(k x) = 1 K. I(ρ(x,x i ) ρ(x,x (K) ))I(y i =k),k =1,...,L,

Wstęp do grupowania danych

CLUSTERING. Metody grupowania danych

Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych. Data Mining Wykład 2

Agnieszka Nowak Brzezińska Wykład III

Elementy modelowania matematycznego

Macierzowe algorytmy równoległe

Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS

Czym jest analiza skupień?

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Elementy statystyki wielowymiarowej

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Diagnozowanie sieci komputerowej na podstawie opinii diagnostycznych o poszczególnych komputerach sieci

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

1 Zbiory i działania na zbiorach.

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

Algorytm grupowania danych typu kwantyzacji wektorów

Wstęp do Techniki Cyfrowej... Teoria automatów

cx cx 1,cx 2,cx 3,...,cx n. Przykład 4, 5

Co to jest grupowanie

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

Agnieszka Nowak Brzezińska Wykład III

4.3 Grupowanie według podobieństwa

Rozkłady wielu zmiennych

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Analiza skupień. Idea

Przykładowe B+ drzewo

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

Eksploracja danych - wykład II

Rozdział 1. Wektory losowe. 1.1 Wektor losowy i jego rozkład

Eksploracja tekstu. Wprowadzenie Wyszukiwanie dokumentów Reprezentacje tekstu. Eksploracja danych. Eksploracja tekstu wykład 1

Wyszukiwanie tekstów

Algorytm grupowania danych typu kwantyzacji wektorów

Wykład 14. Elementy algebry macierzy

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

WYKŁAD 9 METODY ZMIENNEJ METRYKI

Modelowanie zależności. Matematyczne podstawy teorii ryzyka i ich zastosowanie R. Łochowski

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje

Eksploracja Danych. wykład 4. Sebastian Zając. 10 maja 2017 WMP.SNŚ UKSW. Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja / 18

Wykład 10 Skalowanie wielowymiarowe

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Algorytmy genetyczne. Paweł Cieśla. 8 stycznia 2009

STATYSTYKA I DOŚWIADCZALNICTWO

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Wstęp do programowania. Drzewa. Piotr Chrząstowski-Wachtel

Definicja pliku kratowego

Sieci Kohonena Grupowanie

Obliczenia iteracyjne

Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1

Idea. Algorytm zachłanny Algorytmy hierarchiczne Metoda K-średnich Metoda hierarchiczna, a niehierarchiczna. Analiza skupień

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne

Techniki grupowania danych w środowisku Matlab

Bazy dokumentów tekstowych

Text mining w programie RapidMiner Michał Bereta

Grupowanie. Iteracyjno-optymalizacyjne metody grupowania Algorytm k-średnich Algorytm k-medoidów. Eksploracja danych. Grupowanie wykład 2

Wymiar musi być wyrażeniem stałym typu całkowitego, tzn. takim, które może obliczyć kompilator. Przykłady:

Optymalizacja ciągła

STATYSTYKA I DOŚWIADCZALNICTWO

METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA

Matematyka dyskretna - wykład - część Podstawowe algorytmy kombinatoryczne

Analiza głównych składowych- redukcja wymiaru, wykł. 12

Sztuczna inteligencja : Algorytm KNN

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

Język ludzki kod maszynowy

3 1 + i 1 i i 1 2i 2. Wyznaczyć macierze spełniające własność komutacji: [A, X] = B

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.

Pochodne cząstkowe i ich zastosowanie. Ekstrema lokalne funkcji

ANALIZA STRUKTURY WIEKOWEJ ORAZ PŁCIOWEJ CZŁONKÓW OFE Z WYKORZYSTANIEM METOD TAKSONOMICZNYCH

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

Algebra WYKŁAD 3 ALGEBRA 1

TEORETYCZNE PODSTAWY INFORMATYKI

Przestrzeń algorytmów klastrowania

SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization

Kwantyzacja wektorowa. Kodowanie różnicowe.

Programowanie Współbieżne. Algorytmy

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Podstawy Programowania Obiektowego

Metody analizy skupień Wprowadzenie Charakterystyka obiektów Metody grupowania Ocena poprawności grupowania

Metody wielokryterialne. Tadeusz Trzaskalik

P(F=1) F P(C1 = 1 F = 1) P(C1 = 1 F = 0) P(C2 = 1 F = 1) P(C2 = 1 F = 0) P(R = 1 C2 = 1) P(R = 1 C2 = 0)

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne

Transkrypt:

Grupowanie danych str. 1 Wprowadzenie Celem procesu grupowania jest podział zbioru obiektów, fizycznych lub abstrakcyjnych, na klasy obiektów o podobnych cechach, nazywane klastrami lub skupieniami Klaster 1. Zbiór obiektów, które są podobne 2. Zbiór obiektów, takich, że odległość pomiędzy dwoma dowolnymi obiektami należącymi do klastra jest mniejsza aniżeli odległość pomiędzy dowolnym obiektem należącym do klastra i dowolnym obiektem nie należącym do tego klastra 3. Spójny obszar przestrzeni wielowymiarowej, charakteryzujący się dużą gęstością występowania obiektów str. 2 Przykłady Zbiór dokumentów zbiór punktów w przestrzeni wielowymiarowej, w której pojedynczy wymiar odpowiada jednemu słowu z określonego słownika. Współrzędne dokumentu w przestrzeni są zdefiniowane względną częstością występowania słów ze słownika. Klastry dokumentów odpowiadają grupom dokumentów dotyczących podobnej tematyki Zbiór sekwencji stron WWW pojedyncza sekwencja opisuje sekwencję dostępów do stron WWW danego serwera realizowaną w ramach jednej sesji przez użytkownika. Klastry sekwencji odpowiadają grupom użytkowników danego serwera, którzy realizowali dostęp do tego serwera w podobny sposób str. 3

Składowe procesu grupowania(1) obiekt Ekstrakcja cech Reprezentacja obiektu Podobieństwo obiektów sprzężenie zwrotne grupowanie klastry str. 4 Składowe procesu grupowania(2) Proces grupowania: Reprezentacja obiektów(zawiera ekstrakcję/selekcję cech obiektów) Definicja miary podobieństwa pomiędzy obiektami(zależy od dziedziny zastosowań) Grupowanie obiektów (klastry) Znajdowanie charakterystyki klastrów str. 5 Niepodobieństwo obiektów Niepodobieństwo (podobieństwo) obiektów opisujemy za pomocą macierzy niepodobieństwa (podobieństwa) Danych jest N obiektów, z których każdy jest opisany wartościami p atrybutów A 1,, A p (nazywanych zmiennymi) Macierz niepodobieństwa obiektów D, typu N N opisuje niepodobieństwo pomiędzy każda parą obiektów: gdzie D(x i, x j ) oznacza niepodobieństwo obiektów x i i x j str. 6

Miary odległości (1) Dyskusja dotycząca podobieństwa, lub odległości, dwóch obiektów wymaga przyjęcia miary odległości pomiędzy dwoma obiektami x i y reprezentowanymi przez punkty w przestrzeni wielowymiarowej: Klasyczne aksjomaty dla miary odległości będącej metryką: D(x, y) 0 x=y D(x, y) = 0 D(x, y) = D(y, x) D(x, y) D(x, z) + D(z, y) (nierówność trójkąta) str. 7 Atrybuty ciągłe (1) Dana jest k-wymiarowa przestrzeń euklidesowa, odległość pomiędzy dwoma obiektami x=[x 1, x 2,..., x p ] iy=[y 1, y 2,..., y p ] można zdefiniować następująco: odległość euklidesowa: ( norma L 2 ") odległość Manhattan : ( norma L 1 ") odległość max zwymiarów: ( norma L ") p 2 ( ) xi yi i= 1 p i= 1 max xi yi p i= 1 xi yi str. 8 Atrybuty ciągłe (2) p ( ( i= 1 )) q1/ q xi yi str. 9

Miary odległości (2) W przypadku, gdy obiekty nie poddają się transformacji do przestrzeni euklidesowej, proces grupowania wymaga zdefiniowania innych miar odległości (podobieństwa): sekwencja dostępów do stron WWW, sekwencjedna,sekwencje zbiorów, zbiory atrybutów kategorycznych, dokumenty tekstowe, XML, grafy, itp. str. 10 Atrybuty binarne (1) W jaki sposób obliczyć podobieństwo(lubniepodobieństwo) pomiędzy dwoma obiektami opisanymi zmiennymi binarnymi: Podejście: konstruujemy macierz niepodobieństwa q liczba zmiennych przyjmujących wartość 1 dla obu obiektów r... 1 dlaobiektu i, iwartość0 dlaj s... 0 dlaobiektu i, iwartość1 dlaj t -... 0 dla obu obiektów obiekt j 1 0 Sum obiekt i 1 q r q+r 0 s t s+t Sum q+s r+t p str. 11 Atrybuty binarne (2) Zmienne binarne symetryczne: zmienną binarną nazywamy symetryczną jeżeli obie wartości tej zmiennej posiadają tą samą wagę(np. płeć). Niepodobieństwo pomiędzy obiektami i i j jest zdefiniowane następująco: r+ s d( i, j)= q+ r+ s+ t Zmienne binarne asymetryczne: zmienną binarną nazywamy asymetrycznąjeżeli obie wartości tej zmiennej posiadają różne wagi(np. wynik badania EKG). Niepodobieństwopomiędzy obiektamii ij jest zdefiniowane następująco r+ s d( i, j)= q+ r+ s str. 12

Atrybuty binarne (3) imię pleć gorączka katar test1 test2 test3 test4 Jack M Y N P N N N Mary F Y N P N P N Jim M Y Y N N N N........................ Dana jest tablica zawierająca informacje o pacjentach: 0+ 1 0+ 1 d asym (jack,mary) = = 0.33 d sym (jack,mary) = = 0.17 2+ 0+ 1 2+ 0+ 3 1 d asym (jack, jim) = = 0.67 1 2 d asym (jim,mary) = = 0.75 2 1 d sym (jack, jim) = = 0.33 3 2 d sym (jim,mary) = = 0.5 2+ 2 str. 13 Atrybuty kategoryczne (1) Zmienna kategoryczna jest generalizacjązmiennej binarnej: może przyjmować więcej niż dwie wartości(np. dochód: wysoki, średni, niski) Zmienne kategoryczne: nominalne porządkowe Niepodobieństwo(podobieństwo) pomiędzyobiektamii,j,opisanymi zmiennymi kategorycznymi nominalnymi, można zdefiniować następująco: d(i, j) p m = p n sim( i, j) = = sim ( i, j) = p p gdziep oznacza łącznąliczbę zmiennych, m oznacza liczbę zmiennych, których wartość jest identyczna dla obu obiektów, n oznacza liczbę zmiennych, których wartość jest różna dla obu obiektów. m p str. 14 Atrybuty kategoryczne (2) Dla atrybutów nominalnych stopień podobieństwa lub niepodobieństwa wartości atrybutu nominalnego może być zdefiniowany explicite przez użytkownika w postaci macierzy niepodobieństwa Macierz niepodobieństwa jest macierzą symetryczną M M, której elementy przekątne m ii = 0, i = 1,, M, a pozostałe elementy m ij > 0, i j Najczęściej przyjmuje się, że elementy macierzy m ij = 1, i j. Oznacza to, że podobne są do siebie wyłącznie identyczne wartości atrybutu nominalnego, pozostałe wartości są niepodobne Podobne mogą być również inne wartości atrybutu nominalnego Samochody: - Honda - Fiat - Volvo - Nissan str. 15

Atrybuty kategoryczne (3) W przypadku atrybutów porządkowych nie można określić różnicy ich wartości -nie możemy zatem określić sensownie miary odległosci miedzy obiektami opisanymi atrybutami porządkowymi W rzeczywistości, wartości atrybutów porządkowych określają ranking poszczególnych obiektów na skali porządkowej atrybutów porządkowych Atrybuty porządkowe transformujemy najczęściej do postaci atrybutów ciągłych i dalej postępujemy jak w przypadku atrybutów ciągłych gdzie M oznacza liczbę różnych wartości atrybutu porządkowego str. 16 Obiekty opisane atrybutami różnych typów (1) Najpopularniejszym podejściem do problemu określenia niepodobieństwa obiektów opisanych atrybutami różnych typów jest podejście oparte na agregacji niepodobieństw poszczególnych typów atrybutów opisujących obiekty i uzyskaniu jednej zagregowanej miary niepodobieństwa, będącej średnia ważona poszczególnych miar niepodobieństwa pojedynczych atrybutów Ogólna postać takiej zagregowanej miary niepodobieństw obiektów jest najczęściej definiowana w następujący sposób: gdzie w k oznacza wagę k-tego atrybutu A k, a d k (x ik, x jk ) niepodobieństwo wartości k-tego atrybutu obiektów x i i x j str. 17 Obiekty opisane atrybutami różnych typów (2) str. 18

Obiekty opisane atrybutami różnych typów (3) str. 19 Obiekty opisane atrybutami różnych typów (4) str. 20 Przykład (1) ob-id A1 A2 A3 1 Ala bardzo dobry 400 2 Beata dobry 50 3 Celina dostateczny 150 4 Ala bardzo dobry 600 Dane (obiekty) są opisane 3 typami atrybutów: A1 atrybut nominalny, A2 atrybut porządkowy i A3 atrybut ciągły Załóżmy, że w przypadku atrybutu A1 podobne są wyłącznie identyczne wartości atrybutu str. 21

Przykład (2) str. 22 Przykład (3) str. 23 Przykład (4) str. 24

Przykład (5) str. 25 Inne typy danych (1) str. 26 Inne typy danych (2) str. 27

Inne typy danych (3) Sekwencje DNA, sekwencje dostępu do stron WWW: definicja odległości (podobieństwa) sekwencji symboli, powinna uwzględniać fakt, że sekwencje mogą mieć różną długość oraz różne symbole na tych samych pozycjach, np.: x= abcde y= bcdxye Miaraodległości:D(x, y) = x + y -2 LCS(x, y) gdzielcs oznaczanajdłuższą wspólną podsekwencję (ang. longest common subsequence)(lcs(x,y) = bcde). Stąd, D(x, y) = 3 str. 28 Metody grupowania typy metod Istnieje wiele różnych metod i algorytmów grupowania: Dla danych liczbowych i/lub danych symbolicznych Deterministyczne i probabilistyczne Rozłączne i przecinające się Hierarchiczne i płaskie Monocechowe i policechowe Przyrostowe i nie przyrostowe str. 29 Klasyfikacja metod grupowania Popularna klasyfikacja metod grupowania metody hierarchiczne metody itracyjno-optymalizacyjne metody gstościowe metody gridowe metody oparte na modelu str. 30

Metody hierarchiczne - wprowadzenie Metody hierarchiczne: generują zagnieżdżoną sekwencję podziałów zbiorów obiektów w procesie grupowania Metoda grupowania hierarchicznego polega na sekwencyjnym grupowaniu obiektów - drzewo klastrów(tzw. dendrogram). Podejście podziałowe(top-down): początkowo, wszystkie obiekty przypisujemy do jednego klastra;następnie, w kolejnych iteracjach, klaster jest dzielony na mniejsze klastry, które, z kolei, dzielone są na kolejne mniejsze klastry Podejście aglomeracyjne(bottom-up): początkowo, każdy obiekt stanowi osobny klaster, następnie, w kolejnych iteracjach, klastry są łączone w większe klastry str. 31 Metody hierarchiczne - wprowadzenie F G C A B D E obiekty A B C D E F G dendrogram str. 32 Miary odległości (1) W obu podejściach, aglomeracyjnym i podziałowym, liczba klastrów jest ustalona z góry przez użytkownika i stanowi warunek stopu procesu grupowania 4 podstawowe (najczęściej stosowane) miary odległości pomiędzy klastrami są zdefiniowane następująco, gdzie p p oznacza odległość pomiędzy dwoma obiektami(lub punktami)p ip, m i oznacza średnią wartośćklastrac i, in i oznacza liczbę obiektównależących do klastrac i str. 33

Miary odległości (2) minimalna odległość: maksymalna odległość: odległość średnich: średnia odległość: ' dmin ( CC i, j) = min ' p p ' dmax ( CC i, j) = max ' p p p Ci, p Cj dmean( CC i, j) = mi mj ' d ( CC) = 1/( nn) p p ave i, j p Ci, p Cj i j ' p Ci p Cj str. 34 Ogólny hierarchiczny aglomeracyjny algorytm grupowania Wejście: baza danychd obiektów(n -obiektów) Wyjście: dendrogram reprezentujący grupowanie obiektów 1. umieść każdy obiekt w osobnym klastrze; 2. skonstruuj macierz odległości pomiędzy klastrami; 3. dla zadanej wartości niepodobieństwad k (d k może się zmieniać w kolejnych iteracjach) 4. Repeat 5. utwórz grafklastrów, w którymkażda para klastrów, której wzajemna odległość jest mniejsza niż d k,jest połączonakrawędzią; 6. until wszystkie klastry utworzą graf spójny; 7. returndendrogram str. 35 Hierarchiczny aglomeracyjnyalgorytm grupowania (1) Wejście: baza danych D n obiektów. Wyjście: dendrogram reprezentujący sekwencję grupowania obiektów 1: umieść każdy obiekt w osobnym klastrze; 2: skonstruuj macierz odległości międzyklastrowej dla wszystkich par klastrów; 3: korzystając z macierzy odległości międzyklastrowych, znajdź najbliższą parę klastrów i połącz znalezione klastry, tworząc nowy klaster; 4: uaktualnij macierz odległości międzyklastrowych po operacji połączenia; str. 36

Hierarchiczny aglomeracyjnyalgorytm grupowania (2) 5: if wszystkie obiekty należą do jednego klastra then 6: zakończ procedurę grupowania; 7: else 8: przejdź do kroku 3; 9: end if 10: return dendrogram reprezentujący sekwencje grupowania obiektów; str. 37 Hierarchiczne podejście podziałowe W przypadku hierarchicznych podziałowych algorytmów grupowania początkowo wszystkie obiekty przypisane są do jednego klastra, a następnie, w kolejnych iteracjach, klaster jest dzielony na mniejsze klastry, aż do osiągniecia warunku stopu algorytmu Większość podziałowych algorytmów grupowania zakłada, że w każdej iteracji algorytmu klaster jest dzielony dokładnie na dwa podklastry W wyniku działania algorytmów podziałowych otrzymujemy najczęściej dendrogram, który ma postać drzewa binarnego Ze względu na strukturę otrzymanego dendrogramu algorytmy te noszą nazwę binarnych podziałowych algorytmów grupowania str. 38 Algorytm PDDP (1) Podstawowy obszar zastosowań algorytmu -grupowanie dokumentów tekstowych Algorytm PDDPzakłada wektorową reprezentację dokumentów tekstowych -każdy dokument d i jest reprezentowany przez wektor częstości występowania słów kluczowych w danym dokumencie Słownik słów kluczowych (tak zwany tezaurus) zawiera nsłów kluczowych Każdy dokument tekstowy d i jest reprezentowany przez n-wymiarowy wektor kolumnowy częstości występowania słów kluczowych: d i = (d i1, d i2,, d in ) T Współczynnik d ij nazywamy wagąsłowa t j w dokumencie d i str. 39

Algorytm PDDP (2) Załóżmy, ze dany jest zbiór mdokumentów tekstowych d 1, d 2,, d m Zbiór ten można przedstawić w postaci macierzy występowania słów kluczowych (ang. term frequency matrix). M = (d 1, d 2,, d m ) Macierz M jest macierzą, o rozmiarze n m, wektorów częstości występowania słów kluczowych Aby uniknąć faworyzowania dużych dokumentów normalizujemy wagi dokumentów: str. 40 Algorytm PDDP (3) str. 41 Algorytm PDDP (4) str. 42

Algorytm PDDP (5) str. 43 Algorytm PDDP (6) str. 44 Działanie algorytmu PDDP (1) str. 45

Działanie algorytmu PDDP (2) str. 46 Działanie algorytmu PDDP (2) str. 47