18 k-Means
Oracle Data Mining for SQLは、拡張k- Meansクラスタリング・アルゴリズムをサポートしています。そのアルゴリズムの使用方法を学習します。
18.1 k-Meansとは
k-Meansアルゴリズムは、指定した数のクラスタにデータを分割する、距離ベースのクラスタリング・アルゴリズムです。
距離ベースのアルゴリズムは、距離関数を使用して、ケース間の類似度を計測します。各ケースは、使用される距離関数に従って、最も近いクラスタに割り当てられます。
18.1.1 Oracle Data Mining for SQLの拡張k-Means
Oracle Data Mining for SQLでのk-Meansの実装。
Oracle Data Miningに実装されている拡張バージョンのk-Meansアルゴリズムには、次の特徴があります。
-
距離関数: アルゴリズムでは、ユークリッドおよびコサインの各距離関数がサポートされます。デフォルトはユークリッドです。
-
スケーラブル・パラレル・モデルの作成: アルゴリズムは、次のドキュメントに基づく非常に効率的な初期化方法を使用します。Bahmani、Bahman等「スケーラブルなk-means++。」VLDB寄付の手続き5.7 (2012): 622-633。
-
クラスタ・プロパティ: クラスタごとに、アルゴリズムによって、重心、各属性のヒストグラム、およびクラスタに割り当てられるデータの大部分を囲むハイパーボックスを記述するルールが戻されます。重心は、質的属性については最頻値を、量的属性については平均および分散を示します。
k-Meansをこのように処理することによって、複数のk-Meansモデルを作成する必要がなくなります。また、常に従来のk-Meansよりも優れたクラスタリング結果が得られます。
18.2 k-Meansアルゴリズム構成
k-Meansアルゴリズムの構成について学習します。
Oracle Data Mining for SQLの拡張k-Meansアルゴリズムは、複数の構築時設定をサポートしています。すべての設定にはデフォルト値があります。特定の方法でアルゴリズムの動作に影響を与える場合を除き、デフォルトを上書きする必要はありません。
次の考慮事項を指定してk-Meansを構成できます。
-
クラスタ数
-
距離関数。デフォルトの距離関数はユークリッドです。
関連項目:
使用可能なモデル設定のリストおよび説明は、DBMS_DATA_MINING - アルゴリズムの設定: k-Meansを参照してください。ノート:
モデル設定と同じ意味でハイパーパラメータという用語も使用されます。18.3 k-Means用のデータ準備
k-Meansアルゴリズム用のデータの準備について学習します。
k-Meansアルゴリズムでは、通常、正規化が必要です。自動データ準備では、k-Meansに対して、正規化が実行されます。ADPを使用しない場合、モデルを作成または適用する前に量的属性を正規化する必要があります。
単純な(ネストしていない)データ型の列に欠損値がある場合、k-Meansではそれらをランダムに欠損した値として解釈します。質的データの欠損値は最頻値に置換され、量的データの欠損値は平均値に置換されます。
ネストした列に欠損値がある場合、k-Meansではそれらをスパースとして解釈します。スパースな量的データは0 (ゼロ)に置換され、スパースな質的データはゼロ・ベクトルに置換されます。