k-Means-Algorithmus - Amazon SageMaker

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

k-Means-Algorithmus

Der k-Means-Algorithmus ist ein unüberwachter Lernalgorithmus. Es versucht, diskrete Gruppierungen innerhalb von Daten zu finden, wobei Mitglieder einer Gruppe sich so ähnlich wie möglich sein sollen und sich so stark wie möglich von Mitgliedern anderer Gruppen unterscheiden sollen. Sie definieren die Attribute, die der Algorithmus zum Ermitteln der Ähnlichkeit verwenden soll.

Amazon SageMaker verwendet eine modifizierte Version des Web-Scale-K-Means-Clustering-Algorithmus. Im Vergleich zur Originalversion des Algorithmus SageMaker ist die von Amazon verwendete Version genauer. Sie ist, wie der ursprüngliche Algorithmus, für riesige Datensätze skalierbar und bringt Verbesserungen hinsichtlich der Trainingszeit. Zu diesem Zweck SageMaker streamt die von Amazon verwendete Version Mini-Batches (kleine, zufällige Teilmengen) der Trainingsdaten. Weitere Informationen zu k-Means-Mini-Stapeln finden Sie unter Web-scale k-means Clustering.

Der k-Means-Algorithmus erwartet tabellarische Daten, wobei die Zeilen die Beobachtungen darstellen, die Sie clustern möchten, und die Spalten die Attribute der Beobachtungen. Die n Attribute in den einzelnen Zeilen stellen einen Punkt im n-dimensionalen Raum dar. Der euklidisch Abstand zwischen diesen Punkten stellt die Ähnlichkeit der entsprechenden Beobachtungen dar. Der Algorithmus gruppiert die Beobachtungen mit ähnlichen Attributen (die Punkte, die diesen Beobachtungen entsprechen, sind näher beieinander). Weitere Informationen zur Funktionsweise von k-means in Amazon finden Sie SageMaker unterSo funktioniert das Clustering mit k-Means-Algorithmen.

E/A-Schnittstelle für den k-Means-Algorithmus

Für das Training nimmt der k-Means-Algorithmus an, dass die Daten in einem Trainingskanal (empfohlen S3DataDistributionType=ShardedByS3Key), mit einem optionalen Testkanal (empfohlen S3DataDistributionType=FullyReplicated) bereitgestellt werden, für den die Daten bewertet werden. Die Formate recordIO-wrapped-protobuf und CSV werden beide für das Training unterstützt. Sie können entweder den Datei- oder den Pipe-Modus verwenden, um Modelle mit Daten, die als recordIO-wrapped-protobuf oder CSV formatiert sind, zu trainieren.

Für Inferenz werden text/csv, application/json und application/x-recordio-protobuf unterstützt. k-Means gibt eine closest_cluster-Bezeichnung und die distance_to_cluster für jede Beobachtung zurück.

Weitere Informationen über die Eingabe- und Ausgabedateiformate finden Sie unter k-Means-Antwortformate für Inferenz und unter k-Means-Beispiel-Notebooks. Der k-Means-Algorithmus unterstützt kein Mehrfach-Instance-Lernen, bei dem der Trainingssatz aus gekennzeichneten „Data Bags” besteht, von denen jede eine Sammlung von nicht gekennzeichneten Instances ist.

EC2-Instance-Empfehlung für den k-Means-Algorithmus

Wir empfehlen, k-Means-Algorithmen auf CPU-Instances zu trainieren. Sie können auf GPU-Instances trainieren, sollten aber das GPU-Training auf Single-GPU-Instances (wie ml.g4dn.xlarge) beschränken, da nur eine GPU pro Instance verwendet wird. Der k-means-Algorithmus unterstützt P2-, P3-, G4dn- und G5-Instances für Training und Inferenz.

k-Means-Beispiel-Notebooks

Ein Beispielnotizbuch, das den SageMaker K-Means-Algorithmus verwendet, um die Bevölkerung von Landkreisen in den Vereinigten Staaten nach Attributen zu segmentieren, die mithilfe der Hauptkomponentenanalyse identifiziert wurden, finden Sie unter Analysieren von US-Volkszählungsdaten zur Bevölkerungssegmentierung mit Amazon. SageMaker Anweisungen zum Erstellen und Zugreifen auf Jupyter-Notebook-Instances, in denen Sie das Beispiel ausführen können, finden Sie unter. SageMaker Amazon SageMaker Notebook-Instances Nachdem Sie eine Notebook-Instanz erstellt und geöffnet haben, wählen Sie die Registerkarte SageMakerBeispiele, um eine Liste aller Beispiele anzuzeigen. SageMaker Zum Öffnen eines Notebooks klicken Sie auf die Registerkarte Use (Verwenden) und wählen Sie Create copy (Kopie erstellen) aus.