コンテンツにスキップ

クラスタリング結果比較

複数のクラスタリング手法と設定をまとめて試し、どれが良いかを比べます。 どの手法が合うか分からないときの出発点になります。

入出力

ポート内容
入力データ分けたいデータ
クラスタ結果比較試した組み合わせを 1 行 1 件で並べた表
最良クラスタ評価がいちばん良かった組み合わせの、行ごとのクラスタ番号付きデータ

Spark エンジンでは動きません。

設定項目

対象列を選択
クラスタリングに使う列。数値の列だけ選べます。複数選べます。ここで選んだ列は、並べたすべての手法に共通で使われます。
結果の評価基準を選択
Calinski-Harabasz基準(Pseudo F)(既定)か平均シルエット値。どちらを選んでも、全部の組み合わせを同じものさしで測ります。
比較手法
比べる組み合わせ。いくつでも足せます。1 つの組につき、下の 3 つを決めます。

比較手法の 1 組に入れるもの

名前
結果の表に出る見出し。既定は クラスタ1。同じ手法を数だけ変えて並べるときは、ここを書き分けないと見分けが付きません。
手法
7 つから 1 つ選びます(下の表)。
オプション
選んだ手法によって中身が変わります。その手法の単体ページと同じ設定項目が出ます。クラスタ数も、ここに入れます。

比べられる手法

7 つです。それぞれ単体のページもあります。

手法クラスタ数の指定
K-means必要
スペクトラルクラスタリング必要
Affinity Propagation不要
階層クラスタリング必要
BIRCH必要
DBSCAN不要
Mean Shift不要

2 つの評価基準

基準見るもの
Calinski-Harabasz基準(既定)クラスタ間の離れ具合とクラスタ内のまとまり具合の比。大きいほど良い
平均シルエット値各点が自分のクラスタにどれだけ馴染んでいるか。1 に近いほど良い

どちらも「数字が良い=意味がある分かれ方」とは限りません。 クラスタ解釈用データを作るで中身を見て判断してください。

出力される列

クラスタ結果比較

列中身
クラスタリング手法選んだ手法の名前
クラスタリング名「名前」に入れた文字
クラスタ数実際にいくつに分かれたか。クラスタ数を指定しない手法では、ここで初めて分かります
評価指標選んだ評価基準の値

1 つのかたまりにしか分かれなかった組み合わせは、評価指標が空欄になります。 評価基準はクラスタどうしを比べるものなので、比べる相手がいないと値を出せないためです。その組み合わせは最良クラスタの候補からも外れます。

最良クラスタ

評価指標がいちばん大きかった組み合わせの結果です。入力データの各行に、クラスタ番号・クラスタリング手法・クラスタリング名・評価指標の列が付きます。そのまま後続のノードにつなげます。

前処理が要る

K-means と同じく、単位を揃えてから使ってください(数値の正規化)。

エラーと対処

どのエラーも、入力データか設定を直して実行し直せば消えます。

クラスタリング名が空

クラスタリング名を設定してください。

直し方 — クラスタリング名を入れてから実行します

手法が未選択

手法を設定してください。

直し方 — 比較手法の組ごとに「手法」を選びます

処理対象列に欠損値がある

処理対象列に欠損値が含まれています。欠損値を除外するか補完してください。

直し方 — 欠損値処理で埋めるか、欠損のある行を外します

処理対象列に数値以外がある

処理対象列に数値型以外のデータが含まれてます。型変換をするか、数値型以外の列を除去してください。

直し方 — 列の型変更で数値にするか、その列を外します

サンプリングの割合が範囲外

サンプリング比率は0以上1以下の値を指定してください。

直し方 — 手法のオプションにある「サンプリングデータに対して実行する」に、0 より大きく 1 以下の小数を入れます。0 は使えません

よく使う例

1. 手法を選びたい

お題 — どの手法が合うか見当が付かない

入力 — 正規化済みの数値列を持つデータ

設定 — 比較手法に K-means / 階層クラスタリング / DBSCAN を並べ、評価基準は既定の Calinski-Harabasz基準

出力 — 3 行の比較表。評価指標がいちばん大きい行の手法が候補

2. クラスタ数を決めたい

お題 — K-means でいくつに分けるべきか決めたい

入力 — 同上

設定 — K-means を 5 組並べ、クラスタ数を 2 〜 6 にし、名前を K-means(2) 〜 K-means(6) にする

出力 — 5 行の比較表。名前を書き分けているので、どの数の結果かがそのまま読める

3. いちばん良い結果をそのまま使う

お題 — 比べた結果を後続の処理に流したい

入力 — 同上

設定 — 設定は変えず、2 つ目の出力「最良クラスタ」を後続につなぐ

出力 — 勝った組み合わせのクラスタ番号が付いたデータ。クラスタ解釈用データを作るにそのまま入ります

4. クラスタ数を指定しない手法が何個に分けたか知る

お題 — DBSCAN や Mean Shift がいくつに分けたのか知りたい

入力 — 同上

設定 — 比較手法に DBSCAN と Mean Shift を並べる

出力 — 比較表の クラスタ数 列に、実際に分かれた数が出る

関連