クラスタリングアルゴリズム clustering-algorithms
クラスターアルゴリズムは、類似性に基づいてデータポイントを個別のクラスターにグループ化し、教師なしの学習によってデータ内のパターンを明らかにすることを可能にします。 クラスターアルゴリズムを作成するには、OPTIONS 句の type パラメーターを使用して、モデルのトレーニングに使用するアルゴリズムを指定します。 次に、関連するパラメーターをキーと値のペアとして定義し、モデルを微調整します。
K-Means kmeans
K-Means は、データ・ポイントを定義済みの数のクラスタ(k)に分割するクラスタリング・アルゴリズムです。 これは、シンプルさと効率のために、クラスタリングに最も一般的に使用されるアルゴリズムの 1 つです。
パラメーター
K-Means を使用する場合、次のパラメーターを OPTIONS 句で設定できます。
MAX_ITER20TOL0.0001NUM_CLUSTERSk)。2DISTANCE_TYPEeuclideaneuclidean、cosineKMEANS_INIT_METHODk-means||random, k-means|| (k-means++の並列バージョン)INIT_STEPSk-means|| 初期化モードのステップ数(KMEANS_INIT_METHOD が k-means|| の場合にのみ適用されます)。2PREDICTION_COLpredictionSEED-1689246527WEIGHT_COLnot set例
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 は、分割型(または「トップダウン」)アプローチを使用する階層クラスタリングアルゴリズムです。 すべての観測は 1 つのクラスターで開始され、階層の構築時に分割が再帰的に実行されます。 通常の K-means よりも高速な Bisecting K-means が、通常は異なるクラスタ結果が生成される。
パラメーター
MAX_ITERWEIGHT_COL1.0 として扱われます。NUM_CLUSTERSSEEDDISTANCE_MEASUREeuclidean、cosineMIN_DIVISIBLE_CLUSTER_SIZEPREDICTION_COL例
Create MODEL modelname OPTIONS(
type = 'bisecting_kmeans',
) AS
select col1, col2, col3 from training-dataset
Gaussian Mixture Model gaussian-mixture-model
Gaussian Mixture Model は、k 個のガウス分布の 1 つからデータ ポイントが作成される複合分布を表します。この分布は、それぞれ独自の確率を持ちます。 複数のガウス分布の混合から生成されると想定されるデータセットのモデル化に使用されます。
パラメーター
MAX_ITERWEIGHT_COL1.0 として扱われます。NUM_CLUSTERSSEEDAGGREGATION_DEPTHPROBABILITY_COLTOLPREDICTION_COL例
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)は、ドキュメントのコレクションから基になるトピック構造をキャプチャする確率的モデルです。 これは、単語、トピック、ドキュメントレイヤーを含む 3 レベルの階層ベイジアンモデルです。 LDA は、これらのレイヤーと観察済みのドキュメントを使用して、潜在的なトピック構造を構築します。
パラメーター
MAX_ITEROPTIMIZER"online" (Online Variational Bayes)と "em" (Expected-Maximization)です。online、em (大文字と小文字を区別しない)NUM_CLUSTERSCHECKPOINT_INTERVALDOC_CONCENTRATIONEM オプティマイザーの場合、アルファ値は 1.0 より大きくする必要があり(デフォルトは(50/k) + 1 の範囲で均一に分布)、対称なトピック分布を確保します。 online Optimizer では、アルファ値は 0 以上にすることができ(デフォルトは 1.0/k として均等に分散)、より柔軟なトピックの初期化が可能です。KEEP_LAST_CHECKPOINTem Optimizer を使用する際に、最後のチェックポイントを保持するかどうかを示します。 チェックポイントを削除すると、データパーティションが失われた場合にエラーが発生する可能性があります。 チェックポイントは、参照カウントによって決定されるように、不要になったときにストレージから自動的に削除されます。truetrue、falseLEARNING_DECAYonline Optimizer の学習率。(0.5, 1.0] 間の指数関数的減衰率として設定します。(0.5, 1.0]LEARNING_OFFSETonline Optimizer の学習パラメータ。SEEDOPTIMIZE_DOC_CONCENTRATIONonline Optimizer の場合:トレーニング中に docConcentration (ドキュメントトピック配布用の Dirichtlet パラメーター)を最適化するかどうか。falsetrue、falseSUBSAMPLING_RATEonline オプティマイザーの場合:範囲 (0, 1] でのミニバッチ グラデーション下降の各反復でサンプリングおよび使用されたコーパスの割合。(0, 1]TOPIC_CONCENTRATIONEM の場合、値は 1.0 を超えます(デフォルトは 0.1 + 1)。 online の場合、値≥0 (デフォルトは 1.0/k)です。TOPIC_DISTRIBUTION_COL例
Create MODEL modelname OPTIONS(
type = 'lda',
) AS
select col1, col2, col3 from training-dataset
次の手順
このドキュメントでは、様々なクラスターアルゴリズムの設定方法と使用方法を確認しました。 次に、他のタイプの高度な統計モデルについて詳しくは、 分類 および 回帰 に関するドキュメントを参照してください。