Clustering. Ausarbeitung von Michael Speckner. Proseminar Data Mining

Ähnliche Dokumente
5. Clusteranalyse. Lernziele: Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

2. Datenvorverarbeitung

Naive Bayes. Naive Bayes

Hä?! Ich gebe dir zwei Beispiele, schau einfach mal! Kapitel 5: Berechnen wir die Wahrscheinlichkeit!

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke

Bayes sches Lernen: Übersicht

Vorab : Von dem indischen Mathematiker D. R. Kaprekar stammt folgender Zusammenhang :

Sortierverfahren für Felder (Listen)

Mathematik: LehrerInnenteam Arbeitsblatt Semester ARBEITSBLATT 12. Erwartungswert, Varianz und Standardabweichung

Übungen mit dem Applet Vergleich von zwei Mittelwerten

1 Dichte- und Verteilungsfunktion

Mathematische Grundlagen III

Microsoft Excel 2007 Basis. Leseprobe

Kapitel ML:IV (Fortsetzung)

Kenngrößen von Zufallsvariablen

SS 2016 Torsten Schreiber

Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen. Clusteranalyse. Tobias Scheffer Thomas Vanck

Zeichnen von Graphen. graph drawing

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester 2016

Künstliche Intelligenz Maschinelles Lernen

Clusteranalyse: Gauß sche Mischmodelle

Konfidenzintervalle Grundlegendes Prinzip Erwartungswert Bekannte Varianz Unbekannte Varianz Anteilswert Differenzen von Erwartungswert Anteilswert

Grundlegende Eigenschaften von Punktschätzern

Statistische Auswertung in der Betriebsprüfung

3. Das Reinforcement Lernproblem

1. Allgemeine Hinweise

Lösungen zur Klausur GRUNDLAGEN DER WAHRSCHEINLICHKEITSTHEORIE UND STATISTIK

9 Faktorenanalyse. Wir gehen zunächst von dem folgenden Modell aus (Modell der Hauptkomponentenanalyse): Z = F L T

Randomisierte Algorithmen 2. Erste Beispiele

Dynamisches Huffman-Verfahren

Motivation. Themenblock: Klassifikation. Binäre Entscheidungsbäume. Ansätze. Praktikum: Data Warehousing und Data Mining.

Bayes Klassifikatoren M E T H O D E N D E S D A T A M I N I N G F A B I A N G R E U E L

Einführung in die Wahrscheinlichkeitsrechnung

Arbeiten mit Excel. 1. Allgemeine Hinweise

Anleitung: Standardabweichung

Brückenkurs Statistik für Wirtschaftswissenschaften

Personalisierung. Der Personalisierungsprozess Nutzerdaten erheben aufbereiten auswerten Personalisierung. Data Mining.

5 Zwei spieltheoretische Aspekte

Carl-Engler-Schule Karlsruhe Physik-Labor (BS/BK/FS) 1 (5)

Datenstrukturen & Algorithmen

Anpassungstests VORGEHENSWEISE

4. Erstellen von Klassen

Anhang 6. Eingangstest II. 1. Berechnen Sie den Durchschnitt von 6 + 3,9 + 12, 0 = 2. Berechnen Sie: : = 3. Berechnen Sie: = 3 und 6

Änderungsbekanntgabe vom

Anleitung zum Java - Applet

Lage- und Streuungsparameter

Dieses Quiz soll Ihnen helfen, Kapitel besser zu verstehen.

Prof. Dr. Christoph Kleinn Institut für Waldinventur und Waldwachstum Arbeitsbereich Waldinventur und Fernerkundung


Bayessches Lernen Aufgaben

Bitte am PC mit Windows anmelden!

Wahrscheinlichkeitstheorie und Statistik vom

Anhang 5. Eingangstest I. 2. Berechnen Sie den Durchschnitt von 6 + 3,9 + 12, 0 = 3 und Wie groß ist die Summe von Berechnen Sie: : =

Da die Hieroglyphen in der Präsentation nicht erkennbar waren, hier Kopien der Folien.

Bitte bearbeite zunächst alle Aufgaben bevor du einen Blick in die Lösungen wirfst.

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK

Statistik Testverfahren. Heinz Holling Günther Gediga. Bachelorstudium Psychologie. hogrefe.de

Corinne Schenka Vorkurs Mathematik WiSe 2012/13

Wie viele Produkte müssen zerstörend in der Qualitätskontrolle geprüft werden? DRK-Blutspendedienst West

12 (2-4)-Bäume Implementierbare Funktionen. (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang

Kombinatorik: Abzählverfahren (Teschl/Teschl 7) Summenregel. Allgemeiner

Sonderanhang: Manuelle Berechnungen der Statistikaufgaben

Professionelle Seminare im Bereich MS-Office

Streaming Data: Das Modell

Clustering von Dokumenten (k-means, HCL)

Grundwissen zur Stochastik

Grundbegriffe der Wahrscheinlichkeitsrechnung

Übung 1: Wiederholung Wahrscheinlichkeitstheorie

Grundlagen und Basisalgorithmus

Statistische Verfahren in der Künstlichen Intelligenz, Bayesische Netze

Gruber I Neumann. Erfolg in VERA-8. Vergleichsarbeit Mathematik Klasse 8 Gymnasium

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Fehlerrechnung. Einführung. Jede Messung ist fehlerbehaftet! Ursachen:

KAPITEL 2. Kombinatorik

Statistik. Jan Müller

Datenanalyse. (PHY231) Herbstsemester Olaf Steinkamp

Statistik II Übung 1: Einfache lineare Regression

Amortisierte Analysen

6 Vertiefende Themen aus des Mechanik

Welche Verteilung sollte ich verwenden?

Randomisierte Algorithmen

Methodenlehre. Vorlesung 10. Prof. Dr. Björn Rasch, Cognitive Biopsychology and Methods University of Fribourg

Statistische Tests für unbekannte Parameter

Kapitel VI - Lage- und Streuungsparameter

Kommentiertes Beispiel für das Gaußsche Eliminationsverfahren

Datenstrukturen & Algorithmen Lösungen zu Blatt 6 FS 14

Erzeugung zufälliger Graphen und Bayes-Netze

Kombinatorik. Additions- und Multiplikationsgesetz

Tabellenkalkulation 1. Einheit 5 Rechnerpraktikum EDV

Konfidenzintervall für den Anteilswert θ. Konfidenzintervalle. Jost Reinecke. Universität Bielefeld. 13. Juni 2005

Berechnung des LOG-RANK-Tests bei Überlebenskurven

Physikprotokoll: Fehlerrechnung. Martin Henning / Torben Zech / Abdurrahman Namdar / Juni 2006

RECHNEN MIT WORD 2010

Kurs über Lineare Gleichungssysteme. PD Dr. Karin Halupczok

P (X = 2) = 1/36, P (X = 3) = 2/36,...

Diese Unterlage bezieht sich auf Excel 2003 (auf Deutsch). Die Benutzeroberfläche kann in anderen Versionen der Software erheblich anders aussehen.

Domain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing

Signalverarbeitung 2. Volker Stahl - 1 -

Einführung 17. Teil I Kopfüber eintauchen in die Statistik 23. Kapitel 1 Kategoriale Daten zusammenfassen: Häufigkeiten und Prozente 25

Transkript:

Clustering Ausarbeitung von Michael Speckner Proseminar Data Mining

Einleitung Das Clustering wird verwendet, wenn man keine Klassen vorhersagen kann, aber die Instanzen in natürliche Gruppen einteilen kann. Es gibt verschiedene Arten des Clustering : 1. Die Gruppen, die identifiziert wurden, schließen sich aus und somit gehört eine Instanz nur zu einer Gruppe. 2. Die Gruppen überlappen sich, und so kann es vorkommen, daß eine Instanz in mehrere Gruppen gehört. 3. Es kann auch sein, daß die Zugehörigkeit zu einer Gruppe durch die Wahrscheinlichkeit bestimmt wird. 4. Die Gruppen werden hierarchisch in einem Baum strukturiert. Problem : Um ein gutes Ergebnis zu erhalten, sollte man den dafür geeigneten Algorithmus wählen. Aber da nur wenige Algorithmen bekannt sind, kann man nicht immer den besten Algorithmus wählen, weil man ihn vielleicht noch gar nicht kennt. Man muß sich mit dem Algorithmus zufrieden geben, der von den Bekannten am Besten geeignet ist. k means Algorithm Der k means Algorithmus wird nur für numerische Werte benützt. Wie das nearest neighbor scheme des instance based learning ist der k means Algorithmus eine einfache Methode ist, die Jahrzehnte lang verwendet wurde. Methode : 1. Zuerst wählt man den Parameter k, der angibt, wieviel Cluster gebildet werden sollen. 2. Man wähle k Punkte zufällig aus, die dann als Zentrum eines jeweiligen Clusters dienen. 3. Die Instanzen werden nun zu ihrem nächsten Zentrum zugeteilt, wobei als Metrik die euklidische Abstandsfunktion dient. 4. Jetzt werden von diesen Clustern die Flächenschwerpunkte ausgerechnet. 5. Nun verwende die errechneten Schwerpunkte als neue Zentren für das Clustering. 6. Beginne mit diesen neuen Punkten wieder bei 3. bis sich keine Änderung mehr einstellt. Die Zentren haben sich stabilisiert und bleiben konstant. Problem : Der Algorithmus findet nicht immer eine vernünftige Gruppierung. Denn zum Beispiel sollten 4 Daten wie ein Rechteck angeordnet sein, so kann man an fast jeder Stelle die Anfangspunkte wählen und bekommt dann Cluster, welche jeweils die beiden Punkte an der kurzen Seite beinhalten. Sollte man aber die Anfangspunkte auf die beiden Seitenhalbierenden der langen Seite legen hat man auch eine stabile Form. Es befinden sich aber nun die beiden Punkte im Cluster, die durch die lange Seite getrennt wurden, welches nicht der Sinn dieses Algorithmus ist.

Um die Chancen zu steigern, ein globales Minimum zu finden, wiederholt man den ganzen Algorithmus mehrmals mit verschiedenen Ausgangspunkten und wählt danach die beste Aufteilung. Incremental clustering Die zweite Methode wurde in den späten 80iger Jahren entwickelt und durch zwei Systeme begründet, COBWEB für nominale Attribute und CLASSIT für numerische Attribute. Die Instanzen werden beim Clustering hierarchisch angeordnet. Die Instanzen werden in einen Baum eingeordnet. Dabei kann es vorkommen, daß nur eine Instanz in ein Blatt eingeordnet werden muß oder man eine radikale Umstrukturierung des Baumes vornehmen muß. Dazu benötigt man die Category utility, die die allgemeine Qualität der Teilung von Instanzen mißt. Anhand der folgenden Beispieldaten soll der Algorithmus erklärt werden. Man nimmt nun die erste Zeile und hängt sie an die Wurzel an ( Bild a ), wobei man eigentlich die Spalte play für die Einordnung weggelassen hat und im Diagramm nur notiert hat. Man rechnet nun mit der Category utility den Wert der Wahrscheinlichkeit eines Attributes aus, daß dieses Attribut in ein bestimmtes Cluster gehört. Man kann somit vergleichen, ob ein schon bestehender Knoten ein guter Wirt für den neuen Knoten wäre. Dies ist bei den ersten fünf Knoten nicht der Fall ( Bild b ). Die Zeile e und f unterscheiden sich nur in einem Wert nämlich windy und somit können diese beiden Blätter unter einem Knoten zusammengefaßt werden ( Bild c ). Die Zeile g wird jetzt wiederum an dieses neue Cluster angehängt, da es sich von f nur im Wert von outlook unterscheidet. Die Prozedur des Einordnens geht nun so von statten : Erst vergleicht man den Wert von g mit den fünf oberen Knoten und entscheidet daran in welchen er eingeordnet werden kann. Dies ist der Knoten ganz rechts. Darauf vergleicht man den Wert mit den schon bestehenden Blättern und erhält als Antwort, daß g ein neues Blatt bilden soll ( Bild d ).

Um nun h einzuordnen werden nun die Blätter a und d zusammengefaßt, da a der beste Vergleicher und d der zweitbeste Vergleicher in der obersten Etage ist. Diese werden beide von der category utility gespeichert, da sich h gegenüber a nur in temperature unterscheidet und gegenüber d nur in outlook. Da beide Werte gleich sind, werden sie nun zusammengefaßt und h dazu gehängt ( Bild e ). Wenn man diesen Algorithmus nun weiter verfolgt gelangt man dann für die Anfangsdaten zu einem Baum mit zwei Hauptclustern, welche wiederum Untercluster haben ( Bild f ). Bei diesem Algorithmus werden zwei Operationen angewandt. Die Erste ist merging. Dabei werden Blätter eines Clusters zusammengefaßt und bilden ein Untercluster. Im Beispiel wurde durch das Einfügen des h Blattes ein merge verursacht zwischen a und d. Die zweite Operation ist splitting, welche angewandt wird, wenn man den Besten Wirt identifiziert hat, aber das merging sich als nicht profitabel herausgestellt hat. Beim splitting wird genau das Gegenteil des merging gemacht indem man ein Knoten durch seine Kinder ersetzt. Beispiel hierfür wäre, wenn man in Bild d die Blätter e, f und g splitten würde, bekäme man die Wurzel und daran alle sieben Blätter auf der gleichen Ebene ( von a g ). In diesem Beispiel sieht man, daß nicht immer ein gutes Clustering entsteht. Es gibt hier kein reines Clustering, wo nur yes oder no steht. Es kommt bei der Eingabe auf die Reihenfolge an, denn Zeile a und Zeile b unterscheiden sich nur im Wert windy, enden aber in zwei völlig verschiedenen Clustern. Dies liegt daran, daß b sofort nach a kam und deshalb kein Untercluster bildete.

Category utility Die Category utility dient zur Berechnung zu welchem Blatt oder Knoten eine neue Instanz gehören soll. Formel für nominale Instanzen : Die Doppelsumme summiert alle Attribute. ai ist das i-te Attribut. Dieses Attribut hat die Werte vi1, vi2,..., die über j summiert werden. Die Summierung über l rechnet dann die Cluster mit ein. Im Inneren wird die Wahrscheinlichkeit, daß ein Attribut vorhanden ist von der Wahrscheinlichkeit, daß ein Attribut in diesem Cluster liegt abgezogen. Hat man nur ein Cluster, so ist die Differenz 0 und man erhält kein gutes Ergebnis. Sobald man mehrere Cluster bildet, erhält man unterschiedliche Wahrscheinlichkeiten und kann dann das Attribut einordnen, denn Ziel ist es, daß die Differenz möglichst groß wird. Durch k wird geteilt, da man ansonsten jeder Instanz ein eigens Cluster geben würde, und man sich dadurch nichts gespart hat. Am vorherigen Beispiel sieht man die Auswirkung dieser Formel am Besten. Um numerische Attribute zu verwenden wird mit der Normalverteilung gearbeitet und nach einigen Umformungen erhält man die Formel : Die äußere Summierung ist dieselbe, wie bei der Formel für nominale Attribute. In der Klammer wird von der Standardabweichung des Clusters die Standardabweichung des Attributes subtrahiert. Hier gilt ebenfalls, daß die Differenz möglichst groß sein sollte. Der Klammerausdruck ähnelt der Differenz der nominalen Formel, da dasselbe Ziel verfolgt wird. Probability based clustering Die Grundlage des statistischen Clustering ist das statistische finite mixture Modell. Dieses Clustering arbeitet nur noch mit numerischen Werten. Eine mixture ist ein Satz von Wahrscheinlichkeiten, die k Cluster darstellen, die die Attributwerte des jeweiligen Clusters abdecken. Hier hat jedes Cluster eine andere Verteilung. Jede Instanz gehört nur zu einem Cluster. Die Cluster sind nicht gleich wahrscheinlich, weil es eine Wahrscheinlichkeitsverteilung gibt, die die relative Bevölkerung dieses Clusters angibt. Die einfachste finite mixture Situation ist es, wenn man nur ein numerisches Attribut hat, das für jedes Cluster eine Gauß- oder Normalverteilung besitzt. Am Beispiel soll dieses näher erklärt werden. Man hat zwei Cluster A und B, welche beide einen Mittelwert

eine Standardabweichung und eine Wahrscheinlichkeit p haben. p gibt an, mit welcher Wahrscheinlichkeit eine Instanz zum Cluster A beziehungsweise zum Cluster B gehört. Hierbei kann A durch die Formel pa = ( 1 pb ) berechnet werden. Haben wir nun eine Instanz x gehört sie mit einer bestimmten Wahrscheinlichkeit zum Cluster A. Diese kann durch die Formeln ausgerechnet werden. Problem : Normalerweise kennt man weder die Verteilung noch die fünf Parameter ( zwei Mal der Mittelwert, zwei Mal die Standardabweichung und die Wahrscheinlichkeit ). Ein möglicher Algorithmus zur Berechnung dieser Parameter ist der EM Algorithmus.

Der EM Algorithmus Der EM Algorithmus ähnelt der Prozedur des k means Algorithmus und wiederholt diese. 1. Man mache eine Anfangsannahme für die fünf Parameter. 2. Verwende diese Werte um die Clusterwahrscheinlichkeit zu berechnen. 3. Verwende diese Wahrscheinlichkeiten, um die Parameter wieder auszurechnen. 4. Beginne wieder mit 2. Dieser Algorithmus hat nur ein Problem. Man kennt nur die Clusterwahrscheinlichkeiten und nicht die Cluster selbst. Diese Wahrscheinlichkeiten verhalten sich aber wie Gewichte. Die Wahrscheinlichkeiten wi ist die Wahrscheinlichkeit, daß die Instanz i zum Cluster A gehört. Um die Wahrscheinlichkeit zu berechnen kann wieder die Formel berechnet werden. Der EM Algorithmus hat aber noch ein weiteres Problem, da er in die Richtung eines festen Punktes konvergiert, diesen aber nie erreicht. Hier wird wieder nur ein lokales Maximum berechnet, das sich vom globalen stark unterscheiden kann. Aus diesem Grund sollte man mehrere Wiederholungen mit unterschiedlichen Anfangswerten für die Parameter durchführen. Extending the Mixture Model Extending the mixture Model ist die Anpassung des probability based Algorithmus auf die Realität, da man nicht nur mit zwei Klassen arbeitet. Die Basismethode ist dieselbe, wird jetzt nur auf mehrere Klassen angewandt. Die Wahrscheinlichkeiten jedes Attributes werden multipliziert, um die Gemeinschaftswahrscheinlichkeit für die Instanzen zu erhalten. Wenn bekannt ist, daß die Datei korrelierte Attribute enthält, kann man daraus folgern, daß die Unabhängigkeitsannahme nicht länger gültig ist. Mit n unabhängigen Attributen erhält man für jedes Attribut einen Mittelwert und eine Standardabweichung. Mit n covarianten Attributen erhält man n + n (n+1) / 2 Parameter und eine n x n Covarianzmatrix. Ein nominales Attribut mit v möglichen Werten wird durch v Zahlen charakterisiert, die die Wahrscheinlichkeit darstellen. Und ein anderer Satz an Zahlen wird für jede Klasse gebraucht, damit k * v Parameter im Ganzen. k steht für die Anzahl der Cluster. Wenn beide Formen ( numerische wie nominale Attribute ) verwendet werden ist es für diesen Algorithmus kein Problem. Fehlende Werte werden einfach weggelassen.

Bayesian clustering Das größte Problem des probability - based clustering ist das overfitting. Overfitting kann hier in zwei Formen auftreten: 1. Man wählt eine zu große Anzahl an Clustern 2. Man wählt eine Verteilung mit zu vielen Parametern. Der extremste Fall des ersten overfitting wäre, wenn man jeder Instanz ein eigenes Cluster zuordnen würde. Das zweite overfitting tritt ein, weil man nicht weiß, wie viele der Attribute kovariant sind. Deshalb sollte man verschiedene Möglichkeiten ausprobieren und wählt dann das Maximum. Man benützt die Bayes Methode um overfitting zu vermeiden. bayesian clustering AUTOCLASS ist ein bayes clustering Schema, daß das finite mixture Modell benützt. Es kann sowohl numerische als auch nominale Attribute verwenden und benützt den EM Algorithmus um zu schätzen, ob die Parameter der Wahrscheinlichkeitsverteilung am Besten zu den Daten passen. Der EM Algorithmus wird mehrere Male wiederholt, da man ja nicht gleich das globale Maximum erhält. Doch AUTOCLASS kann noch mehr, denn es betrachtet verschiedene Anzahlen von Clustern und betrachtet Maße der Kovarianz und verschiedene Wahrscheinlichkeitsverteilungsarten für die numerischen Attribute.