次の方法で共有


Microsoft クラスタリング アルゴリズム

Microsoft クラスタリング アルゴリズムは、SQL Server 2008 Analysis Services (SSAS) によって提供される分割アルゴリズムです。このアルゴリズムは、反復的な手法を使用して、類似の特性を持つクラスタにデータセット内のケースをグループ化します。このグループ化は、データの探索、データの異常の特定、および予測の作成に役立ちます。

クラスタリング モデルでは、一般レベルの観察では論理的に推論できないデータセット内の関係が識別されます。たとえば、自転車で通勤している従業員は、一般的に勤め先から遠くないところに住んでいることは、だれでも明確に理解できます。しかし、このアルゴリズムでは、それほど明確でない自転車通勤者に関する他の特性を見つけることができます。次の図では、クラスタ A は勤め先に車で通勤する従業員に関するデータを表し、クラスタ B は勤め先に自転車で通勤する従業員に関するデータを表しています。

通勤者の傾向を示すクラスタ パターン

クラスタリング アルゴリズムは、クラスタリング モデルを作成するために予測可能列を指定する必要がないという点において、Microsoft デシジョン ツリー アルゴリズムなどの他のデータ マイニング アルゴリズムと異なります。クラスタリング アルゴリズムでは、データに存在する関係と、アルゴリズムで識別されたクラスタからのみモデルをトレーニングします。

類似の人口統計情報を共有しており、Adventure Works 社から類似の製品を購入する人々のグループがあるとします。このような人々のグループが、データの 1 クラスタを表し、データベース内にいくつか存在します。クラスタを構成する列を観察することによって、データセットの各レコードが互いにどのように関係しているかを明確に理解できます。

アルゴリズムの動作

Microsoft クラスタリング アルゴリズムでは、まずデータセット内の関係が識別され、その関係に基づいて一連のクラスタが生成されます。次の図のように、アルゴリズムによってデータがどのようにグループ化されるかを視覚的に表すには、散布図が便利です。散布図にはデータセット内のすべてのケースが表され、各ケースはグラフ上にポイントで示されます。クラスタは、グラフ上のポイントをグループ化したもので、アルゴリズムによって識別された関係を示します。

データセットの各ケースを示す散布図

アルゴリズムはクラスタを定義した後、そのクラスタがポイントのグループをどの程度適切に表しているかを判断し、グループを再定義して、データをより適切に表すクラスタを作成します。このプロセスは、クラスタの再定義によってそれ以上結果を向上できなくなるまで繰り返されます。

クラスタリング技法を指定したり、クラスタの最大数を制限したり、クラスタの作成に必要なサポート量を変更したりして、アルゴリズムの動作をカスタマイズできます。詳細については、「Microsoft クラスタリング アルゴリズム テクニカル リファレンス」を参照してください。

クラスタリング モデルに必要なデータ

クラスタリング モデルのトレーニングに使用するデータを用意する際には、必要なデータ量やデータの使用方法など、このアルゴリズムにおける要件を把握しておいてください。

クラスタリング モデルの要件は次のとおりです。

  • 1 つの key : それぞれのモデルには、各レコードを一意に識別する数値列またはテキスト列が 1 つ含まれている必要があります。複合キーは使用できません。

  • 入力列 : 各モデルには、クラスタの作成に使用される値が含まれた入力列が 1 つ以上必要です。入力列はいくつあってもかまいませんが、各列内の値の数によっては、列を追加するとモデルのトレーニングにかかる時間が長くなる場合があります。

  • 省略可能な予測可能列 : このアルゴリズムでモデルを作成するために予測可能列は必要ありません。しかし、ほぼすべてのデータ型の予測可能列を追加することができます。予測可能列の値は、クラスタリング モデルへの入力として扱うことも、予測のみに使用するよう指定することもできます。たとえば、地域や年齢などの人口統計に対してクラスタリングを実行することにより顧客の収入を予測する場合、収入を PredictOnly として指定し、地域や年齢など、その他すべての列を入力として追加します。

クラスタリング モデルでサポートされるコンテンツの種類とデータ型の詳細については、「Microsoft クラスタリング アルゴリズム テクニカル リファレンス」の「必要条件」を参照してください。

クラスタリング モデルの表示

モデルを参照するには、Microsoft クラスタ ビューアを使用します。Analysis Services でクラスタリング モデルを表示すると、クラスタ間の相互関係がダイアグラムで示され、各クラスタの詳細なプロファイル、クラスタどうしを識別する属性の一覧、およびトレーニング データセット全体の特性も提供されます。詳細については、「Microsoft クラスタ ビューアを使用したマイニング モデルの表示」を参照してください。

さらに詳細を知るには、Microsoft 汎用コンテンツ ツリー ビューアでモデルを参照してください。モデルに保存される内容には、各ノードのすべての値の分布や、各クラスタの確率などの情報が含まれます。詳細については、「クラスタ モデルのマイニング モデル コンテンツ (Analysis Services - データ マイニング)」を参照してください。

予測の作成

モデルのトレーニング後、結果がパターンのセットとして保存されます。これを参照したり、これを使用して予測を実行したりできます。

クエリを作成して、検出されたクラスタに新しいデータが合致するかどうかの予測を返したり、クラスタに関する説明的な統計情報を取得したりすることもできます。

データ マイニング モデルに対するクエリの作成方法については、「データ マイニング モデルのクエリ (Analysis Services - データ マイニング)」を参照してください。クラスタリング モデルでクエリを使用する方法の例については、「クラスター モデルのクエリ (Analysis Services - データ マイニング)」を参照してください。

解説

  • Predictive Model Markup Language (PMML) を使用したマイニング モデルの作成がサポートされています。

  • ドリルスルーがサポートされています。

  • OLAP マイニング モデルの使用およびデータ マイニング ディメンションの作成がサポートされています。