次の方法で共有


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

適用対象: SQL Server 2019 以前の Analysis Services Azure Analysis Services Fabric/Power BI Premium

Important

データ マイニングは SQL Server 2017 Analysis Services で非推奨となり、現在は SQL Server 2022 Analysis Services で廃止されました。 非推奨および廃止された機能については、ドキュメントは更新されません。 詳細については、「 Analysis Services の下位互換性」を参照してください。

Microsoft クラスタリング アルゴリズムは、データセット内のケースを反復処理して、類似の特性を含むクラスターにグループ化する セグメント化 または クラスタリング アルゴリズムです。 これらのグループ化は、データの探索、データ内の異常の特定、予測の作成に役立ちます。

クラスタリング モデルは、データセット内のリレーションシップを識別します。これは、何気ない観察によって論理的に導き出されない可能性があります。 たとえば、自転車で仕事に通勤する人は、通常、職場から遠く離れた場所に住まないと簡単に推測できます。 しかし、このアルゴリズムは、自転車通勤に関する他の特徴を見つけることができます。 次の図では、クラスター A は運転する傾向があるユーザーに関するデータを表し、クラスター B は自転車に乗って仕事をする傾向があるユーザーに関するデータを表しています。

通勤傾向のクラスターパターン

クラスタリング アルゴリズムは、クラスタリング モデルを構築するために予測可能な列を指定する必要がない点で、Microsoft デシジョン ツリー アルゴリズムなどの他のデータ マイニング アルゴリズムとは異なります。 クラスタリング アルゴリズムは、データに存在するリレーションシップと、アルゴリズムが識別するクラスターからモデルを厳密にトレーニングします。

Example

類似の人口統計情報を共有し、Adventure Works 社から同様の製品を購入するユーザーのグループについて考えてみましょう。 このユーザー グループは、データのクラスターを表します。 このようなクラスターが 1 つのデータベースに存在する場合があります。 クラスターを構成する列を観察することで、データセット内のレコードが相互にどのように関連しているかをより明確に確認できます。

アルゴリズムのしくみ

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

データセット内のケースの散布図 データセット

最初にクラスターを定義した後、アルゴリズムはクラスターがポイントのグループをどの程度適切に表しているかを計算し、グループ化を再定義して、データをより適切に表すクラスターを作成しようとします。 このアルゴリズムは、クラスターを再定義して結果を改善できなくなるまで、このプロセスを反復処理します。

クラスタリング手法の指定、クラスターの最大数の制限、またはクラスターの作成に必要なサポートの量を変更することで、アルゴリズムの動作方法をカスタマイズできます。 詳細については、「 Microsoft クラスタリング アルゴリズムテクニカル リファレンス」を参照してください。 このアルゴリズムには、K 平均クラスタリングと期待最大化法の 2 つの一般的なクラスタリング方法が含まれています。

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

クラスタリング モデルのトレーニングに使用するデータを準備するときは、必要なデータの量やデータの使用方法など、特定のアルゴリズムの要件を理解する必要があります。

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

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

  • 入力列 各モデルには、クラスターの構築に使用される値を含む少なくとも 1 つの入力列が含まれている必要があります。 必要な数の入力列を含めることができますが、各列の値の数によっては、追加の列を追加すると、モデルのトレーニングにかかる時間が長くなる可能性があります。

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

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

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

モデルを調べるには、 Microsoft クラスター ビューアーを使用できます。 クラスタリング モデルを表示すると、SQL Server Analysis Services によってクラスター間のリレーションシップを示す図にクラスターが表示されます。また、各クラスターの詳細なプロファイル、各クラスターを他のクラスターと区別する属性の一覧、トレーニング データ セット全体の特性も示します。 詳細については、「 Microsoft クラスター ビューアーを使用したモデルの参照」を参照してください。

詳細を知りたい場合は、 Microsoft 汎用コンテンツ ツリー ビューアーでモデルを参照できます。 モデルに格納されるコンテンツには、各ノード内のすべての値の分布、各クラスターの確率、およびその他の情報が含まれます。 詳細については、「 クラスタリング モデルのマイニング モデル コンテンツ (Analysis Services - データ マイニング)」を参照してください。

予測の作成

モデルのトレーニングが完了すると、結果は一連のパターンとして格納され、これを探索したり、予測に使用したりできます。

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

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

注釈

  • 予測モデル マークアップ言語 (PMML) を使用してマイニング モデルを作成することをサポートします。

  • ドリルスルーをサポートします。

  • OLAP マイニング モデルの使用とデータ マイニング ディメンションの作成をサポートします。

こちらもご覧ください

データ マイニング アルゴリズム (Analysis Services - データ マイニング)
Microsoft クラスタリング アルゴリズムテクニカル リファレンス
クラスタリング モデルのマイニング モデル コンテンツ (Analysis Services - データ マイニング)
クラスタリング モデル クエリの例