Ich teste die Maschinen lernen-Tools in Vertica. Ich verstehe, wie die KMEANS
funktioniert, da es nur die Daten in Cluster teilt. Allerdings verstehe ich nicht, wie die APPLY_KMEANS
auf neue Daten funktioniert. Es sieht für mich so aus, als ob es mehr wie eine Klassifizierungsmethode agiert. Da es neue Daten in den vorhandenen Clustern klassifiziert. Also welcher Algorithmus wird verwendet (K nächster Nachbar)? Es ist nicht sehr klar aus der Dokumentation.Wie funktioniert APPLY_KMEANS in Vertica
Antwort
k -Mittel ist ein clustering Algorithmus (nicht Einstufung!), Dass iteriert über 2 Stufen:
- assignement Schritt: Assign jeder Punkt ein Zentroid
- Aktualisierungsschritt: Aktualisiere Zentroide Koordinaten
Wenn du dein k-me baust ans Modell, initialisieren Sie zuerst Zentroide (andere Strategie, kann zufällige Initialisierung sein), dann iterieren Sie, bis Ihr Clustering in Ordnung ist (Ihr Fehler liegt unter einem bestimmten Schwellenwert).
Was ist Ihr Modell definiert ist eigentlich Ihr Zentroide.
Wenn APPLY_KMEANS
verwenden Sie einen Auftrag Schritt unter Verwendung von Daten aus der Abfrage und Zentroide von Ihrem Modell führen. Die Punkte werden dann Clustern zugewiesen, abhängig von ihrer Entfernung in Bezug auf die Zentroide.
Hope it pltrdy
Hinweis über Clustering vs Klassifizierung hilft:
Wir versucht sein kann zu glauben, dass Clustering eine Art Klassifizierung ist. Dennoch muss sich die Klassifizierung nur auf supervised learning beziehen, während die Clusterbildung entspricht. So tun es nicht :)
- 1. Funktioniert meine Vertica im Speicher?
- 2. Dropping Partitionen in Vertica
- 3. GROUP_CONCAT in Vertica
- 4. Wie funktioniert das Schreiben von Daten von Funke zu Vertica?
- 5. Wie man einen Tag in Vertica hinzufügt
- 6. Wie überwinde ich die Standardbedingung in vertica
- 7. Wie 'VIEW ALTE' in HP Vertica
- 8. Median einer Häufigkeitsverteilung in vertica
- 9. Vertica Vergleichen Tabelleninhalt
- 10. SQL/Vertica - multiattributive Gruppierungskombinationen
- 11. Vertica Parkett Format
- 12. vertica - String Oktetts Länge
- 13. vertica SQL-Delta
- 14. Vertica, ResultBufferSize hat keinen Effekt
- 15. Vertica scheitern meine Abfrage
- 16. wie verbinden mit vertica mit pyodbc
- 17. Wie kann ich Index auf Vertica erstellen?
- 18. Einfügen in in vertica Performance-Tuning
- 19. Überprüfen Sie die Tabellensegmentierung in Vertica
- 20. Kafka vertica Verbraucher und Ausleittisch
- 21. Variablen über temporäre Tabelle in vertica setzen
- 22. In Vertica SQL bedeutet "Pipe-Schrägstrich": "| /"?
- 23. Update riesigen Datensatz in Vertica von Impala
- 24. Vertica rpm Installation schlägt fehl
- 25. vertica empfangen fatales Signal SIGSEGV
- 26. HPE Vertica: DROP_PARTITION dynamische Prädikatwert
- 27. In Vertica SQL, wie ordne ich nach Dezimalgenauigkeit?
- 28. Wie wählt man zufällige 100 Datensätze in HP Vertica?
- 29. Wie können Dateiladefehler in Vertica übersprungen und fortgeführt werden?
- 30. Zählen über mehrere Spalten hinweg (Vertica SQL)
Die Art und Weise Sie es ausdrückte, scheint es, dass die APPLY_KMEANS eine Klassifizierung, da es nur die Zuordnung Schritt zu tun. Also ist K-means grundsätzlich das Training in Bezug auf APPLY_KMEANS. Wenn K-Means alleine verwendet wird, handelt es sich um einen unüberwachten Clustering-Algorithmus. Wenn APPLY_KMEANS mit neuen Daten verwendet wird, ändern sich die Koordinaten des Schwerpunkts nicht, ist das korrekt? Was würde es zu einem Klassifikationsalgorithmus machen, nein? – valenzio
Es macht Sinn. k-means ist ein Clustering-Algorithmus, kein Klassifikations-Algorithmus. Dennoch ist "apply kmeans" ein anderer Algorithmus, der k-means Modellschwerpunkte verwendet, um Daten zu klassifizieren. Somit kann als ein multilabel Klassifikationsalgorithmus angesehen werden. Ich sage immer noch "kann gesehen werden", weil ich das mehrdeutig finde, so dass es nicht als "apply kmeans = classification" erscheinen sollte, da es irreführend wäre. Aber du hast verstanden. – pltrdy