Advertisement
Guest User

Untitled

a guest
Jan 20th, 2019
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.08 KB | None | 0 0
  1. In dieser Aufgabe sollt ihr den in der Vorlesung vorgestellte k-means-Algorithmus implementieren.
  2. Dieser soll nach 100 Schritten oder sobald in zwei aufeinanderfolgenden Iterationen keine Änderung stattfindet terminieren.
  3.  
  4. Als Eingabe erhaltet ihr ein Array aus 2-dimesionalen Punkten namens datenpunkte.
  5.  
  6. Das Ergebnis sollt ihr in dem Punktearray clusterZentren speichern. Dieses wird in Abhängigkeit von dem von euch gewählten k initialisiert.
  7.  
  8. k-Means Algorithmus
  9.  
  10. 1. Wähle zufällig k Clusterzentren (zb. aus den gegebenen Punkten)
  11.  
  12. 2. Weise jedem Punkt dem Clusterzentrum zu, welches ihm am Nächsten liegt.
  13.  
  14. 3. Berechne für jedes so enstandene Cluster ein neues Clusterzentrum.
  15.  
  16. 4. Überprüfen ob sich die Clusterzentrum zum vorherigen Durchgang verändert haben. Wenn dies der Fall ist, wiederhole ab Schritt 2, wenn nicht ist dies der Endzustand.
  17.  
  18.  
  19. Beispiel
  20. Es sind die Datenpunkte (1,0) , (2,0), (3,0), (10,0) , (11,0) und (12,0) gegeben. Für das k wird k = 2 gewählt. Als Ergebnis steht am Ende im Array clusterzentrum (1.5,0) und (10.5,0) als zwei Clusterzentren der gegebenen Punkte.
  21.  
  22.  
  23.  
  24. Tipps
  25. k ist ein ganzzahliger Wert und muss selbst gewählt werden.
  26. k ist möglichst klein zu wählen, aber so, dass jedem Cluster von Datenpunkten ein Clusterzentrum zugewiesen werden kann.
  27. Die initialen Clusterzentren sollen zufällige Punkte der Datenwolke sein.
  28. Das Ergebnis soll in ein Array von 2D-Punkten namens clusterZentren geschrieben werden.
  29. Es ist der totale Fehler bestehend aus Summiertem Fehler aller Datenpunkte zum jeweiligen Clusterzentrum und Offset für Clusterzentren zu minimieren (die Berechnung dieses Fehlers geschieht automatisch).
  30. Der Offset für Clusterzentren steigt linear mit Anzahl der Clusterzentren.
  31. Daher sollte das bestmögliche Ergebnis mit möglichst wenigen Clusterzentren angestrebt werden.
  32.  
  33. Die genaue Funktionsweise von k-Means-Clustering kann dem Vorlesungsmaterial entnommen werden.
  34.  
  35.  
  36. Hinweis: Für die graphische Ansicht (Ausführen) ist es erforderlich, die Funktion redraw(); einmalig nachdem die Clusterzentren verändert wurden aufzurufen.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement