Methoden zur Cluster - Analyse Kapitel 4 Spezialvorlesung Modul 10-202-2206 (Fortgeschrittene Methoden in der Bioinformatik)
Jana Hertel Professur f¨ ur Bioinformatik Institut f¨ ur Informatik Universit¨ at Leipzig
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 1/14
Methoden zur Cluster - Analyse
Einf¨ uhrung
Cluster - Analyse
Finde ¨ahnliche Strukturen in großen Datens¨atzen → Cluster. Ordne jedes Objekt einem Cluster zu → Clustering. k-Means-Algorithmus Learning Vector Quantization EM-Algorithmus k-Nearest-Neighbor Klassifikation Beziehung zw. Eigenschaften der Objekte und Klassenzuordnung unbekannt! Als black box Algorithmen zur Klassifikation und Mustererkennung genutzt.
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 2/14
Methoden zur Cluster - Analyse
k-Means-Algorithmus
k-Means-Algorithmus
.. finde Cluster und deren Clusterzentren in einer Menge ungelabelter Objekte. Gegeben: initiale Menge an Zentren, alterniere die folgenden Schritte: 1. ∀ Zentren identifiziere Teilmenge an Trainingspunkten (Cluster), die n¨aher an diesem Zentrum liegen als an allen anderen 2. berechne Mittelwert aller Eigenschaften der Datenpunkte → neues Zentrum des Clusters Iteriere bis Algorithmus konvergiert.
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 3/14
Methoden zur Cluster - Analyse
k-Means-Algorithmus
Beispiel: Ein Durchlauf des k-means Algorithmus zur Bestimmung von 3 Gruppen.
Zuf¨allige Wahl der initialen Clusterzentren
Ordne Objekte (Rechtecke) den ihnen am n¨achsten liegenden Clusterzentren zu
Neuberechnung der Zentren anhand neuer Zuordnung
Neuverteilung der Objekte zu den Clusterzentren die am n¨achsten liegen
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 4/14
Methoden zur Cluster - Analyse
k-Means-Algorithmus
k-means mit Prototypen
Bisher: Cluster definiert durch Zentrum, Objekte nach min. Abstand zum Zentrum zugeordnet. Problem: Ausreiser! L¨ osungsansatz: Einf¨ uhrung von R Prototypen f¨ ur jede Klasse K F¨ uhre k-means in jeder Klasse einzeln durch um R Prototypen zu finden → R Zentren von R Sub-Klassen jeder Klasse! Label jeden der K × R Prototypen entspr. der zugeh¨ origen Klasse Klassifiziere ein Objekt x zu der Klasse mit n¨achstliegenden Prototyp
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 5/14
Methoden zur Cluster - Analyse
k-Means-Algorithmus
k-means mit Prototypen
Problem: Einige der Prototypen zu nah an den Klassengrenzen → Klassifizierungsfehler! Warum? Bei Einzeldurchf¨ uhrung von k-means, Einfluss benachbarter Klassen nicht ber¨ ucksichtigt. L¨ osung: Benutze alle Datenpunkte um Prototypen zu bestimmen!
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 6/14
Methoden zur Cluster - Analyse
Learning Vector Quantization - LVQ
Learning Vector Quantization - LVQ Idee: Trainingspunkte ziehen richtige Prototypen an und stoßen falsche ab. 1. W¨ahle R initiale Prototypen f¨ ur jede Klasse m1 (k), m2 (k), . . . , mR (k), k = 1, 2, . . . , K 2. W¨ahle ein Trainingsobjekt xi zuf¨allig (Sample mit Zur¨ ucklegen!), mj (k) ist n¨achster Prototyp zu xi a) Falls xi in Klasse k, verschiebe Prototyp in Richtung xi : mj (k) ← mj (k) + (xi − mj (k)) b) sonst, schiebe Prototyp von xi weg: mj (k) ← mj (k) − (xi − mj (k))
3. Wiederhole 2, wobei Lernrate mit jeder Iteration Richtung 0 reduziert wird.
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 7/14
Methoden zur Cluster - Analyse
Bild: k-means mit 5 Prototypen
J. Hertel Machine learning in bioinformatics K4
Learning Vector Quantization - LVQ
Bild: LVQ, gestartet mit k-means L¨ osung. Prototypen wurden von den Klassengrenzen weggeschoben.
Bioinf - Uni Leipzig 8/14
Methoden zur Cluster - Analyse
EM Algorithmus
Gauss’sche Mischverteilungen - EM Algorithmus
¨ Ahnlich k-means und LVQ, zur Bestimmung weicher Klassengrenzen. Jedes Cluster durch Gaussverteilung mit Centroid und Covariancematrix beschrieben. 1. E-Schritt: Jeder Beobachtung ein Gewicht f¨ ur jedes Cluster zugewiesen, entspr. der Verteilung Punkte nahe Centroid - Gewicht nahe 1 f¨ ur dieses Cluster und 0 f¨ ur alle anderen, Punkte zwischen Centroids bekommen entspr. Gewichtsverteilung
2. M-Schritt: Neuberechnung von Centroids und Covarianzen f¨ ur jedes Cluster → EM Algorithmus ∼ weiche Clustering Methode
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 9/14
Methoden zur Cluster - Analyse
Bild: k-means mit 5 Prototypen
EM Algorithmus
Bild: EM Algorithmus, gestartet auf k-means L¨ osung.
Klassengrenzen grob ¨ ahnlich, aber f¨ ur Gaussian Model weich! Obwohl beide Methoden einen gr¨ unen Prototyp angeben, kann Gaussian Model diese Region ignorieren. J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 10/14
Methoden zur Cluster - Analyse
k-Nearest-Neighbor Klassifikation
k-Nearest-Neighbor Klassifikation Speicherbasierte Methode, welche kein trainiertes Model vorraussetzt. Prinzip: Gegeben ein Objekt x0 Finde k Trainingsobjekte x( r ), r = 1, . . . , k, die am n¨achsten an x0 liegen Klassifiziere nach Mehrheitsprinzip zwischen den k Nachbarn Geeignet f¨ ur Probleme bei denen: viele m¨ ogliche Prototypen per Klasse Klassengrenzen sehr unregelm¨aßig Vielf¨altige Anwendung u.a. in Handschrifterkennung, Analyse von Satellitenbildern und EKG Mustern.
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 11/14
Methoden zur Cluster - Analyse
Bild: k-means mit 5 Prototypen
k-Nearest-Neighbor Klassifikation
Bild: 15-nearest Neighbor
Entscheidungsgrenze weicher als bei k-means Klassifikationen. J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 12/14
Methoden zur Cluster - Analyse
Bild: k-means mit 5 Prototypen
k-Nearest-Neighbor Klassifikation
Bild: 1-nearest Neighbor
Beziehung zu Protoyp-Methoden: k Trainingsobjekt(e) entsprechen 1 Prototyp. J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 13/14
Methoden zur Cluster - Analyse
k-Nearest-Neighbor Klassifikation
How to choose k?
Problem: kleines k → Bias klein, aber Varianz hoch! L¨ osungsansatz: k=1 k + + solange Fehlerrate und Varianz sich verbessern ← Abh¨angig vom Problem erh¨alt man verschiedene Werte f¨ ur k.
J. Hertel Machine learning in bioinformatics K4
Bioinf - Uni Leipzig 14/14