注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

K-means クラスタリング

対応環境: Batch

K-means クラスタリングは教師なし機械学習アルゴリズムです。データセットのベクトルを k 個のクラスタにグループ化します。k の値は、最小 k と最大 k の間の指定された範囲のシルエットスコアを計算することによって決定されます。k の値の数は、この範囲内で試すべき k の値の数を定義し、境界を含みます。

トランスフォームのカテゴリー: その他

宣言された引数

  • 入力データセット - ベクトル列を含むソースデータセット。
    Table
  • 最大 k - クラスタの最大数。
    Literal<Integer>
  • 最小 k - クラスタの最小数。
    Literal<Integer>
  • k の値の数 - 最小 k から最大 k までの値に対してテストする k の値の数。k のクラスタリングモデルをトレーニングするため、k の値の数が高い値に設定されている場合、パイプラインの実行が遅くなる可能性があります。最適なモデルはシルエットスコアに基づいて選択されます。
    Literal<Integer>
  • ベクトル列 - クラスタリングに使用されるフロートベクトルを含む列。
    Column<Array<Float>>

例 1: 基本ケース

引数の値:

  • 入力データセット: ri.foundry.main.dataset.a
  • 最大 k: 12
  • 最小 k: 3
  • k の値の数: 4
  • ベクトル列: feature_column

入力:

feature_column
[ 0.05, 3.1, 2.3 ]
[ 1.0, 3.1, 2.3 ]
[ 1.0, 3.5, 2.3 ]
[ 19.0, 12.3, -1.4 ]

出力:

feature_columncluster_id
[ 1.0, 3.1, 2.3 ]0
[ 1.0, 3.5, 2.3 ]0
[ 19.0, 12.3, -1.4 ]1
[ 0.05, 3.1, 2.3 ]2

例 2: Null ケース

引数の値:

  • 入力データセット: ri.foundry.main.dataset.a
  • 最大 k: 12
  • 最小 k: 3
  • k の値の数: 4
  • ベクトル列: feature_column

入力:

feature_column
[ 0.05, 3.1, 2.3 ]
null
[ 1.0, 3.1, 2.3 ]
[ 1.0, 3.5, 2.3 ]
[ 19.0, 12.3, -1.4 ]

出力:

feature_columncluster_id
[ 1.0, 3.1, 2.3 ]0
[ 1.0, 3.5, 2.3 ]0
[ 19.0, 12.3, -1.4 ]1
[ 0.05, 3.1, 2.3 ]2

例 3: エッジケース

引数の値:

  • 入力データセット: ri.foundry.main.dataset.a
  • 最大 k: 3
  • 最小 k: 3
  • k の値の数: 1
  • ベクトル列: feature_column

入力:

feature_column
[ 0.05, 3.1, 2.3 ]
[ 1.0, 3.5, 2.3 ]
[ 19.0, 12.3, -1.4 ]

出力:

feature_columncluster_id
[ 19.0, 12.3, -1.4 ]0
[ 0.05, 3.1, 2.3 ]1
[ 1.0, 3.5, 2.3 ]2