Algoritmos de cluster clustering-algorithms
Os algoritmos de cluster agrupam pontos de dados em clusters distintos com base em suas semelhanças, permitindo o aprendizado não supervisionado para descobrir padrões nos dados. Para criar um algoritmo de clustering, use o parâmetro type na cláusula OPTIONS para especificar o algoritmo que deseja usar para treinamento de modelo. Em seguida, defina os parâmetros relevantes como pares de valores-chave para ajustar o modelo.
K-Means kmeans
K-Means é um algoritmo de clustering que particiona dados em um número predefinido de clusters (k). É um dos algoritmos mais usados para clustering devido à sua simplicidade e eficiência.
Parâmetros
Ao usar K-Means, os seguintes parâmetros podem ser definidos na cláusula OPTIONS:
MAX_ITER20TOL0.0001NUM_CLUSTERSk).2DISTANCE_TYPEeuclideaneuclidean, cosineKMEANS_INIT_METHODk-means||random, k-means|| (Uma versão paralela de k-means++)INIT_STEPSk-means|| (aplicável somente quando KMEANS_INIT_METHOD é k-means||).2PREDICTION_COLpredictionSEED-1689246527WEIGHT_COLnot setExemplo
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 é um algoritmo de cluster hierárquico que usa uma abordagem divisiva (ou "de cima para baixo"). Todas as observações começam em um único cluster e as divisões são executadas de forma recursiva à medida que a hierarquia é criada. Bisecting K-means pode ser mais rápido que K-means normal, mas geralmente produz resultados de cluster diferentes.
Parâmetros
MAX_ITERWEIGHT_COL1.0.NUM_CLUSTERSSEEDDISTANCE_MEASUREeuclidean, cosineMIN_DIVISIBLE_CLUSTER_SIZEPREDICTION_COLExemplo
Create MODEL modelname OPTIONS(
type = 'bisecting_kmeans',
) AS
select col1, col2, col3 from training-dataset
Gaussian Mixture Model gaussian-mixture-model
Gaussian Mixture Model representa uma distribuição composta onde os pontos de dados são retirados de uma de k sub-distribuições Gaussianas, cada uma com sua própria probabilidade. Ele é usado para modelar conjuntos de dados que são assumidos como sendo gerados a partir de uma mistura de várias distribuições Gaussianas.
Parâmetros
MAX_ITERWEIGHT_COL1.0.NUM_CLUSTERSSEEDAGGREGATION_DEPTHPROBABILITY_COLTOLPREDICTION_COLExemplo
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) é um modelo probabilístico que captura a estrutura de tópicos subjacente de uma coleção de documentos. É um modelo bayesiano hierárquico de três níveis com camadas de palavras, tópicos e documentos. O LDA usa essas camadas, juntamente com os documentos observados, para criar uma estrutura de tópico latente.
Parâmetros
MAX_ITEROPTIMIZER"online" (Baias de Variação Online) e "em" (Expectativa-Maximização).online, em (não diferencia maiúsculas de minúsculas)NUM_CLUSTERSCHECKPOINT_INTERVALDOC_CONCENTRATIONEM, os valores alfa devem ser maiores que 1,0 (padrão: distribuídos uniformemente como (50/k) + 1), garantindo distribuições de tópicos simétricas. Para o otimizador online, os valores alfa podem ser 0 ou maiores (padrão: distribuídos uniformemente como 1,0/k), permitindo uma inicialização de tópico mais flexível.KEEP_LAST_CHECKPOINTem. A exclusão do ponto de verificação pode causar falhas se uma partição de dados for perdida. Os pontos de verificação são removidos automaticamente do armazenamento quando não são mais necessários, conforme determinado pela contagem de referências.truetrue, falseLEARNING_DECAYonline, definida como uma taxa de declínio exponencial entre (0.5, 1.0].(0.5, 1.0]LEARNING_OFFSETonline que reduz as iterações iniciais para diminuir a contagem de iterações iniciais.SEEDOPTIMIZE_DOC_CONCENTRATIONonline: se o docConcentration (parâmetro Dirichlet para distribuição de tópico de documento) deve ser otimizado durante o treinamento.falsetrue, falseSUBSAMPLING_RATEonline: a fração do corpo amostrada e usada em cada iteração de descida de gradiente de minilote, no intervalo (0, 1].(0, 1]TOPIC_CONCENTRATIONEM, valores > 1,0 (padrão = 0,1 + 1). Para online, valores ≥ 0 (padrão = 1,0/k).TOPIC_DISTRIBUTION_COLExemplo
Create MODEL modelname OPTIONS(
type = 'lda',
) AS
select col1, col2, col3 from training-dataset
Próximas etapas
Depois de ler este documento, agora você sabe como configurar e usar vários algoritmos de cluster. Em seguida, consulte os documentos sobre classificação e regressão para saber mais sobre outros tipos de modelos estatísticos avançados.