Analiza skupień. Konspekt do zajęć: Statystyczne metody analizy danych. Agnieszka Nowak-Brzezińska 28 maja 2012
|
|
- Krzysztof Lipiński
- 8 lat temu
- Przeglądów:
Transkrypt
1 Analiza skupień Konspekt do zajęć: Statystyczne metody analizy danych Agnieszka Nowak-Brzezińska 28 maja Wprowadzenie Celem laboratorium jest analiza skupień wybranych zbiorów danych w środowisku R. Jest to metoda dokonująca grupowania (podziału) obiektów danego zbioru na względnie jednorodne klasy. Podstawą grupowania w większości algorytmów jest podobieństwo pomiędzy obserwacjami - wyrażone przy pomocy funkcji (metryki) podobieństwa. Istnieje wiele implementacji algorytmów analizy skupień w środowisku R, w ramach zajęć zostaną omówione te realizujące algorytmy: niehierarchiczne: k - średnich dostępny z funkcją k-means oraz k-medoidów dostępny z funkcją pam, hierarchiczne: agnes (ang. AGlomerative NESting) (dostępny z funkcją agnes) oraz hierarchiczny algorytm grupowania dostępny z funkcją hclust i możliwy do prezentacji graficznej dzięki funkcji plot. Każdy z pakietów uzupełniony jest o dokumentację, której znajomość pozwala wykonać poprawne analizy danych: html 2 Analiza skupień Grupowanie (ang. data clustering), zwane również analizą skupień lub klasyfikacją nienadzorowaną polega na podziale pewnego zbioru danych O O = {x i = (x i1,..., x id ) i=1,...,n } gdzie x i jest d-wymiarowym wektorem cech opisujących obiekt należący do zbioru, na pewne podzbiory wektorów (grupy). Podstawowym założeniem dotyczącym wynikowego podziału jest homogeniczność obiektów wchodzących w skład jednej grupy oraz heterogeniczność samych grup oznacza to, że wektory stanowiące jedną grupę powinny być bardziej podobne do siebie niż do wektorów pochodzących z pozostałych grup. Wynikiem grupowania N-elementowego zbioru O na c grup jest zazwyczaj tzw. macierz podziału B o wymiarze c N, w 1
2 której dany element b ik oznacza stopień przynależności wektora x k do grupy G i (wartość 1 świadczy o całkowitej przynależności wektora do grupy, natomiast 0 oznacza, że wektor do danej grupy wogóle nie należy). Ze względu na przyjęte założenia dotyczące przynależności wektorów do grup mówi się o trzech głównych typach podziałów: P odz c (N) = G 1,..., G c Gi O Podział twardy (ang. hard) uzyskuje się w efekcie takiego grupowania, w którym każdy wektor należy tylko do jednej grupy. Macierz podziału spełnia wtedy następujące warunki: 1 i c, 1 k N : b ik {0, 1}, co oznacza, że każdy wektor należy albo nie należy do danej grupy, 1 k N: c i=1 b ik = 1, co oznacza, że wektor należy tylko do jednej grupy, 1 i c : 0 < N k=1 b ik < N, co z kolei oznacza, że wszystkie grupy są niepuste. Istnieją także podziały: rozmyty oraz posybilistyczny ale z uwagi na fakt, że nie są one tematem tego opracowania, nie będziemy ich opisywać. Biorąc pod uwagę sposób tworzenia skupień, techniki analizy skupień można podzielić na dwie podstawowe kategorie: niehierarchiczne oraz hierarchiczne. Celem algorytmów niehierarchicznych jest znalezienie takiego podziału zbioru na zadaną liczbę podzbiorów, aby uzyskać optymalną wartość pewnego kryterium. Optymalizację kryterium osiąga się np. poprzez iteracyjne przemieszczanie obiektów między grupami. Metody hierarchiczne konstruują (jak sama nazwa sugeruje) pewną hierarchię skupień, która najczęściej reprezentowana jest graficznie w postaci drzewa binarnego nazywanego dendrogramem. W liściach takiego drzewa znajdują się elementy analizowanego zbioru, węzły natomiast stanowią ich grupy. Najbardziej pożądane cechy, jakich oczekuje się od algorytmów grupujących, to m.in.: jak najmniejsza liczba parametrów, które trzeba dostarczać z zewnątrz, jak najmniejsza krotność analizy elementów zbioru uczącego, niewrażliwość na różnice w kształcie, wielkości czy gęstości grup, zminimalizowany wpływ danych odstających na wynik przetwarzania, możliwość przetwarzania różnych typów danych (ciągłych, dyskretnych oraz kombinacji obu jednocześnie), niezależność wyniku od kolejności, w jakiej podawane są dane, skalowalność rozumiana jako zdolność do przetwarzania bardzo dużych zbiorów danych, przystosowanie do analizy danych o różnej wymiarowości. 2
3 2.1 Metody niehierarchiczne Algorytmy w ramach tych metod poszukują najlepszego podziału zadanego zbioru danych poprzez stopniową optymalizację, tzn. poprawę pewnych wskaźników jakości grupowania, uzyskiwanego w kolejnych etapach przetwarzania zbioru wejściowego. Początkowego podziału dokonuje się najczęściej w sposób losowy. Znaczącym z punktu widzenia końcowej klasyfikacji parametrem wejściowym jest liczba k, którą przekazuje się jako wartość zadaną lub wyznacza w sposób losowy decyduje ona o liczbie skupień otrzymanych w wyniku działania algorytmu. Z tego samego powodu istotnym jest dobór odpowiedniej funkcji kryterialnej, którą mierzona będzie jakość gru powania (stopień rozproszenia wektorów w poszczególnych grupach). Dziedziną funkcji kryterialnej J jest zbiór danych wejściowych O oraz wektor parametrów v = (v 1,..., v k ), gdzie k oznacza liczbę grup, a v i wektor parametrów określających i-tą grupę. Składowe wektora v stanowią reprezentacje poszczególnych skupień i nazywane są reprezentantami (prototypami) grup. Doboru odpowiedniej funkcji kryterialnej dokonuje się głównie w zależności od oczekiwanego kształtu grup Ogólny schemat postępowania W przypadku metod iteracyjnych algorytm grupowania składa się z następujących kroków: 1. wstępna inicjalizacja : wybierz k obiektów, które będą stanowić prototypy grup, 2. przypisuj pozostałe obiekty do grup tak, aby osiągnąć najlepszy podział (zgodnie z przyjętą funkcją kryterialną), 3. dla każdego otrzymanego skupienia wybierz ponownie prototyp, 4. powtarzaj poprzednie kroki tak długo, jak długo przyjęte kryterium będzie się poprawiać. Wadą metody jest jej zachłanność, przez co w wyniku otrzymuje się jedynie optimum lokalne i nie ma gwarancji osiągnięcia optimum globalnego. Największą jej zaletą jest łatwość implementacji i stosunkowo mała złożoność obliczeniowa Algorytm k-średnich Ten klasyczny algorytm analizy skupień, na wstępie ustala wartość parametru k decydującą o liczbie grup, które zostaną wyodrębnione ze zbioru danych. W sposób losowy wybiera się k reprezentantów tak, aby byli oni możliwie jak najbardziej od siebie oddaleni. Wybrane elementy stanowią zalążki grup (prototypy). W kolejnym kroku każdy element zbioru przypisywany jest do najbliższej mu grupy. Na tym etapie wyznaczone są grupy początkowe. Dla każdej z grup obliczany jest jej środek na podstawie średniej arytmetycznej współrzędnych obiektów do niej należących. Następnie rozważane i ponownie przydzielane do najbliższej (ze względu na odległość od poszczególnych centroidów) grupy są wszystkie obiekty. Tak długo nowe środki grup są wyznaczane i sprawdzana jest poprawność przynależności elementów do grup, jak długo występuje migracja obiektów pomiędzy skupieniami. Jeśli w kolejnych dwóch przebiegach algorytmu nie nastąpi żadna zmiana w dokonanym podziale (mówi się wtedy o 3
4 osiągnięciu stabilizacji), przetwarzanie dobiega końca. Jak widać, w metodzie tej liczba grup jest stała i zgodna z wartością parametru k, zmieniać się może tylko przynależność obiektów do grup. W metodzie k-średnich (ang. k-means) poszukiwanie optymalnego podziału odpowiada wyznaczeniu takich prototypów grup, które minimalizują następującą funkcję kryterialną: J(v, B) = k i=1 k=1 N b ik d 2 (v i, x k ). W funkcji tej d(v, x) oznacza odległość elementu reprezentowanego przez wektor x od grupy wyznaczonej przez prototyp (centroid, środek grupy) v, N to liczebność zbioru O, B to macierz podziału, a pozostałe parametry mają takie same znaczenie jak podano wcześniej. Zasadę działania metody można opisać następująco: 1. podziel wstępnie zbiór na k skupień, 2. dla każdego skupienia policz jego centroid (środek ciężkości grupy), 3. przypisz każdy z elementów zbioru do najbliższej mu grupy ( odległość od grupy jest w tym przypadku tożsama z odległością od centroidu), 4. powtarzaj dwa poprzednie kroki tak długo, jak długo zmienia się przyporządkowanie obiektów do skupień. Przykład podziału obiektów do k grup przedstawia rysunek 1. Rysunek 1: Przykład podziału obiektów do k skupień Niestety algorytm k-średnich ma wiele wad. Już na wstępie konieczne jest zdefiniowanie liczby grup, chociaż zazwyczaj nie wiadomo, jak wiele grup występuje w przetwarzanym zbiorze. Początkowe centroidy wybierane są w sposób losowy, podczas gdy ich wybór ma decydujący wpływ na jakość otrzymanego grupowania. Metoda jest zbieżna do lokalnego optimum, a jednokrotne wykonanie algorytmu zazwyczaj nie daje w wyniku optymalnego podziału analizowanego zbioru. Ponadto algorytm jest mało odporny na zaszumione dane. Mimo wszystkich wad jest to wciąż jedna z najczęściej wykorzystywanych metod iteracyjnych, ponieważ jest ona prosta w implementacji, a jej niewielka złożoność obliczeniowa wynosi O(tkn), gdzie n jest liczebnością zbioru, k jest liczbą grup i t jest liczbą iteracji, przyczym k, t n. Konieczność wstępnego określenia 4
5 liczby podgrup można zrekompensować, wywołując metodę z różnymi wartościami parametru k i oceniając otrzymane podziały za pomocą jakiegoś kryterium oceny jakości grupowania Algorytm k-medoidów Wady algorytmu k-średnich są na tyle istotne, że często dąży się do zastosowania innych algorytmów w ramach grupy metod niehierarchicznych, ale takich, które wolne są od tychże wad. Jednym z takim algorymtów jest k-medoid, który to w odróżnieniu od algorytmu k-średnich w kolejnych etapach algorytmu nowe prototypy grup wyznaczane są spośród obiektów należących do rozpatrywanego zbioru. Wystarczającym dla zrozumienia idei tego algorytmu jest wgląd w tutorial dostępny na stronie W środowisku R realizuje go funkcja pam() z pakietu cluster. 2.2 Metody hierarchiczne Metody niehierarchiczne mają to do siebie, że formują pojedynczy podział, który dostarcza płaskiej charakterystyki zbioru. Tymczasem często spotykaną sytuacją są grupy, które zawierają podgrupy, te z kolei składają się z podgrup itd. Tę właśność doskonale oddają algorytmy hierarchiczne. W zależności od tego jaki zastosujemy algorytm grupowania hierarchicznego: aglomeracyjny czy deglomeracyjny, inny jest przebieg algorytmu, oraz jego ostateczny rezultat. Metody aglomeracyjne rozpoczynają tworzenie hierarchii od podziału zbioru n obserwacji na n jednoelementowych grup, które w kolejnych krokach są ze sobą scalane. Metody deglomeracyjne inicjowane są jedną grupą n-elementową, a hierarchia tworzona jest poprzez sukcesywny podział na coraz mniejsze grupy. W praktyce rzadko dąży się do utworzenia pełnej hierarchii podziałów, ponieważ ostatni jej etap (tzn. n grup jednoelementowych lub jedna grupa n-elementowa) nie wnosi zbyt wielu nowych informacji na temat charakterystyki analizowanego zbioru danych. Zazwyczaj proces tworzenia hierarchii przerywa się w pewnym, z góry założonym momencie, kiedy zostanie spełniony tzw. warunek stopu. Warunkiem takim może być np. pożądana liczba skupień, stopień (nie) podobieństwa pomiędzy wydzielonymi grupami itp. Optymalnym wydaje się kryterium maksymalnego podobieństwa wewnątrz grup - minimalnego między grupami. Inaczej mówiąc, proces aglomeracji jest uzasadniony tak długo dopóki podobieństwo wewnątrz tworzonych grup jest zawsze większe niż podobieństwo między którąkolwiek z grup Dendrogram Najbardziej popularnym i naturalnym sposobem reprezentacji wyników grupowania hierarchicznego jest graficzny zapis w postaci drzewa binarnego nazywanego dendrogramem. Zapis taki można wzbogacić o informację dotyczącą stopnia niepodobieństwa (dendrogram niepodobieństwa) pomiędzy poszczególnymi grupami poprzez dodanie osi skojarzonej zużytą miarą niepodobieństwa poziom łączenia grup odpowiada wówczas wartości ich niepodobieństwa. Fakt, że budujemy drzewo binarne jest bardzo istotny. Okazuje się, że będąc na k-tym poziomie w drzewie wiemy na pewno, że utworzonych jest wówczas c grup, gdzie c = n k + 1. Wobec tego poziom pierwszy odpowiada podziałowi na n 5
6 grup, natomiast poziom n-ty jednej grupie. Przykład dendrogramu przedstawia rysunek 2. Rysunek 2: Przykład dendrogramu Algorytmy aglomeracyjne Najprostsza wersja algorytmu aglomeracyjnego składa się z następujących kroków: 1. niech c będzie oczekiwaną liczbą grup, a N liczebnością analizowanego zbioru (oczywiście c N); wstępna inicjalizacja: podziel zbiór na N jedno elementowych grup, 2. znajdź dwie najbliższe (w sensie przyjętej miary) grupy; nazwijmy je G i oraz G j, 3. scal ze sobą G i i G j zmniejszając w ten sposób liczbę grup o 1, 4. powtarzaj dwa poprzednie kroki tak długo, aż liczba otrzymanych grup osiągnie założoną na wstępie wartość c. Niezwykle istotne są kroki: 2 i 3. Otóż znajdowanie dwóch najbliższych grup, zależy od wybranej metryki podobieństwa bądź odległości. Nie wszystkie bowiem miary nadają się do określonego typu danych. Źle dobrana metryka może wskazywać jako najbardziej w danym momencie podobne do siebie grupy, które tak naprawdę wcale podobnymi nie są. Jeszcze ważniejszym i bardziej wpływowym - jest sposób (określony krokiem 3) scalenia ze sobą grup G i oraz G j, gdyż wiąże się on także z budową nowej grupy G k, ale i jej reprezentanta. W pierwszym kroku algorytmu, podział ma postać: P odz N 0 (N) = {G i = {x i }, i = 1,..., N} a w kolejnych krokach algorytmu przyjmuje odpowiednio postać: P odzt N t (N) = {P odzt 1 N t+1 (N){G i, G j }} {G k }, gdzie t oznacza kolejny krok algorytmu, a jednocześnie poziom w hierarchii. W każdym kroku spośród wszystkich par grup (G r, G s ) wybiera się taką parę (G i, G j ), że D(G i, G j ) = min D(G r, G s ), Gr, Gs P odzt 1 N t+1, G r G s. W macierzy niepodobieństwa P (t) postaci: P (i, j, t) = D(G i, G j ), i, j = 1,..., N t, 6
7 konieczna jest po każdym scaleniu dwóch grup G i i G j aktualizacja, polegająca na tym, że w usuwa się z macierzy kolumnę o większym indeksie i lub j, a w kolumnie o mniejszym indeksie wpisujemy wartości odległości każdej grupy do nowo powstałej grupy G k. Metody łączenia obiektów związane są właśnie z obliczeniem tej odległości. Jeśli G k = G i G j, G k P odzt N t (N) oraz G i, G j, G s P odzt 1 N t+1 (N) są parami różne, macierz niepodobieństwa jest aktualizowana w następujący sposób: dla metody najbliższego sąsiada: D(G k, G s ) = min{d(g i, G s ), D(G j, G s )}, dla metody najdalszego sąsiada: D(G k, G s ) = max{d(g i, G s ), D(G j, G s )}, dla metody średniej: D(G k, G s ) = 1 2 {D(G i, G s ) + D(G j, G s )} Metoda najbliższego sąsiada jest najczęściej wykorzystywana, ze względu na małą złożoność, oraz dużą intuicyjność wybranego podobieństwa. Jednak jest też podatna na tzw. zjawisko łańcuchowania, polegające na przypisywaniu długich ciągów punktów do tego samego skupienia (w odróżnieniu od tworzenia zwartych kulistych skupień), co w zależności od oczekiwanego kształtu grup może być traktowane jako wada algorytmu. Na przykład, jeśli pomiędzy dwoma wyraźnie odrębnymi, kulistymi skupieniami znajdzie się punkt tworzący pewnego rodzaju most je łączący, metoda dokona niepożądanego scalenia obu skupień i w rezultacie powstanie duża, wydłużona grupa, niezgodna z właściwą charakterystyką zbioru. Inną wadą tej metody łączenia skupień jest podatność na szumy oraz niewielkie zmiany pozycji obiektów. Ilustracją graficzną tej metody jest rysunek 3. Rysunek 3: Metoda najbliższego sąsiada Metoda najdalszego sąsiada w przeciwieństwie do poprzedniej nie ma tendencji do przyrostu wydłużonych skupień. Łączone są skupienia zawierające punkty, które w ustalonej przestrzeni metrycznej są położone najdalej od siebie. Metoda wykazuje tendencję do grupowania elementów znajdujących się na brzegach obszaru określoności w jedno skupienie, natomiast bardziej wewnętrzne punkty przydzielane są do reszty zadeklarowanych skupień. Ilustracją graficzną tej metody jest rysunek 4. Metody najbliższego i najdalszego sąsiada reprezentują dwa skrajne podejścia do pomiaru odległości pomiędzy skupieniami. Żadne z nich nie jest pozbawione wad, podczas gdy użycie metod pośrednich wydaje się być najbardziej oczywistym sposobem na ich uniknięcie. Ilustracją graficzną tej metody jest rysunek 5. 7
8 Rysunek 4: Metoda najdalszego sąsiada Rysunek 5: Metoda średniej odległości Podane miary nie wyczerpują wszystkich możliwości definiowania kryterium kolejnych połączeń. Metody te mogą być zestawiane ze sobą tworząc nowe bardziej specjalizowane rozwiązania. 3 Analiza skupień w środowisku R Zakładamy, że przed wykonywaniem analiz w środowisku R student zapoznał się z podstawowymi algorytmami grupowania. Podstawową kwestią jest podział metod analizy skupień na hierarchiczne i niehierarchiczne (k-optymalizacyjne). Istotnym na tym etapie jest świadomość, że efektem metody hierarchicznej jest algomeracja bądź deglomeracja obiektów, która przyjmuje najczęściej postać dendrogramu (drzewo z korzeniem i liścmi). Metody niehierarchiczne - jak sama nazwa wskazuje - nie budują hierarchii. Tutaj obiekty mogą być prezentowane jako punkty na płaszczyźnie, i zakłada się, że te z punktów, które na wykresie rozrzutu są w dość bliskiej odległości wobec siebie, tworzą skupienie. Problemem jest fakt, że algorytmy (te bardziej klasyczne) wymagają podania z góry liczby skupień, podczas gdy bardzo często nie znamy tej liczby. Stosuje się oczywiście różne modyfikacje, które starają się tę optymalną liczbę skupień oszacować, jednak proces taki wymaga wielokrotnych uruchomień dla zmienionych parametrów, co znaczenie wydłuża czas grupowania. Inną zupełnie kwestią jest spory zbiór wad tych algorytmów, które czasami mogą wręcz uniemożliwić ich zastosowanie. Wykorzystanie metod analizy skupień w środowisku R jest możliwe dzięki użyciu następujących pakietów: standardowego pakietu stats, pakietu cluster oraz dodatkowo pakietów flexclust i mclust02. Zakładamy, że czytelnikowi znany jest zbiór danych o nazwie IRIS z repozytorium UCI Machine Learning udostępniony również w ramach środowiska R. Zbiór przedstawia informacje o 150 kwiatach (irysach) opisanych czterema cechami numerycznymi (Sepal.Length, Sepal.W idth, P etal.length, P etal.w idth) i jednym atrybutem jakościowym species (klasyfikującym kwiaty do jednej z trzech grup: setosa, virginica lub versicolor). Wiedząc, że algorytm k-średnich (ang. k-means) wymaga, aby wszystkie cechy były ilościowymi (podczas gdy ostatnia kolumna w zbiorze IRIS 8
9 zawiera dane jakościowe) pominiemy tę kolumnę w obliczeniach i przedstawimy podstawowe informacje o takim zbiorze danych, czego efektem będzie następujący ciąg informacji pakietu R: > dane = iris[,1:4] > summary(dane) Sepal.Length Sepal.Width Petal.Length Petal.Width Min. :4.300 Min. :2.000 Min. :1.000 Min. : st Qu.: st Qu.: st Qu.: st Qu.:0.300 Median :5.800 Median :3.000 Median :4.350 Median :1.300 Mean :5.843 Mean :3.057 Mean :3.758 Mean : rd Qu.: rd Qu.: rd Qu.: rd Qu.:1.800 Max. :7.900 Max. :4.400 Max. :6.900 Max. :2.500 > Wywołanie algorytmu k-średnich gdy znamy optymalną liczbę skupień (dla zbioru IRIS to 3 grupy) jest dość proste. Realizacja grupowania przy użyciu metody k-means może być następująca: > klaster = kmeans(dane,3) > plot(dane, pch=klaster$cluster) czego wynikiem będzie wykres z rozkładem wartości obserwacji w zbiorze iris osobno dla każdej z 4 cech opisujących te obserwacje: P etal.length, P etal.w idth, Sepal.Length, Sepal.W idth. Efekt będzie zbliżony do tego co przedstawia rysunek refirisa Sepal.Length Sepal.Width Petal.Length Petal.Width Rysunek 6: Realizacja funkcji kmeans dla zbioru iris - cztery zmienne Gdybyśmy chcieli jednak sprawdzić jak wygląda podział obiektów na również 3 skupienia, ale biorąc pod uwagę jedynie dwie pierwsze zmienne je opisujące: Sepal.Length oraz Sepal.W idth, wówczas koniecznym jest wywołanie następujących komend środowiska R: dane = iris[,1:2] > klaster = kmeans(dane,3) > plot(dane, pch=klaster$cluster), czego efekt będzie zbliżony do tego, co przedstawia rysunek 7. 9
10 Sepal.Width Sepal.Length Rysunek 7: Realizacja funkcji kmeans dla zbioru iris - dwie zmienne Wykres będzie czarnobiały i bez dodatkowych opcji odnośnie kolorów czy symboli nie będzie zbyt atrakcyjny wizualnie. Dlatego warto wspomóc się chociażby ingerencją w kolorystykę (parametr col) oraz symbol obserwacji (parametr pch, np pch = 3 to symbol + ). Wynikiem wywołania następujących komend: > cl<-kmeans(dist(dane),3,20) > plot(dane,pch=19,col=cl$cluster,main="k-means") będzie wykres taki jak na rysunku 8. Problem z umiejętnością oszacowania prawidłowej liczby skupień obrazuje następujący fragment kodu dla środowiska R: > cl<-kmeans(dist(dane),8,20) > plot(dane,pch=18,col=cl$cluster,main="k-means") którego efektem będzie następujący wykres (rysunek 9): Wykresy tak generowane są odpowiednio jasne do interpretacji gdy znamy prawidłową liczbę grup. Jednak gdy dla zbioru IRIS próbowalibyśmy zbudować nie 3 (jak być powinno) lecz 8 grup, otrzymany podział nie jest już wogóle czytelny. Podobnie widać to, gdy zmieniejszymy liczbę zmiennych analizowanych w procesie grupowanie obiektów zbioru IRIS. Mianowicie, gdy weźmiemy pod uwagę tylko dwie pierwsze zmienne: Sepal.Lenght oraz Sepal.W idth, i spróbujemy podzielić te 150 obserwacji na 8 grup, wykonamy następujący kod środowiska R: > dane = iris[,1:2] > cl<-kmeans(dist(dane),8,20) > plot(dane,pch=18,col=cl$cluster,main="k-means") a efekt takiego wykonania będzie taki jak to przedstawia rysunek
11 k means Sepal.Length Sepal.Width Petal.Length Petal.Width Rysunek 8: Realizacja funkcji kmeans dla zbioru iris Poświęcając więcej uwagi funkcji kmeans, zauważymy, że ogólna formuła tej funkcji ma postać: kmeans(x, centers, iter.max = 10, nstart = 1, algorithm = c("hartigan-wong", "Lloyd", "Forgy", "MacQueen")), gdzie: x - to macierz z danymi podlegającymi grupowaniu, centers - to albo liczba skupień, które chcemy utworzyć, albo podane początkowe centra skupień. Jeśli jest to liczba skupień, wówczas procedura wyboru potencjalnych centrów skupień odbywa się w sposób losowy, iter.max - to maksymalna liczba iteracji, nstart - jeśli w center podano liczbę grup, to parametr nstart określa liczbę losowych zbiorów branych pod uwagę w grupowaniu, algorithm - określa, który algorytm będzie wykonany spośród dostępnych: Hartigan and Wong (1979) (domyślny), MacQueen (1967), Lloyd (1957) czy Forgy (1965). 11
12 k means Sepal.Length Sepal.Width Petal.Length Petal.Width Rysunek 9: Realizacja funkcji kmeans dla zbioru iris - 8 grup Odpowiednio manipulując tymi parametrami można optymalizować budowane skupienia obiektów w danym zbiorze. Grupowanie realizowane jest także poprzez metodę mclust z pakietu o tej samej nazwie. W podstawowej wersji wywołania metody nie podaje się liczby skupień, a jedynie zbiór danych, które chcemy pogrupować (patrz poniżej na komendy R). > dane.mcl<-mclust(dane) > skupienia<-dane.mcl$classification > plot(dane,pch=19,col=skupienia,main="mclust") Utworzony w wyniku wykres będzie bardzo podobny do tego utworzonego przez metodę kmeans. W pakiecie stats dostępna jest funkcja, pozwalająca klasyfikować obiekty do jednej z utworzonych grup, pozwalając jednocześnie na sterowanie nie tylko liczbą tworzonych skupień, ale i poziomem odcięcia w tworzonym drzewie. Mowa tutaj o funkcji cutree. Ogólna formuła ma postać: cutree(tree, k = NULL, h = NULL) gdzie odpowiednio: tree - jest rezultatem wywołania funkcji hclust, k - liczba skupień, h - poziom odcięcia drzewa (tree). 12
13 k means Sepal.Width Sepal.Length Rysunek 10: Realizacja funkcji kmeans dla zbioru iris - 8 grup - 2 zmienne Przykład komendy zawierającej wywołanie tej funkcji wygląda następująco dla znanego już zbioru iris: > hc <- hclust(dist(dane)) > cutree(hc, k=3) Rezultatem takiego wywołania jest wektor prezentujący przydział poszczególnych obserwacji zbioru wejściowego do utworzonej liczby grup: [1] [43] [85] [127] Fakt, że algorytm k - średnich cechuje się licznymi wadami, sprawia, że chętniej używanym jest algorytm np. k-medoidów. W środowisku R, w ramach pakietu cluster, dostępna jest funkcja pam() realizująca algorytm o nazwie PAM (ang. Partitioning Around Medoid). Przykładem jej wywołania dla zbioru iris jest następująca komenda: > kluster <- pam(dane,3) > sil <- silhouette(kluster) > summary(sil) czego efektem będą następujące wyniki: Silhouette of 150 units in 3 clusters from pam(x = dane, k = 3) : Cluster sizes and average silhouette widths: 13
14 Individual silhouette widths: Min. 1st Qu. Median Mean 3rd Qu. Max Możemy odczytać podział algorytmem pam tych 150 obiektów (kwiatów ze zbioru IRIS) do 3 skupień. Widzimy rozkład obiektów do 3 klas oraz podstawowe statystyki tj. mediana, moda, pierwszy i trzeci kwartyl oraz elementy minimalny i maksymalny. Dodając polecenie: > plot(sil, col = c("red", "green", "blue")) zobrazujemy ów podział (rysunek 11). Silhouette plot of pam(x = dane, k = 3) n = clusters C j j : n j ave i Cj s i 1 : : : Average silhouette width : 0.55 Silhouette width s i Rysunek 11: Wykres metody k-medoidów Jeżeli dla tego samego zbioru danych chcemy zastosować algorytm grupowania hierarchicznego, możemy użyć funkcji hclust a do jej graficznej reprezentacji funkcji plot, tak jak to pokazuje kod: > d <- dist(dane, method = "euclidean") > fit <- hclust(d, method="ward") > plot(fit) Efektem będzie wykres zwany dendrogramem, z tym, że będzie on mało czytelny dla dużych zbiorów obserwacji, z tego względu, że wszystkie liście drzewa są wyrysowane na jednym poziomie na wykresie, i zwyczajnie nachodzą na siebie. Klasycznym algorytmem hierarchicznym jest właśnie algorytm aglomeracyjny, którego jednym z wersji jest algorytm o nazwie agnes (ang. AGlomerative NESting). Został on również zaimplementowany w środowisku R i realizowany jest przez wywołanie komendy o tej samej nazwie co nazwa algorytmu a więc agnes: klaster = agnes(dane, method="average") > plot(klaster) 14
15 Oczywiście drugi argument wywołania fuknkcji: method może przyjmować różne wartości w zależności od tego jaką metodę łączenia skupień wybierzemy mając do dyspozycji metody: najbliższego sąsiada, najdalszego sąsiada, średnich wiązań itp. Efektem wywołania funkcji plot z argumentem w postaci rezultatu funkcji agnes będzie dendrogram, który już jest bardziej czytelny, gdyż poszczególne poziomy drzewa są prezentowane na różnej wysokości na wykresie (jak to przedstawia rysunek 12). Dendrogram of agnes(x = dane, method = "average") Height dane Agglomerative Coefficient = 0.93 Rysunek 12: Dendrogram Jeśli chcielibyśmy sprawdzić różnice w postaci dendrgramu w zależności od tego jaką metodę łączenia skupień zastosowano: najbliższego sąsiada, najdalszego sąsiada czy metoda średniej odległości możemy wywołać następujące komendy w środowisku R: > par(mfrow=c(3,2)) > klaster = agnes(dane, method="average") > plot(klaster) 15
16 > klaster = agnes(dane, method="single") > plot(klaster) > klaster = agnes(dane, method="complete") > plot(klaster) Wówczas efektem będzie jeden wykres z trzema dendrogramami dla zbioru iris (rysunek 13). Banner of agnes(x = dane, method = "average") Dendrogram of agnes(x = dane, method = "average") Height Height Agglomerative Coefficient = 0.93 Banner of agnes(x = dane, method = "single") dane Agglomerative Coefficient = 0.93 Dendrogram of agnes(x = dane, method = "single") Height Height Agglomerative Coefficient = 0.85 Banner of agnes(x = dane, method = "complete") dane Agglomerative Coefficient = 0.85 Dendrogram of agnes(x = dane, method = "complete") Height Height Agglomerative Coefficient = 0.96 dane Agglomerative Coefficient = 0.96 Rysunek 13: Dendrogramy dla różnych metod łączenia skupień Podobna w działaniu do agnes() jest omówiona już po krótce wcześniej metoda grupowania hierarchicznego dostępna w funkcji hclust(stats). 4 Bibliografia Opracowanie przygotowano w oparciu o prace: 1. J. Koronacki, J. Ćwik: Statystyczne systemy uczące się, wydanie drugie, Exit, Warsaw, 2008, rozdział J. Ćwik, J. Mielniczuk: Statystyczne systemy uczące się - ćwiczenia w oparciu o pakiet R, Oficyna Wydawnicza PW, Warszawa,
17 3. Biecek P.: Na przełaj przez Data Mining, naprzelajprzezdm.pdf 17
Analiza skupie«konspekt do zaj : Statystyczne metody analizy danych
Analiza skupie«konspekt do zaj : Statystyczne metody analizy danych 1 Wprowadzenie Agnieszka Nowak-Brzezi«ska 14 stycznia 2010 Celem laboratorium jest analiza skupie«wybranych zbiorów danych w ±rodowisku
Hierarchiczna analiza skupień
Hierarchiczna analiza skupień Cel analizy Analiza skupień ma na celu wykrycie w zbiorze obserwacji klastrów, czyli rozłącznych podzbiorów obserwacji, wewnątrz których obserwacje są sobie w jakimś określonym
Eksploracja danych w środowisku R
Eksploracja danych w środowisku R Moi drodzy, niniejszy konspekt nie omawia eksploracji danych samej w sobie. Nie dowiecie się tutaj o co chodzi w generowaniu drzew decyzyjnych czy grupowaniu danych. Te
Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu
Data Mining Wykład 9 Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster Plan wykładu Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Sformułowanie problemu
Inteligentna analiza danych
Numer indeksu 150946 Michał Moroz Imię i nazwisko Numer indeksu 150875 Grzegorz Graczyk Imię i nazwisko kierunek: Informatyka rok akademicki: 2010/2011 Inteligentna analiza danych Ćwiczenie I Wskaźniki
Analiza skupień. Idea
Idea Analiza skupień Analiza skupień jest narzędziem analizy danych służącym do grupowania n obiektów, opisanych za pomocą wektora p-cech, w K niepustych, rozłącznych i możliwie jednorodnych grup skupień.
Algorytmy rozpoznawania obrazów. 11. Analiza skupień. dr inż. Urszula Libal. Politechnika Wrocławska
Algorytmy rozpoznawania obrazów 11. Analiza skupień dr inż. Urszula Libal Politechnika Wrocławska 2015 1 1. Analiza skupień Określenia: analiza skupień (cluster analysis), klasteryzacja (clustering), klasyfikacja
Analiza skupień. Analiza Skupień W sztucznej inteligencji istotną rolę ogrywają algorytmy grupowania
Analiza skupień W sztucznej inteligencji istotną rolę ogrywają algorytmy grupowania Analiza Skupień Elementy składowe procesu grupowania obiekt Ekstrakcja cech Sprzężenie zwrotne Grupowanie klastry Reprezentacja
Agnieszka Nowak Brzezińska
Agnieszka Nowak Brzezińska jeden z algorytmów regresji nieparametrycznej używanych w statystyce do prognozowania wartości pewnej zmiennej losowej. Może również byd używany do klasyfikacji. - Założenia
Algorytm grupowania danych typu kwantyzacji wektorów
Algorytm grupowania danych typu kwantyzacji wektorów Wstęp Definicja problemu: Typowe, rozważane dotychczas problemy koncentrowały się na nauczeniu na podstawie zbioru treningowego i zbioru etykiet klasyfikacji
Algorytm grupowania danych typu kwantyzacji wektorów
Algorytm grupowania danych typu kwantyzacji wektorów Wstęp Definicja problemu: Typowe, problemem często spotykanym w zagadnieniach eksploracji danych (ang. data mining) jest zagadnienie grupowania danych
ALGORYTM RANDOM FOREST
SKRYPT PRZYGOTOWANY NA ZAJĘCIA INDUKOWANYCH REGUŁ DECYZYJNYCH PROWADZONYCH PRZEZ PANA PAWŁA WOJTKIEWICZA ALGORYTM RANDOM FOREST Katarzyna Graboś 56397 Aleksandra Mańko 56699 2015-01-26, Warszawa ALGORYTM
Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV
Klasyfikatory: k-nn oraz naiwny Bayesa Agnieszka Nowak Brzezińska Wykład IV Naiwny klasyfikator Bayesa Naiwny klasyfikator bayesowski jest prostym probabilistycznym klasyfikatorem. Zakłada się wzajemną
Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633
Grupowanie Grupowanie 7 6 5 4 y 3 2 1 0-3 -2-1 0 1 2 3 4 5-1 -2-3 -4 x Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633 Wprowadzenie Celem procesu grupowania jest podział zbioru
Klasyfikator. ˆp(k x) = 1 K. I(ρ(x,x i ) ρ(x,x (K) ))I(y i =k),k =1,...,L,
Klasyfikator Jedną z najistotniejszych nieparametrycznych metod klasyfikacji jest metoda K-najbliższych sąsiadów, oznaczana przez K-NN. W metodzie tej zaliczamy rozpoznawany obiekt do tej klasy, do której
Co to jest grupowanie
Grupowanie danych Co to jest grupowanie 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Szukanie grup, obszarów stanowiących lokalne gromady punktów Co to jest grupowanie
Agnieszka Nowak Brzezińska Wykład III
Agnieszka Nowak Brzezińska Wykład III Naiwny klasyfikator bayesowski jest prostym probabilistycznym klasyfikatorem. Zakłada się wzajemną niezależność zmiennych niezależnych (tu naiwność) Bardziej opisowe
CLUSTERING. Metody grupowania danych
CLUSTERING Metody grupowania danych Plan wykładu Wprowadzenie Dziedziny zastosowania Co to jest problem klastrowania? Problem wyszukiwania optymalnych klastrów Metody generowania: k centroidów (k - means
Sieci Kohonena Grupowanie
Sieci Kohonena Grupowanie http://zajecia.jakubw.pl/nai UCZENIE SIĘ BEZ NADZORU Załóżmy, że mamy za zadanie pogrupować następujące słowa: cup, roulette, unbelievable, cut, put, launderette, loveable Nie
Agnieszka Nowak Brzezińska Wykład III
Agnieszka Nowak Brzezińska Wykład III Naiwny klasyfikator bayesowski jest prostym probabilistycznym klasyfikatorem. Zakłada się wzajemną niezależność zmiennych niezależnych (tu naiwność) Bardziej opisowe
Wykład 4: Statystyki opisowe (część 1)
Wykład 4: Statystyki opisowe (część 1) Wprowadzenie W przypadku danych mających charakter liczbowy do ich charakterystyki można wykorzystać tak zwane STATYSTYKI OPISOWE. Za pomocą statystyk opisowych można
METODY INŻYNIERII WIEDZY
METODY INŻYNIERII WIEDZY Metoda K Najbliższych Sąsiadów K-Nearest Neighbours (KNN) ĆWICZENIA Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej
Idea. Algorytm zachłanny Algorytmy hierarchiczne Metoda K-średnich Metoda hierarchiczna, a niehierarchiczna. Analiza skupień
Idea jest narzędziem analizy danych służącym do grupowania n obiektów, opisanych za pomocą wektora p-cech, w K niepustych, rozłącznych i możliwie jednorodnych grup skupień. Obiekty należące do danego skupienia
Techniki grupowania danych w środowisku Matlab
Techniki grupowania danych w środowisku Matlab 1. Normalizacja danych. Jedne z metod normalizacji: = = ma ( y =, rσ ( = ( ma ( = min = (1 + e, min ( = σ wartość średnia, r współczynnik, σ odchylenie standardowe
ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH
1 ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH WFAiS UJ, Informatyka Stosowana II stopień studiów 2 Eksploracja danych Co to znaczy eksploracja danych Klastrowanie (grupowanie) hierarchiczne Klastrowanie
Eksploracja danych. Grupowanie. Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne. Grupowanie wykład 1
Grupowanie Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Grupowanie wykład 1 Sformułowanie problemu Dany jest zbiór obiektów (rekordów). Znajdź naturalne pogrupowanie
METODY INŻYNIERII WIEDZY
METODY INŻYNIERII WIEDZY Metoda K Najbliższych Sąsiadów K-Nearest Neighbours (KNN) ĆWICZENIA Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej
Kompresja danych Streszczenie Studia Dzienne Wykład 10,
1 Kwantyzacja wektorowa Kompresja danych Streszczenie Studia Dzienne Wykład 10, 28.04.2006 Kwantyzacja wektorowa: dane dzielone na bloki (wektory), każdy blok kwantyzowany jako jeden element danych. Ogólny
4.3 Grupowanie według podobieństwa
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
Zagadnienie klasyfikacji (dyskryminacji)
Zagadnienie klasyfikacji (dyskryminacji) Przykład Bank chce klasyfikować klientów starających się o pożyczkę do jednej z dwóch grup: niskiego ryzyka (spłacających pożyczki terminowo) lub wysokiego ryzyka
Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS
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
Skalowanie wielowymiarowe idea
Skalowanie wielowymiarowe idea Jedną z wad metody PCA jest możliwość używania jedynie zmiennych ilościowych, kolejnym konieczność posiadania pełnych danych z doświadczenia(nie da się użyć PCA jeśli mamy
Metoda list prostych Wykład II. Agnieszka Nowak - Brzezińska
Metoda list prostych Wykład II Agnieszka Nowak - Brzezińska Wprowadzenie Przykładowa KW Inna wersja KW Wyszukiwanie informacji Metoda I 1. Przeglądamy kolejne opisy obiektów i wybieramy te, które zawierają
Metody analizy skupień Wprowadzenie Charakterystyka obiektów Metody grupowania Ocena poprawności grupowania
Wielowymiarowe metody segmentacji CHAID Metoda Automatycznej Detekcji Interakcji CHAID Cele CHAID Dane CHAID Przebieg analizy CHAID Parametry CHAID Wyniki Metody analizy skupień Wprowadzenie Charakterystyka
Czym jest analiza skupień?
Statystyczna analiza danych z pakietem SAS Analiza skupień metody hierarchiczne Czym jest analiza skupień? wielowymiarowa technika pozwalająca wykrywać współzależności między obiektami; ściśle związana
SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.
SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska BUDOWA DRZEW DECYZYJNYCH Drzewa decyzyjne są metodą indukcyjnego
METODY INŻYNIERII WIEDZY
METODY INŻYNIERII WIEDZY WALIDACJA KRZYŻOWA dla ZAAWANSOWANEGO KLASYFIKATORA KNN ĆWICZENIA Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej
Aproksymacja funkcji a regresja symboliczna
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą
Elementy statystyki wielowymiarowej
Wnioskowanie_Statystyczne_-_wykład Spis treści 1 Elementy statystyki wielowymiarowej 1.1 Kowariancja i współczynnik korelacji 1.2 Macierz kowariancji 1.3 Dwumianowy rozkład normalny 1.4 Analiza składowych
Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji
Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji Michał Witczak Data Mining 20 maja 2012 r. 1. Wstęp Dostarczone zostały nam 4 pliki, z których dwa stanowiły zbiory uczące
Wykrywanie nietypowości w danych rzeczywistych
Wykrywanie nietypowości w danych rzeczywistych dr Agnieszka NOWAK-BRZEZIŃSKA, mgr Artur TUROS 1 Agenda 1 2 3 4 5 6 Cel badań Eksploracja odchyleń Metody wykrywania odchyleń Eksperymenty Wnioski Nowe badania
Optymalizacja systemów
Optymalizacja systemów Laboratorium - problem detekcji twarzy autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, P. Klukowski Cel zadania Celem zadania jest zapoznanie się z gradientowymi algorytmami optymalizacji
CLUSTERING II. Efektywne metody grupowania danych
CLUSTERING II Efektywne metody grupowania danych Plan wykładu Wstęp: Motywacja i zastosowania Metody grupowania danych Algorytmy oparte na podziałach (partitioning algorithms) PAM Ulepszanie: CLARA, CLARANS
ALGORYTMY SZTUCZNEJ INTELIGENCJI
ALGORYTMY SZTUCZNEJ INTELIGENCJI Sieci neuronowe 06.12.2014 Krzysztof Salamon 1 Wstęp Sprawozdanie to dotyczy ćwiczeń z zakresu sieci neuronowych realizowanym na przedmiocie: Algorytmy Sztucznej Inteligencji.
Analiza skupień. Idea
Idea Analiza skupień Analiza skupień jest narzędziem analizy danych służącym do grupowania n obiektów, opisanych za pomocą wektora p-cech, w K niepustych, rozłącznych i możliwie jednorodnych grup skupień.
METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA
METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA AMFETAMINY Waldemar S. Krawczyk Centralne Laboratorium Kryminalistyczne Komendy Głównej Policji, Warszawa (praca obroniona na Wydziale Chemii Uniwersytetu
Uczenie się pojedynczego neuronu. Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0. Wówczas: W 1 x 1 + w 2 x 2 + = 0
Uczenie się pojedynczego neuronu W0 X0=1 W1 x1 W2 s f y x2 Wp xp p x i w i=x w+wo i=0 Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z=0 Wówczas: W 1 x 1 + w 2 x 2 + = 0 Algorytm
Drzewa decyzyjne i lasy losowe
Drzewa decyzyjne i lasy losowe Im dalej w las tym więcej drzew! ML Gdańsk http://www.mlgdansk.pl/ Marcin Zadroga https://www.linkedin.com/in/mzadroga/ 20 Czerwca 2017 WPROWADZENIE DO MACHINE LEARNING CZYM
SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.
SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska INFORMACJE WSTĘPNE Hipotezy do uczenia się lub tworzenia
Analiza składowych głównych. Wprowadzenie
Wprowadzenie jest techniką redukcji wymiaru. Składowe główne zostały po raz pierwszy zaproponowane przez Pearsona(1901), a następnie rozwinięte przez Hotellinga (1933). jest zaliczana do systemów uczących
Metody eksploracji danych w odkrywaniu wiedzy (MED) projekt, dokumentacja końcowa
Metody eksploracji danych w odkrywaniu wiedzy (MED) projekt, dokumentacja końcowa Konrad Miziński 14 stycznia 2015 1 Temat projektu Grupowanie hierarchiczne na podstawie algorytmu k-średnich. 2 Dokumenty
Analiza skupień. Idea
Idea Analiza skupień Analiza skupień jest narzędziem analizy danych służącym do grupowania n obiektów, opisanych za pomocą wektora p-cech, w K niepustych, rozłącznych i możliwie jednorodnych grup skupień.
IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ
IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ Celem ćwiczenia jest zapoznanie się ze sposobem działania sieci neuronowych typu MLP (multi-layer perceptron) uczonych nadzorowaną (z nauczycielem,
SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization
Wrocław University of Technology SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization Jakub M. Tomczak Studenckie Koło Naukowe Estymator jakub.tomczak@pwr.wroc.pl 4.1.213 Klasteryzacja Zmienne
ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH
1 ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH WFAiS UJ, Informatyka Stosowana II stopień studiów 2 Eksploracja danych Algorytmy klastujące Problem 3 Mając daną chmurę punktów chcielibyśmy zrozumieć ich
Analiza korespondencji
Analiza korespondencji Kiedy stosujemy? 2 W wielu badaniach mamy do czynienia ze zmiennymi jakościowymi (nominalne i porządkowe) typu np.: płeć, wykształcenie, status palenia. Punktem wyjścia do analizy
SCENARIUSZ LEKCJI. TEMAT LEKCJI: Zastosowanie średnich w statystyce i matematyce. Podstawowe pojęcia statystyczne. Streszczenie.
SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH Autorzy scenariusza:
Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)
Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych) Funkcja uwikłana (równanie nieliniowe) jest to funkcja, która nie jest przedstawiona jawnym przepisem, wzorem wyrażającym zależność wartości
Przestrzeń algorytmów klastrowania
20 listopada 2008 Plan prezentacji 1 Podstawowe pojęcia Przykłady algorytmów klastrowania 2 Odległość algorytmów klastrowania Odległość podziałów 3 Dane wejściowe Eksperymenty Praca źródłowa Podstawowe
Elementy modelowania matematycznego
Elementy modelowania matematycznego Modelowanie algorytmów klasyfikujących. Podejście probabilistyczne. Naiwny klasyfikator bayesowski. Modelowanie danych metodą najbliższych sąsiadów. Jakub Wróblewski
Spacery losowe generowanie realizacji procesu losowego
Spacery losowe generowanie realizacji procesu losowego Michał Krzemiński Streszczenie Omówimy metodę generowania trajektorii spacerów losowych (błądzenia losowego), tj. szczególnych procesów Markowa z
Sztuczna inteligencja : Algorytm KNN
Instytut Informatyki Uniwersytetu Śląskiego 23 kwietnia 2012 1 Algorytm 1 NN 2 Algorytm knn 3 Zadania Klasyfikacja obiektów w oparciu o najbliższe obiekty: Algorytm 1-NN - najbliższego sąsiada. Parametr
w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(), zwaną funkcją aproksymującą
MODELE LINIOWE. Dr Wioleta Drobik
MODELE LINIOWE Dr Wioleta Drobik MODELE LINIOWE Jedna z najstarszych i najpopularniejszych metod modelowania Zależność między zbiorem zmiennych objaśniających, a zmienną ilościową nazywaną zmienną objaśnianą
Metoda Karnaugh. B A BC A
Metoda Karnaugh. Powszechnie uważa się, iż układ o mniejszej liczbie elementów jest tańszy i bardziej niezawodny, a spośród dwóch układów o takiej samej liczbie elementów logicznych lepszy jest ten, który
Klasyfikator liniowy Wstęp Klasyfikator liniowy jest najprostszym możliwym klasyfikatorem. Zakłada on liniową separację liniowy podział dwóch klas między sobą. Przedstawia to poniższy rysunek: 5 4 3 2
Temat: Algorytm kompresji plików metodą Huffmana
Temat: Algorytm kompresji plików metodą Huffmana. Wymagania dotyczące kompresji danych Przez M oznaczmy zbiór wszystkich możliwych symboli występujących w pliku (alfabet pliku). Przykład M = 2, gdy plik
Wprowadzenie do analizy dyskryminacyjnej
Wprowadzenie do analizy dyskryminacyjnej Analiza dyskryminacyjna to zespół metod statystycznych używanych w celu znalezienia funkcji dyskryminacyjnej, która możliwie najlepiej charakteryzuje bądź rozdziela
STATYSTYKA I DOŚWIADCZALNICTWO
STATYSTYKA I DOŚWIADCZALNICTWO Wykład 9 Analiza skupień wielowymiarowa klasyfikacja obiektów Metoda, a właściwie to zbiór metod pozwalających na grupowanie obiektów pod względem wielu cech jednocześnie.
TEORETYCZNE PODSTAWY INFORMATYKI
1 TEORETYCZNE PODSTAWY INFORMATYKI WFAiS UJ, Informatyka Stosowana II stopień studiów Wykład 13b 2 Eksploracja danych Co rozumiemy pod pojęciem eksploracja danych Algorytmy grupujące (klajstrujące) Graficzna
Analiza Skupień Cluster analysis
Metody Eksploracji Danych w wykładzie wykorzystano: 1. materiały dydaktyczne przygotowane w ramach projektu Opracowanie programów nauczania na odległość na kierunku studiów wyższych Informatyka http://wazniak.mimuw.edu.pl
Wyszukiwanie informacji w internecie. Nguyen Hung Son
Wyszukiwanie informacji w internecie Nguyen Hung Son Jak znaleźć informację w internecie? Wyszukiwarki internetowe: Potężne machiny wykorzystujące najnowsze metody z różnych dziedzin Architektura: trzy
1. Grupowanie Algorytmy grupowania:
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
Analiza składowych głównych
Analiza składowych głównych Wprowadzenie (1) W przypadku regresji naszym celem jest predykcja wartości zmiennej wyjściowej za pomocą zmiennych wejściowych, wykrycie związku między wielkościami wejściowymi
Optymalizacja ciągła
Optymalizacja ciągła 5. Metoda stochastycznego spadku wzdłuż gradientu Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 04.04.2019 1 / 20 Wprowadzenie Minimalizacja różniczkowalnej
Naszym zadaniem jest rozpatrzenie związków między wierszami macierzy reprezentującej poziomy ekspresji poszczególnych genów.
ANALIZA SKUPIEŃ Metoda k-means I. Cel zadania Zadaniem jest analiza zbioru danych, gdzie zmiennymi są poziomy ekspresji genów. Podczas badań pobrano próbki DNA od 36 różnych pacjentów z chorobą nowotworową.
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
Eksploracja Danych wykład 4 Sebastian Zając WMP.SNŚ UKSW 10 maja 2017 Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja 2017 1 / 18 Klasyfikacja danych Klasyfikacja Najczęściej stosowana (najstarsza)
Generowanie ciągów pseudolosowych o zadanych rozkładach przykładowy raport
Generowanie ciągów pseudolosowych o zadanych rozkładach przykładowy raport Michał Krzemiński Streszczenie Projekt dotyczy metod generowania oraz badania własności statystycznych ciągów liczb pseudolosowych.
SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska
SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska DRZEWO REGRESYJNE Sposób konstrukcji i przycinania
Metody numeryczne I Równania nieliniowe
Metody numeryczne I Równania nieliniowe Janusz Szwabiński szwabin@ift.uni.wroc.pl Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/66 Równania nieliniowe 1. Równania nieliniowe z pojedynczym pierwiastkiem
STATYSTYKA OPISOWA. LICZBOWE CHARAKTERYSTYKI(MIARY)
STATYSTYKA OPISOWA. LICZBOWE CHARAKTERYSTYKI(MIARY) Praca z danymi zaczyna się od badania rozkładu liczebności (częstości) zmiennych. Rozkład liczebności (częstości) zmiennej to jakie wartości zmienna
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Metody optymalizacji Metody bezgradientowe optymalizacji bez ograniczeń Materiały pomocnicze do ćwiczeń
Testy nieparametryczne
Testy nieparametryczne Testy nieparametryczne możemy stosować, gdy nie są spełnione założenia wymagane dla testów parametrycznych. Stosujemy je również, gdy dane można uporządkować według określonych kryteriów
Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II
Wykład 6. Drzewa cz. II 1 / 65 drzewa spinające Drzewa spinające Zliczanie drzew spinających Drzewo T nazywamy drzewem rozpinającym (spinającym) (lub dendrytem) spójnego grafu G, jeżeli jest podgrafem
STATYSTYKA I DOŚWIADCZALNICTWO
STATYSTYKA I DOŚWIADCZALNICTWO Wykład 6 Test niezależności chi-kwadrat (χ 2 ) Cel: ocena występowania zależności między dwiema cechami jakościowymi/skategoryzowanymi X- pierwsza cecha; Y druga cecha Przykłady
Charakterystyki liczbowe (estymatory i parametry), które pozwalają opisać właściwości rozkładu badanej cechy (zmiennej)
Charakterystyki liczbowe (estymatory i parametry), które pozwalają opisać właściwości rozkładu badanej cechy (zmiennej) 1 Podział ze względu na zakres danych użytych do wyznaczenia miary Miary opisujące
Maciej Piotr Jankowski
Reduced Adder Graph Implementacja algorytmu RAG Maciej Piotr Jankowski 2005.12.22 Maciej Piotr Jankowski 1 Plan prezentacji 1. Wstęp 2. Implementacja 3. Usprawnienia optymalizacyjne 3.1. Tablica ekspansji
Wektory, układ współrzędnych
Wektory, układ współrzędnych Wielkości występujące w przyrodzie możemy podzielić na: Skalarne, to jest takie wielkości, które potrafimy opisać przy pomocy jednej liczby (skalara), np. masa, czy temperatura.
W kolejnym kroku należy ustalić liczbę przedziałów k. W tym celu należy wykorzystać jeden ze wzorów:
Na dzisiejszym wykładzie omówimy najważniejsze charakterystyki liczbowe występujące w statystyce opisowej. Poszczególne wzory będziemy podawać w miarę potrzeby w trzech postaciach: dla szeregu szczegółowego,
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.
Problem porządkowania zwanego również sortowaniem jest jednym z najważniejszych i najpopularniejszych zagadnień informatycznych. Dane: Liczba naturalna n i ciąg n liczb x 1, x 2,, x n. Wynik: Uporządkowanie
Otwórz R. Zmień katalog roboczy za pomocą File/Change Dir. Wczytaj plik przypisując go obiektowi o nazwie students:
1. Wczytywanie danych do programu R Otwórz R. Zmień katalog roboczy za pomocą File/Change Dir. Wczytaj plik przypisując go obiektowi o nazwie students: > students
Regresja wielokrotna. PDF created with FinePrint pdffactory Pro trial version http://www.fineprint.com
Regresja wielokrotna Model dla zależności liniowej: Y=a+b 1 X 1 +b 2 X 2 +...+b n X n Cząstkowe współczynniki regresji wielokrotnej: b 1,..., b n Zmienne niezależne (przyczynowe): X 1,..., X n Zmienna
UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH
Transport, studia niestacjonarne I stopnia, semestr I Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska Ewa Pabisek Adam Wosatko Postać układu równań liniowych Układ liniowych równań algebraicznych
Statystyka opisowa. Wykład I. Elementy statystyki opisowej
Statystyka opisowa. Wykład I. e-mail:e.kozlovski@pollub.pl Spis treści Elementy statystyku opisowej 1 Elementy statystyku opisowej 2 3 Elementy statystyku opisowej Definicja Statystyka jest to nauka o
Programowanie dynamiczne
Programowanie dynamiczne Ciąg Fibonacciego fib(0)=1 fib(1)=1 fib(n)=fib(n-1)+fib(n-2), gdzie n 2 Elementy tego ciągu stanowią liczby naturalne tworzące ciąg o takiej własności, że kolejny wyraz (z wyjątkiem
WYKŁAD 12. Analiza obrazu Wyznaczanie parametrów ruchu obiektów
WYKŁAD 1 Analiza obrazu Wyznaczanie parametrów ruchu obiektów Cel analizy obrazu: przedstawienie każdego z poszczególnych obiektów danego obrazu w postaci wektora cech dla przeprowadzenia procesu rozpoznania
Rozpoznawanie obrazów
Rozpoznawanie obrazów Laboratorium Python Zadanie nr 1 Regresja liniowa autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, M. Zięba, J. Kaczmar Cel zadania Celem zadania jest implementacja liniowego zadania
MEODY GRUPOWANIA DANYCH
Sztuczna inteligencja 9999 pages 17 MEODY GRUPOWANIA DANYCH PB 1 CWICZENIE I 1. Ze zbioru danych iris.tab wybra nastepuj ce obiekty: ID SL SW PL PW C 1 5.1 3.5 1.4 0.2 Iris-setosa 2 4.9 3.0 1.4 0.2 Iris-setosa