In diesem Kapitel wir gehen den K-Means-Algorithmus durch, Dies ist der häufigste Clustering-Algorithmus die Sie wahrscheinlich in der Praxis verwenden werden. Nun, der Name K-means wird Ihnen wahrscheinlich ein wenig geben der Intuition darüber, wie dieser Algorithmus funktioniert, aber gehen wir es im Detail durch. Also wählen Sie zuerst eine bestimmte Anzahl von Zentroiden. Also die Anzahl der Cluster, die Sie wählen ist etwas, das wir untersuchen werden etwas ausführlicher, aber eines der Dinge, die Sie erkennen sollten ist, dass Sie die Anzahl der Cluster tatsächlich angeben müssen. Sie müssen also entscheiden, welchen Wert K annimmt. Sind es also zwei Cluster, fünf Cluster, 15 Cluster? Dies ist eine Auswahl, die Sie treffen müssen wenn Sie K-means auf Ihren Daten ausführen. Wir beginnen also zunächst mit der Auswahl einer bestimmten Nummer von Schwerpunkten zu starten. Jetzt können Sie die Platzierung der Zentroide auswählen willkürlich sein, oder Sie können einen bestimmten Algorithmus verwenden um zu entscheiden, wo Sie Ihre Zentroide beginnen. Normalerweise werden sie mit einem bestimmten Algorithmus ausgewählt findet stabilere Cluster besser, aber Sie haben vielleicht nicht den Luxus in der Lage zu sein, etwas auszuführen, das lange dauern kann auf Ihre Daten zuerst. Sie können sie also einfach zufällig auswählen. Dann für jeden Fall Was wir tun möchten, ist, diesen Fall in den Cluster zu platzieren mit dem nächsten Schwerpunkt. Sie sehen sich also die Daten in diesem speziellen Fall an, Bestimme, welchem Schwerpunkt es am nächsten ist, und verknüpfen Sie es dann mit diesem bestimmten Schwerpunkt. Wiederholen Sie dies für jeden Fall im Datensatz. Und dann, am Ende, aktualisiere die Schwerpunkte so, dass sie der Durchschnitt der Datenpunkte sind innerhalb jedes Clusters. Sie können also sehen, dass K die Anzahl der Cluster ist, und dann bezieht sich das Mittel darauf, den Durchschnitt zu nehmen aller Fälle, um die neuen Schwerpunkte zu bilden. Nachdem Sie den Datensatz einmal durchgegangen sind, Was Sie tun möchten, ist, diese Schritte kontinuierlich zu wiederholen bis sich die Schwerpunkte stabilisieren und zur Konvergenz kommen. Hier ist eine Animation das zeigt den K-Means-Algorithmus in Aktion. Sie können sehen, dass zunächst drei Zentroide ausgewählt werden zufällig. Jetzt das Blaue und das Gelbe liegen eigentlich ganz nah beieinander. Also am Anfang, Der blaue Cluster ist eigentlich ziemlich klein und der gelbe Cluster ist viel größer. Der orange Cluster, weil der Schwerpunkt ziemlich weit weg beginnt von den anderen beiden Schwerpunkten, ist am Anfang wirklich sehr groß. Aber während wir die Zentroide weiter aktualisieren, Der orange Cluster wird immer kleiner. Dieser Datensatz wird also als Mickey-Mouse-Datensatz bezeichnet. und Sie können wahrscheinlich herausfinden, warum. Im Wesentlichen besteht es aus drei Blobs, eine Art größer in der Mitte unten, und dann zwei kleinere, die etwas sind, das aussieht ein bisschen wie Mickey Mouse und seine Ohren. Also ein paar Dinge, die Sie über den Prozess beachten sollten des Ausführens der K-Means. Sie können also sehen, dass es einen ziemlich guten Job macht Blobs zu klassifizieren, die wir zusammen erwarten würden. Die Fälle am rechten Ohr sind also ungefähr zusammen, die am linken Ohr, Wieder sind sie ungefähr zusammen, und dann die auf der Art des runden Gesichts werden ebenfalls zusammengefasst. Aber in diesem Fall Es gibt tatsächlich eine Reihe von Fällen, die wahrscheinlich wenn wir es nur tun würden, indem wir es uns ansehen und Ableiten des Musters, wir würden es wahrscheinlich mit jedem der Ohren setzen. Denken Sie also daran, wenn Sie über die Intuition nachdenken um K-Means, denn in diesem Fall, in diesem Datensatz, Was wir haben, sind Cluster mit ungleichen Varianten. Und der K-Means-Algorithmus hat wirklich Probleme mit Clustern mit unterschiedlichen Varianzen, denn wenn wir rechnen, wir gehen davon aus, dass die Varianz gleich ist innerhalb jedes der K-Cluster, die wir ausgewählt haben. Nun, dieses Beispiel ist nur in den X- und Y-Dimensionen. Es gibt also wirklich nur zwei Variablen, die geclustert werden. Aber fast das gesamte Clustering, das Sie durchführen werden wird in einer viel höheren Anzahl von Dimensionen vorliegen. So haben Sie vielleicht eine Handvoll, oder sogar ein Dutzend oder zwei Dutzend Variablen die Sie verwenden, um Ihre Cluster zu bilden. Der K-Means-Algorithmus führt also eine analoge Typfunktion aus, außer in höheren Dimensionen. Anstatt also die Schwerpunkte nur nach innen zu verschieben diese X- und Y-Ebene, es verschiebt tatsächlich den Schwerpunkt in jedoch Dimensionen haben Sie als Eingangsvariablen. Es könnten also ein paar Dutzend Variablen sein. Es gibt also ein paar Gründe, warum K-bedeutet ist der beliebteste Algorithmus. Das erste ist, dass es relativ einfach ist und recht einfach zu programmieren. Wir brauchen also nicht sehr viele Schritte, um zu verstehen wie man die verschiedenen Reihen zusammen gruppiert und wie man das Zentrum des Clusters aktualisiert. Das heißt, es ist ziemlich einfach um zu verstehen, wie sich die Schwerpunkte bewegen und sie interpretieren zu können wenn wir die Cluster verstehen und beschreiben wollen die wir geschaffen haben. Jetzt sollten Sie also eine Intuition haben darüber, wie der K-Means-Algorithmus in der Praxis funktioniert und die Art und Weise, wie die Schwerpunkte im Laufe der Zeit aktualisiert werden, sowie der Grund, warum dieser Algorithmus K-Means genannt wird.