Microsoft クラスタリング アルゴリズム
適用対象:SQL Server 2019 以前の Analysis Services Azure Analysis Services Fabric/Power BI Premium
重要
データ マイニングは SQL Server 2017 Analysis Services で非推奨となり、SQL Server 2022 Analysis Services で停止されました。 非推奨および停止された機能については、ドキュメントの更新は行われません。 詳細については、「Analysis Services 下位互換性」を参照してください。
Microsoft クラスタリング アルゴリズムは、データセット内のケースを反復処理して、類似の特性を含むクラスターにグループ化する セグメント化 または クラスタリング アルゴリズムです。 このグループ化は、データの探索、データの異常の特定、および予測の作成に役立ちます。
クラスタリング モデルでは、一般レベルの観察では論理的に推論できないデータセット内の関係が識別されます。 たとえば、自転車で通勤している従業員は、一般的に勤め先から遠くないところに住んでいることは、だれでも容易に想像できます。 しかし、このアルゴリズムでは、それほど明確でない自転車通勤者に関する他の特性を見つけることができます。 次の図では、クラスター A は勤め先に車で通勤する従業員に関するデータを表し、クラスター B は勤め先に自転車で通勤する従業員に関するデータを表しています。
クラスタリング アルゴリズムは、Microsoft デシジョン ツリー アルゴリズムなどの他のデータ マイニング アルゴリズムとは異なり、クラスタリング モデルを構築するために予測可能な列を指定する必要はありません。 クラスタリング アルゴリズムでは、データに存在する関係と、アルゴリズムで識別されたクラスターからのみモデルをトレーニングします。
例
類似の人口統計情報を共有し、Adventure Works 会社から同様の製品を購入するユーザーのグループについて考えてみましょう。 このような人々のグループが、データの 1 クラスターを表し、 データベース内にいくつか存在します。 クラスターを構成する列を観察することによって、データセットの各レコードが互いにどのように関係しているかを明確に理解できます。
アルゴリズムの動作
Microsoft クラスタリング アルゴリズムは、まずデータセット内のリレーションシップを識別し、それらのリレーションシップに基づいて一連のクラスターを生成します。 次の図のように、アルゴリズムによってデータがどのようにグループ化されるかを視覚的に表すには、散布図が便利です。 散布図にはデータセット内のすべてのケースが表され、各ケースはグラフ上にポイントで示されます。 クラスターは、グラフ上のポイントをグループ化したもので、アルゴリズムによって識別された関係を示します。
アルゴリズムはクラスターを定義した後、そのクラスターがポイントのグループをどの程度適切に表しているかを判断し、グループを再定義して、データをより適切に表すクラスターを作成します。 このプロセスは、クラスターの再定義によってそれ以上結果を向上できなくなるまで繰り返されます。
クラスタリング技法を指定したり、クラスターの最大数を制限したり、クラスターの作成に必要なサポート量を変更したりして、アルゴリズムの動作をカスタマイズできます。 詳細については、「 Microsoft クラスタリング アルゴリズム テクニカル リファレンス」を参照してください。 このアルゴリズムには、K-means クラスタリングと Expectation Maximization 手法という、2 つの一般的なクラスタリング手法が含まれています。
クラスタリング モデルに必要なデータ
クラスタリング モデルのトレーニングに使用するデータを用意する際には、必要なデータ量やデータの使用方法など、このアルゴリズムにおける要件を把握しておいてください。
クラスタリング モデルの要件は次のとおりです。
単一キー列 : それぞれのモデルには、各レコードを一意に識別する数値列またはテキスト列が 1 つ含まれている必要があります。 複合キーは使用できません。
入力列 : 各モデルには、クラスターの作成に使用される値が含まれた入力列が 1 つ以上必要です。 入力列はいくつあってもかまいませんが、各列内の値の数によっては、列を追加するとモデルのトレーニングにかかる時間が長くなる場合があります。
省略可能な予測可能列 : このアルゴリズムでモデルを作成するために予測可能列は必要ありません。しかし、ほぼすべてのデータ型の予測可能列を追加することができます。 予測可能列の値は、クラスタリング モデルへの入力として扱うことも、予測のみに使用するよう指定することもできます。 たとえば、地域や年齢などの人口統計に対してクラスタリングを実行することにより顧客の収入を予測する場合、収入を PredictOnly として指定し、地域や年齢など、その他すべての列を入力として追加します。
クラスタリング モデルでサポートされるコンテンツの種類とデータ型の詳細については、「 Microsoft クラスタリング アルゴリズム テクニカル リファレンス」の「必要条件」を参照してください。
クラスタリング モデルの表示
モデルを参照するには、 Microsoft クラスター ビューアーを使用します。 クラスタリング モデルを表示すると、SQL Server Analysis Servicesクラスター間の関係を示す図にクラスターが表示され、各クラスターの詳細なプロファイル、各クラスターと他のクラスターを区別する属性の一覧、トレーニング データ セット全体の特性も示されます。 詳細については、「 Microsoft クラスター ビューアーを使用したモデルの参照」を参照してください。
さらに詳細を知るには、 Microsoft 汎用コンテンツ ツリー ビューアーでモデルを参照してください。 モデルに保存される内容には、各ノードのすべての値の分布や、各クラスターの確率などの情報が含まれます。 詳細については、「 クラスタリング モデルのマイニング モデル コンテンツ (Analysis Services - データ マイニング)」を参照してください。
予測の作成
モデルのトレーニング後、結果がパターンのセットとして保存されます。これを参照したり、これを使用して予測を実行したりできます。
クエリを作成して、検出されたクラスターに新しいデータが合致するかどうかの予測を返したり、クラスターに関する説明的な統計情報を取得したりすることもできます。
データ マイニング モデルに対するクエリの作成方法については、「 データ マイニング クエリ」を参照してください。 クラスタリング モデルでクエリを使用する方法の例については、「 クラスタリング モデルのクエリ例」を参照してください。
注釈
Predictive Model Markup Language (PMML) を使用したマイニング モデルの作成がサポートされています。
ドリルスルーがサポートされています。
OLAP マイニング モデルの使用およびデータ マイニング ディメンションの作成がサポートされています。
参照
データ マイニング アルゴリズム (Analysis Services - データ マイニング)
Microsoft クラスタリング アルゴリズム テクニカル リファレンス
クラスター モデルのマイニング モデル コンテンツ (Analysis Services - データ マイニング)
クラスタリング モデルのクエリ例