クラスタリングアルゴリズム clustering-algorithms
クラスターアルゴリズムは、類似性に基づいてデータポイントを個別のクラスターにグループ化し、教師なしの学習によってデータ内のパターンを明らかにすることを可能にします。 クラスターアルゴリズムを作成するには、OPTIONS
句の type
パラメーターを使用して、モデルのトレーニングに使用するアルゴリズムを指定します。 次に、関連するパラメーターをキーと値のペアとして定義し、モデルを微調整します。
K-Means kmeans
K-Means
は、データ・ポイントを定義済みの数のクラスタ(k)に分割するクラスタリング・アルゴリズムです。 これは、シンプルさと効率のために、クラスタリングに最も一般的に使用されるアルゴリズムの 1 つです。
パラメーター
K-Means
を使用する場合、次のパラメーターを OPTIONS
句で設定できます。
MAX_ITER
20
TOL
0.0001
NUM_CLUSTERS
k
)。2
DISTANCE_TYPE
euclidean
euclidean
、cosine
KMEANS_INIT_METHOD
k-means||
random
, k-means||
(k-means++の並列バージョン)INIT_STEPS
k-means||
初期化モードのステップ数(KMEANS_INIT_METHOD
が k-means||
の場合にのみ適用されます)。2
PREDICTION_COL
prediction
SEED
-1689246527
WEIGHT_COL
not 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_ITER
WEIGHT_COL
1.0
として扱われます。NUM_CLUSTERS
SEED
DISTANCE_MEASURE
euclidean
、cosine
MIN_DIVISIBLE_CLUSTER_SIZE
PREDICTION_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_ITER
WEIGHT_COL
1.0
として扱われます。NUM_CLUSTERS
SEED
AGGREGATION_DEPTH
PROBABILITY_COL
TOL
PREDICTION_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_ITER
OPTIMIZER
"online"
(Online Variational Bayes)と "em"
(Expected-Maximization)です。online
、em
(大文字と小文字を区別しない)NUM_CLUSTERS
CHECKPOINT_INTERVAL
DOC_CONCENTRATION
EM
オプティマイザーの場合、アルファ値は 1.0 より大きくする必要があり(デフォルトは(50/k) + 1 の範囲で均一に分布)、対称なトピック分布を確保します。 online
Optimizer では、アルファ値は 0 以上にすることができ(デフォルトは 1.0/k として均等に分散)、より柔軟なトピックの初期化が可能です。KEEP_LAST_CHECKPOINT
em
Optimizer を使用する際に、最後のチェックポイントを保持するかどうかを示します。 チェックポイントを削除すると、データパーティションが失われた場合にエラーが発生する可能性があります。 チェックポイントは、参照カウントによって決定されるように、不要になったときにストレージから自動的に削除されます。true
true
、false
LEARNING_DECAY
online
Optimizer の学習率。(0.5, 1.0]
間の指数関数的減衰率として設定します。(0.5, 1.0]
LEARNING_OFFSET
online
Optimizer の学習パラメータ。SEED
OPTIMIZE_DOC_CONCENTRATION
online
Optimizer の場合:トレーニング中に docConcentration
(ドキュメントトピック配布用の Dirichtlet パラメーター)を最適化するかどうか。false
true
、false
SUBSAMPLING_RATE
online
オプティマイザーの場合:範囲 (0, 1]
でのミニバッチ グラデーション下降の各反復でサンプリングおよび使用されたコーパスの割合。(0, 1]
TOPIC_CONCENTRATION
EM
の場合、値は 1.0 を超えます(デフォルトは 0.1 + 1)。 online
の場合、値≥0 (デフォルトは 1.0/k)です。長さ k の任意の単一の値またはベクトル(EM の場合は値
1)
TOPIC_DISTRIBUTION_COL
例
Create MODEL modelname OPTIONS(
type = 'lda',
) AS
select col1, col2, col3 from training-dataset
次の手順
このドキュメントでは、様々なクラスターアルゴリズムの設定方法と使用方法を確認しました。 次に、他のタイプの高度な統計モデルについて詳しくは、 分類および 回帰に関するドキュメントを参照してください。