Clustering-Algorithmen clustering-algorithms
Clustering-Algorithmen gruppieren Datenpunkte basierend auf ihren Ähnlichkeiten in verschiedene Cluster, sodass unbeaufsichtigtes Lernen Muster innerhalb der Daten erkennen kann. Verwenden Sie zum Erstellen eines Clustering-Algorithmus den Parameter type in der OPTIONS-Klausel, um den Algorithmus anzugeben, den Sie für das Modell-Training verwenden möchten. Definieren Sie anschließend die relevanten Parameter als Schlüssel-Wert-Paare, um das Modell fein abzustimmen.
K-Means kmeans
K-Means ist ein Clustering-Algorithmus, der Datenpunkte in eine vordefinierte Anzahl von Clustern (K) unterteilt. Aufgrund seiner Einfachheit und Effizienz ist er einer der am häufigsten verwendeten Algorithmen für das Clustering.
Parameter
Bei Verwendung von K-Means können die folgenden Parameter in der OPTIONS-Klausel festgelegt werden:
MAX_ITER20TOL0.0001NUM_CLUSTERSk).2DISTANCE_TYPEeuclideaneuclidean, cosineKMEANS_INIT_METHODk-means||random, k-means|| (Eine Parallelversion von k-Means++)INIT_STEPSk-means||-Initialisierungsmodus (gilt nur, wenn KMEANS_INIT_METHOD k-means|| ist).2PREDICTION_COLpredictionSEED-1689246527WEIGHT_COLnot setBeispiel
CREATE MODEL modelname
OPTIONS(
type = 'kmeans',
MAX_ITERATIONS = 30,
NUM_CLUSTERS = 4
)
AS SELECT col1, col2, col3 FROM training-dataset;
Bisecting K-means bisecting-kmeans
Bisecting K-means ist ein hierarchischer Clustering-Algorithmus, der einen teilenden Ansatz (oder einen „Top-Down“-Ansatz) verwendet. Alle Beobachtungen beginnen in einem einzigen Cluster, und Aufspaltungen werden rekursiv durchgeführt, während die Hierarchie erstellt wird. Bisecting K-means kann häufig schneller sein als normale K-Means, liefert aber normalerweise andere Cluster-Ergebnisse.
Parameter
MAX_ITERWEIGHT_COL1.0 behandelt.NUM_CLUSTERSSEEDDISTANCE_MEASUREeuclidean, cosineMIN_DIVISIBLE_CLUSTER_SIZEPREDICTION_COLBeispiel
Create MODEL modelname OPTIONS(
type = 'bisecting_kmeans',
) AS
select col1, col2, col3 from training-dataset
Gaussian Mixture Model gaussian-mixture-model
Gaussian Mixture Model stellt eine zusammengesetzte Verteilung dar, bei der Datenpunkte aus einer von k Gaußschen Unterverteilungen mit jeweils eigener Wahrscheinlichkeit gezogen werden. Er wird zur Modellierung von Datensätzen verwendet, bei denen angenommen wird, dass sie aus einer Mischung mehrerer Gaußscher Verteilungen erzeugt werden.
Parameter
MAX_ITERWEIGHT_COL1.0 behandelt.NUM_CLUSTERSSEEDAGGREGATION_DEPTHPROBABILITY_COLTOLPREDICTION_COLBeispiel
Create MODEL modelname OPTIONS(
type = 'gaussian_mixture',
) AS
select col1, col2, col3 from training-dataset
Latent Dirichlet Allocation (LDA) latent-dirichlet-allocation
Latent Dirichlet Allocation (LDA) ist ein probabilistisches Modell, das die zugrunde liegende Themenstruktur aus einer Sammlung von Dokumenten erfasst. Es handelt sich um ein hierarchisches Bayes'sches Modell mit drei Ebenen mit Wort-, Thema- und Dokumentebenen. LDA verwendet diese Ebenen zusammen mit den beobachteten Dokumenten, um eine latente Themenstruktur zu erstellen.
Parameter
MAX_ITEROPTIMIZER"online" (Online-Variantenreihen) und "em" (Erwartungsmaximierung).online, em (ignoriert Groß- und Kleinschreibung)NUM_CLUSTERSCHECKPOINT_INTERVALDOC_CONCENTRATIONEM Optimizer sollten Alpha-Werte größer als 1,0 sein (Standard: gleichmäßig verteilt als (50/k) + 1), um symmetrische Themenverteilungen sicherzustellen. Für den online Optimizer können Alpha-Werte 0 oder höher sein (Standard: gleichmäßig verteilt als 1,0/k), was eine flexiblere Themeninitialisierung ermöglicht.KEEP_LAST_CHECKPOINTem beibehalten werden soll. Das Löschen des Checkpoints kann zu Fehlern führen, wenn eine Datenpartition verloren geht. Checkpoints werden automatisch aus dem Speicher entfernt, wenn sie nicht mehr benötigt werden, wie durch Referenzzählung ermittelt.truetrue, falseLEARNING_DECAYonline Optimizer, festgelegt als exponentielle Abklingrate zwischen (0.5, 1.0].(0.5, 1.0]LEARNING_OFFSETonline Optimizer, der frühe Iterationen heruntergewichtet, damit frühe Iterationen weniger zählen.SEEDOPTIMIZE_DOC_CONCENTRATIONonline-Optimizer: ob der docConcentration (Dirichlet-Parameter für die Verteilung von Dokumenten - Themenverteilung) während des Trainings optimiert werden soll.falsetrue, falseSUBSAMPLING_RATEonline-Optimizer: der Anteil des Korpus, der bei jeder Iteration des Abstiegs des Mini-Batch-Gradienten abgetastet und verwendet wird, im Bereich (0, 1].(0, 1]TOPIC_CONCENTRATIONEM Werte > 1,0 (Standard = 0,1 + 1). Zum online Werte ≥ 0 (Standard = 1,0/k).TOPIC_DISTRIBUTION_COLBeispiel
Create MODEL modelname OPTIONS(
type = 'lda',
) AS
select col1, col2, col3 from training-dataset
Nächste Schritte
Nach dem Lesen dieses Dokuments wissen Sie jetzt, wie Sie verschiedene Clustering-Algorithmen konfigurieren und verwenden können. Weitere Informationen zu anderen Typen erweiterter statistischer Modelle finden in den Dokumenten Klassifizierung und Regression.