k-Means: sieh zu, wie eine Maschine Gruppen findet, ohne dass jemand sie lehrt

Streue ein paar Punkte, wähle die Anzahl der Gruppen und sieh zu, wie die Zentren wandern, bis die Cluster einrasten. Keine Labels, kein Lehrer: unüberwachtes Lernen zum Zuschauen.

y26w37

Letzte Woche rollte die Maschine bergab auf eine bekannte Antwort zu. Diese Woche sagt ihr niemand die Antwort. Du gibst ihr einen Haufen Punkte und eine einzige Zahl, k, die Anzahl der gesuchten Gruppen. Die Gruppen muss sie selbst entdecken. Das ist unüberwachtes Lernen: keine Labels, kein Lehrer, nur Struktur, die die Maschine aus rohen Daten gräbt.

Das Gadget unten ist eine k-Means-Spielwiese. Die kleinen Punkte sind deine Daten. Die großen Rauten sind Zentren (Centroids), die aktuelle Schätzung für die Mitte jeder Gruppe. Der ganze Algorithmus besteht aus zwei wiederholten Zügen:

  1. Zuordnen: jeder Punkt nimmt die Farbe seines nächsten Zentrums an.
  2. Aktualisieren: jedes Zentrum rückt in die Durchschnittsposition der Punkte, die es gerade gewählt haben.

Das war es. Führe diese zwei Züge immer wieder aus (das heißt Lloyd-Algorithmus), und die Zentren wandern, bis niemand mehr die Gruppe wechseln will.

Probier das:

  1. Drücke ein paar Mal Schritt. Sieh den beiden Phasen zu: Punkte färben sich um, dann springen die Rauten in die Mitte ihrer Farbe. Drücke Start, um bis zur Ruhe zu wiederholen.
  2. Klicke auf leere Fläche, um eigene Punkte zu setzen, oder drücke Neue Punkte für eine frische Streuung. Starte dann erneut und sieh neue Grenzen entstehen.
  3. Ändere k. Verlange 2 Gruppen, wo klar 3 sind, und die Maschine muss zwei Wolken verschmelzen. Verlange 5, wo 3 sind, und sie zerteilt eine echte Gruppe. k-Means findet genau so viele Gruppen, wie du verlangst, ob sie wirklich da sind oder nicht.

Warum das wichtig ist

Die meisten Daten der Welt kommen ohne Labels: Webseiten, Bilder, Kundenverhalten, Genexpression. Man kann einer Maschine nicht immer die richtige Antwort sagen, weil sie niemand kennt. Clustering ist, wie ein System diesen rohen Haufen von selbst in Struktur schneidet, und k-Means, in den 1950ern veröffentlicht, ist bis heute das erste Werkzeug, zu dem die meisten greifen.

Es ist das Gegenstück zum überwachten Lernen, wo das Modell an gelabelten Beispielen trainiert. Beide sind Zweige des maschinellen Lernens, doch unüberwachtes Lernen kommt ohne Lösungsschlüssel aus. Derselbe Instinkt, “Ähnliches zusammenlegen”, steckt unter den riesigen Datensätzen, die moderne Bild- und Sprachmodelle trainierten: bevor ein Netz lernen konnte, die Fotos von ImageNet hinter AlexNet zu etikettieren, musste jemand einen Berg unbeschrifteter Bilder ordnen. Hinter dem Zauber steckt eine simple Schleife: Punkte färben, Mitten verschieben, wiederholen.

Die früheren Ausgaben verpasst? Trainiere ein Perzeptron, sieh einer Markov-Kette beim Plappern zu, verliere gegen unbesiegbares Tic-Tac-Toe, bring einem Filter bei, Kanten zu sehen, sieh einem Agenten zu, wie er aus Belohnung lernt, schau, wie ein Modell Text in Tokens liest, oder sieh eines bergab lernen.

Gruppen (k)

Klicke in das Feld, um Punkte zu setzen, wähle die Anzahl der Gruppen k und drücke Schritt. Jeder Schritt färbt zuerst jeden Punkt in der Farbe seines nächsten Zentrums (die großen Marker) und rückt dann jedes Zentrum in die Mitte seiner Gruppe. Drücke Start, um bis zur Ruhe zu wiederholen. Keine Labels, kein Lehrer: das ist unüberwachtes Lernen.