K 平均法クラスタリング - MADlib
TIBCO Data Science - Team Studio MADlib K 平均法 クラスタリング モデルの実装をサポートします。
情報一覧
|
パラメーター |
説明 |
|---|---|
| カテゴリー | モデル |
| データ ソース タイプ | DB |
| 出力を他のオペレーターに送信 | いいえ |
| データ処理ツール | なし |
アルゴリズム
クラスタリングとは、問題に依存する類似性の尺度に従ってオブジェクトのセットを分割する問題を指します。K 平均法バリアントでは、n 個の点が与えられ、目標は、各点とその最も近い重心の間の距離の合計が最小になるように k 個の重心を配置することです。 。各重心は、この重心に最も近いすべての点で構成されるクラスターを表します。
最も一般的なケースでは、使用される距離の尺度はユークリッド距離の 2 乗です。
この問題は計算的に困難 (NP ハード) ですが、Lloyd [1] によって提案されたローカル探索ヒューリスティックは実際にはかなりうまく機能します。実際、今日では非常に普及しているため、標準アルゴリズム、または単に K 平均法アルゴリズムと呼ばれることもあります。次のように動作します。
- k 個の重心をシードします。
- 収束するまで繰り返します。
- 各点を最も近い重心に割り当てます。
- このクラスター内の距離の合計が最小になる位置に各重心を移動します。
- ステップ 2a 中に割り当てを変更するポイントがない場合、収束が達成されます。
目的関数はステップごとに減少するため、このアルゴリズムは局所的な最適値に収束することが保証されています。
詳細については、公式 MADlib ドキュメント ページをご覧ください。
入力
クラスタリング基準として使用されるさまざまな属性値を含む配列カラムを含むデータセット。
- 入力データセット内の非数値変数は、クラスタリングを行う前に、まず変換およびスケーリングまたは正規化する必要があります。
- 数値変数も正規化できます。
- 選択した変換、正規化、距離計算に応じて、特定の変数がクラスタリング結果を支配するか、完全に無視される場合があります。
制限事項
出力は K 平均法予測オペレーターにのみ送信できます。
構成
| パラメーター | 説明 |
|---|---|
| ノート | このオペレーターのパラメーター設定に関するメモまたは役立つ情報。 [ノート] フィールドに内容を入力すると、オペレーターに黄色のアスタリスクが表示されます。 |
| MADlib スキーマ名 | MADlib がデータベースにインストールされるスキーマ。MADlib は、入力データセットと同じデータベースにインストールする必要があります。 madlib スキーマがデータベースに存在する場合、このパラメーターのデフォルトは madlib です。 |
| モデル出力スキーマ名 | 出力が保存されるスキーマの名前。 |
| モデル出力テーブル名 | モデルを保存するために作成されるテーブルの名前。モデル出力テーブルには以下が保存されます。
|
| 存在する場合は削除 |
|
| 重心シード | 重心シードは次の 3 つの方法で実行できます。
|
| 重心ソース | 重心シード がユーザー定義に設定されている場合は、重心ソースの入力テーブルを設定します。 |
| 重心カラム | Centroid Seeding がユーザー定義に設定されている場合は、Centroid Source で指定された入力テーブルのカラムを重心カラムに設定します。 |
| ポイント カラム | 入力データセットの Points カラムには、各ポイントの属性の配列が含まれています。 このパラメーターは配列型である必要があります。 |
| K | クラスター分析プロセス中に作成するクラスターの数を指定します。
|
| 距離関数 | クラスターの重心 (平均) 値からクラスター メンバーの値の差を計算します。距離は次のさまざまな方法で計算できます。 コサイン - 2 つのベクトル間の角度のコサインを測定します。 n 次元ベクトル
ユークリッド - 各属性軸に沿った距離の 2 乗和の平方根。 n 次元ベクトル
マンハッタン - マンハッタン、またはタクシーの距離は、軸に平行に移動するときの 2 点間の距離を測定します。 n 次元ベクトル
2 乗ユークリッド (デフォルト) - 2 点間の直線距離を計算するデフォルトの方法。これは、各属性軸に沿った距離の 2 乗の合計です。 n 次元ベクトル Tanimoto - サンプルセット間の非類似性を測定します。これは Jaccard 係数の補数であり、1 から Jaccard 係数を減算することによって、または同等に、和集合と 2 つのセットの共通部分のサイズの差を和集合のサイズで割ることによって取得されます。Dice の類似性と同様に、セットを表すために 0 ~ 1 のベクトルが使用されます。次に、セットベクトル ユーザー定義 - ユーザーによって指定されます。 ユーザー定義の距離を参照してください。 |
| ユーザー定義の距離 | 距離関数に ユーザー定義を指定する場合は、関数を指定します。 モデラーは、デフォルトの 2 乗ユークリッド メソッドから始めて、他のさまざまな計算メソッドを試して、クラスター結果がより直感的に見えるか、ビジネス上の洞察が得られるかを判断します。 |
| 重心の集約 | 同じクラスターに割り当てられたポイントを使用してクラスターの重心位置を計算する方法を定義します。オプションは 平均 (デフォルト) または 正規化平均です。 |
| 最大反復数 | 計算が停止するまでに必要な反復回数。反復数が 最大反復数より大きい場合、または再割り当てされたポイントの割合が 最小再割り当て割合を下回る場合、計算は停止します。 |
| ミニ Frac が再割り当てされました | 計算が停止する前に必要な、再割り当てされたポイントの最小部分。反復数が 最大反復数より大きい場合、または再割り当てされたポイントの割合が 再割り当てされた最小単位数の値を下回る場合、計算は停止します。 |
出力
中心点 結果タブには、クラスターの重心位置、目的関数の値、最後の反復で再割り当てされた点の割合、総反復数、単純なシルエット係数が表示されます。これは、品質を評価する一般的な方法です。クラスタリング (1 に近いほど、クラスタリングが優れています)。
- クラスター 結果タブには、K 平均法分析から決定された最終重心のグラフが表示されます。
- 出力は一度に 2 次元のみ表示できます。

その他の注意事項
[1] Lloyd, Stuart: Least squares quantization in PCM. Technical Note, Bell Laboratories. Published much later in: IEEE Transactions on Information Theory 28(2), pp. 128-137. 1982.
[1] David Arthur, Sergei Vassilvitskii: k-means++: the advantages of careful seeding, Proceedings of the 18th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA'07), pp. 1027-1035, http://ilpubs.stanford.edu:8090/778/1/2006-13.pdf
および
の場合、次のように内積公式を使用して計算されます。


として計算されます。
および
で表されるセット A と B の Jaccard 類似度は、次の式で求められます。 