Algoritmi di clustering clustering-algorithms
Gli algoritmi di clustering raggruppano i punti dati in cluster distinti in base alle loro somiglianze, consentendo all’apprendimento non supervisionato di individuare pattern all’interno dei dati. Per creare un algoritmo di clustering, utilizzare il parametro type
nella clausola OPTIONS
per specificare l'algoritmo da utilizzare per l'apprendimento del modello. Quindi, definisci i parametri rilevanti come coppie chiave-valore per ottimizzare il modello.
K-Means kmeans
K-Means
è un algoritmo di clustering che suddivide i dati in un numero predefinito di cluster (k). È uno degli algoritmi più comunemente utilizzati per il clustering per la sua semplicità ed efficienza.
Parametri
Quando si utilizza K-Means
, è possibile impostare i seguenti parametri nella clausola OPTIONS
:
MAX_ITER
20
TOL
0.0001
NUM_CLUSTERS
k
).2
DISTANCE_TYPE
euclidean
euclidean
, cosine
KMEANS_INIT_METHOD
k-means||
random
, k-means||
(versione parallela di k-mean++)INIT_STEPS
k-means||
(applicabile solo quando KMEANS_INIT_METHOD
è k-means||
).2
PREDICTION_COL
prediction
SEED
-1689246527
WEIGHT_COL
not set
Esempio
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 è un algoritmo di clustering gerarchico che utilizza un approccio divisivo (o top-down). Tutte le osservazioni iniziano in un singolo cluster e le divisioni vengono eseguite in modo ricorsivo durante la creazione della gerarchia. Bisecting K-means può essere spesso più veloce delle normali medie K, ma in genere produce risultati cluster diversi.
Parametri
MAX_ITER
WEIGHT_COL
1.0
.NUM_CLUSTERS
SEED
DISTANCE_MEASURE
euclidean
, cosine
MIN_DIVISIBLE_CLUSTER_SIZE
PREDICTION_COL
Esempio
Create MODEL modelname OPTIONS(
type = 'bisecting_kmeans',
) AS
select col1, col2, col3 from training-dataset
Gaussian Mixture Model gaussian-mixture-model
Gaussian Mixture Model rappresenta una distribuzione composita in cui i punti dati vengono ricavati da una delle sottodistribuzioni di k Gaussian, ciascuna con la propria probabilità. Viene utilizzato per modellare set di dati che si presume siano generati da una miscela di diverse distribuzioni gaussiane.
Parametri
MAX_ITER
WEIGHT_COL
1.0
.NUM_CLUSTERS
SEED
AGGREGATION_DEPTH
PROBABILITY_COL
TOL
PREDICTION_COL
Esempio
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) è un modello probabilistico che acquisisce la struttura argomento sottostante da una raccolta di documenti. Si tratta di un modello bayesiano gerarchico a tre livelli con livelli di parola, argomento e documento. LDA utilizza questi livelli, insieme ai documenti osservati, per creare una struttura di argomenti latente.
Parametri
MAX_ITER
OPTIMIZER
"online"
(Online Variational Bayes) e "em"
(Expectation-Maximization).online
, em
(senza distinzione maiuscole/minuscole)NUM_CLUSTERS
CHECKPOINT_INTERVAL
DOC_CONCENTRATION
EM
, i valori alfa devono essere maggiori di 1,0 (impostazione predefinita: distribuiti uniformemente come (50/k) + 1), garantendo distribuzioni dell'argomento simmetriche. Per l'ottimizzatore online
, i valori alfa possono essere uguali o superiori a 0 (impostazione predefinita: distribuiti uniformemente come 1,0/k), consentendo un'inizializzazione più flessibile degli argomenti.KEEP_LAST_CHECKPOINT
em
. L’eliminazione del punto di controllo può causare errori in caso di perdita di una partizione di dati. I punti di controllo vengono rimossi automaticamente dall'archivio quando non sono più necessari, come determinato dal conteggio dei riferimenti.true
true
, false
LEARNING_DECAY
online
, impostato come tasso di decadimento esponenziale tra (0.5, 1.0]
.(0.5, 1.0]
LEARNING_OFFSET
online
che sottopone a downweight le iterazioni iniziali per ridurre il conteggio delle iterazioni iniziali.SEED
OPTIMIZE_DOC_CONCENTRATION
online
: se ottimizzare docConcentration
(parametro Dirichlet per la distribuzione di argomenti dei documenti) durante l'apprendimento.false
true
, false
SUBSAMPLING_RATE
online
: la frazione del corpo campionata e utilizzata in ogni iterazione di discendenza sfumata mini-batch, nell'intervallo (0, 1]
.(0, 1]
TOPIC_CONCENTRATION
EM
, valori > 1,0 (valore predefinito = 0,1 + 1). Per online
, i valori ≥ 0 (valore predefinito = 1,0/k).TOPIC_DISTRIBUTION_COL
Esempio
Create MODEL modelname OPTIONS(
type = 'lda',
) AS
select col1, col2, col3 from training-dataset
Passaggi successivi
Dopo aver letto questo documento, saprai come configurare e utilizzare vari algoritmi di clustering. Quindi, consulta i documenti su classificazione e regressione per ulteriori informazioni su altri tipi di modelli statistici avanzati.