マイニング モデル (Analysis Services - データ マイニング)

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

重要

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

マイニング モデル は、データにアルゴリズムを適用することによって作成されますが、単なるアルゴリズムまたはメタデータ コンテナーではなく、予測を生成し、リレーションシップを推定するために新しいデータに適用されるデータ、統計情報、およびパターンのセットです。

ここでは、データ マイニング モデルおよびその使用方法 (モデルおよび構造の基本的なアーキテクチャ、マイニング モデルのプロパティ、およびマイニング モデルの作成方法と操作方法) について説明します。

マイニング モデルのアーキテクチャ

データ マイニング モデルの定義

マイニング モデルのプロパティ

マイニング モデル列

マイニング モデルの処理

マイニング モデルの表示とクエリ

マイニング モデルのアーキテクチャ

データ マイニング モデルは、マイニング構造からデータを取得し、データ マイニング アルゴリズムを使用してそのデータを分析します。 マイニング構造とマイニング モデルは別個のオブジェクトです。 マイニング構造には、データ ソースを定義する情報が格納されます。 マイニング モデルには、分析の結果として検出されたパターンなど、データの統計的な処理から導き出された情報が格納されます。

マイニング モデルは、マイニング構造から提供されたデータの処理と分析が完了するまでは空の状態です。 処理後のマイニング モデルには、メタデータ、結果、およびマイニング構造へのバインドが含まれています。

model にはメタデータ、パターン、およびバインド

メタデータは、モデルの名前、モデルが格納されているサーバー、モデルの定義 (モデルの構築に使用されたマイニング構造の列、モデルの処理時に適用されたフィルターの定義、データの分析に使用されたアルゴリズムなど) を示します。 これらすべての選択肢 (データ列とそのデータ型、フィルター、アルゴリズム) は、分析結果に大きな影響を与えます。

たとえば、同じデータを使用して複数のモデルを作成するために、クラスタリング アルゴリズム、デシジョン ツリー アルゴリズム、および Naïve Bayes アルゴリズムを使用できます。 予測の作成に使用できるパターン、アイテムセット、ルール、または式のセットは、モデルの種類ごとに異なります。 通常、各アルゴリズムではデータをさまざまな方法で分析するため、結果のモデルの コンテンツ もさまざまな構造で構成されます。 あるモデルの種類では、データとパターンが クラスターにグループ化され、別のモデルの種類のデータは、データを分割して定義するツリー、分岐、およびルールで構成されます。

また、モデルはトレーニングを行う際のデータの影響も受けます。同じマイニング構造でトレーニングを行ったモデルでも、データのフィルター処理の方法が異なったり、分析時に異なるシードを使用すると、異なる結果が生成される場合があります。 ただし、実際のデータはモデルのみの集計統計に格納されず、実際のデータはマイニング構造に存在します。 モデルのトレーニングを行ったときのデータに基づいてフィルターを作成した場合、フィルターの定義もモデル オブジェクトと一緒に保存されます。

モデルには、マイニング構造にキャッシュされているデータを指すバインドのセットが含まれます。 データが構造内にキャッシュされ、処理後に消去されていない場合、このバインドによって結果から結果を裏付けるケースへのドリルスルーが可能になります。 ただし、実際のデータはモデル内ではなく、構造キャッシュに格納されています。

マイニング モデルのアーキテクチャ

データ マイニング モデルの定義

通常、データ マイニング モデルは次の手順で作成します。

  • 基になるマイニング構造を作成し、必要になる可能性があるデータの列を含めます。

  • 分析タスクに最適なアルゴリズムを選択します。

  • モデルで使用する構造から列を選択し、使用する方法を指定します。予測する結果を含む列、入力専用の列などです。

  • 必要に応じて、アルゴリズムによる処理を微調整するパラメーターを設定します。

  • 構造およびモデルを 処理 してモデルにデータを入力します。

SQL Server Analysis Servicesには、マイニング モデルの管理に役立つ次のツールが用意されています。

  • データ マイニング ウィザードは、マイニング構造および関連マイニング モデルの作成に役立ちます。 これは最も使いやすい方法です。 このウィザードを使用すると、必要なマイニング構造が自動的に作成され、重要な設定を構成しやすくなります。

  • DMX CREATE MODEL ステートメントは、モデルを定義するために使用できます。 必要な構造は処理の一環として自動的に作成されるため、この方法では既存の構造を再利用することはできません。 この方法は、作成するモデルを既に正確に把握している場合またはモデルのスクリプトを作成する場合に使用します。

  • DMX ALTER STRUCTURE ADD MODEL ステートメントは、既存の構造に新しいマイニング モデルを追加するために使用できます。 この方法は、同じデータセットに基づくさまざまなモデルをテストする場合に使用します。

AMO や XML/A を使用するか、または Excel 用データ マイニング クライアントなどの他のクライアントを使用することによって、プログラムでマイニング モデルを作成することもできます。 詳細については、次のトピックを参照してください。

マイニング モデルのアーキテクチャ

マイニング モデルのプロパティ

それぞれのマイニング モデルには、モデルとそのメタデータを定義するプロパティがあります。 プロパティには、名前、説明、モデルが最後に処理された日付、モデルに対する権限、トレーニングに使用されるデータに対するフィルターなどが含まれます。

各マイニング モデルには、マイニング構造から派生するプロパティや、モデルに使用するデータ列を記述するプロパティもあります。 入れ子になったテーブルの列をモデルで使用する場合は、その列に適用される別個のフィルターが存在することもあります。

さらに、それぞれのマイニング モデルには、 AlgorithmUsageという 2 つの特殊なプロパティが含まれます。

  • Algorithm プロパティ モデルの作成に使用するアルゴリズムを指定します。 使用できるアルゴリズムは、使用しているプロバイダーによって異なります。 SQL Server SQL Server Analysis Servicesに含まれるアルゴリズムの一覧については、「データ マイニング アルゴリズム (Analysis Services - データ マイニング)」を参照してください。 Algorithm プロパティはマイニング モデルに適用し、各モデルに対して 1 回だけ設定できます。 後でアルゴリズムを変更できますが、選択したアルゴリズムによってサポートされていないために、マイニング モデルの列が無効になる場合があります。 このプロパティを変更した後は、モデルを再処理する必要があります。

  • Usage プロパティ モデルによる各列の使用方法を定義します。 列の使用法は、 [入力][予測][予測のみ]、または [キー]のいずれかに定義できます。 Usage プロパティは、マイニング モデルの個別の列に適用し、モデルに含まれるすべての列に個別に設定する必要があります。 モデルで使用しない列が構造に含まれる場合は、使用法を Ignoreに設定します。 顧客名や電子メール アドレスなどは、マイニング構造に含まれていても分析には使用されないデータの例です。 このように、後でクエリを実行する場合、分析フェーズで列を含める必要はありません。

マイニング モデルのプロパティの値は、マイニング モデルの作成後に変更できます。 ただし、たとえマイニング モデルの名前の変更であっても、なんらかの変更を加えた場合はマイニング モデルの再処理が必要になります。 モデルを再処理すると、結果が変化する場合があります。

マイニング モデルのアーキテクチャ

マイニング モデル列

マイニング モデルには、マイニング構造で定義された列から取得されたデータの列が含まれています。 マイニング構造からモデルで使用する列を選択し、マイニング構造列のコピーを作成して、その名前や使用法を変更することもできます。 また、モデル構築プロセスでモデルごとに列の使用法を定義する必要があります。 このとき、列がキーかどうか、列を予測に使用するかどうか、アルゴリズムで列を無視するかどうかなどの情報を定義します。

モデルを構築する場合、使用可能なデータのすべての列を自動的に追加するのではなく、構造内のデータを十分に確認し、分析に必要な列のみをモデルに含めることをお勧めします。 たとえば、同じデータを繰り返す複数の列を含めたり、ほとんどの値が一意の列を使用したりすることは避けます。 使用しない列がある場合、その列をマイニング構造またはマイニング モデルから削除する必要はなく、モデルの構築時に無視することを示すフラグを列に設定するだけで済みます。 つまり、列は、マイニング構造に存在していますが、マイニング モデルには使用されません。 モデルからマイニング構造へのドリルスルーが有効な場合、列の情報を後から取得できます。

選択するアルゴリズムによっては、マイニング構造内の一部の列が特定の種類のモデルと互換性を持たない場合や、有効な結果が得られない場合があります。 たとえば、データに Income 列のような連続する数値データが含まれていてモデルに不連続値が必要な場合、データを不連続な範囲に変換するか、モデルから削除する必要があります。 アルゴリズムによってはデータが自動的に変換または削除される場合もありますが、予想した結果が得られるとは限りません。 列の追加のコピーを作成し、別のモデルを試すことを検討してください。 また、特別な処理が必要であることを示すフラグを個々の列に設定することもできます。 たとえば、null が含まれているデータの場合、モデリング フラグを使用して処理を制御できます。 特定の列をモデルのリグレッサーとして指定する場合は、モデリング フラグを使用することで指定できます。

モデルを作成した後で、列の追加や削除、モデル名の変更などの変更を加えることができます。 ただし、たとえモデル メタデータのみの変更であっても、なんらかの変更を加えた場合はモデルの再処理が必要になります。

マイニング モデルのアーキテクチャ

マイニング モデルの処理

データ マイニング モデルは、処理されるまでは空のオブジェクトです。 モデルを処理するとき、構造にキャッシュされたデータは、モデルにフィルターが定義されていればフィルターを通して渡され、アルゴリズムによって分析されます。 アルゴリズムは、データを説明する一連の概要の統計を計算し、データ内のルールとパターンを識別し、これらのルールとパターンを使用してモデルを作成します。

処理後のマイニング モデルには、統計、ルール、回帰式など、分析によって検出されたデータおよびパターンに関する豊富な情報が含まれています。 カスタム ビューアーを使用してこの情報を参照したり、データ マイニング クエリを作成してこの情報を取得し、分析および表示に使用できます。

マイニング モデルのアーキテクチャ

マイニング モデルの表示とクエリ

モデルを処理したら、SQL Server Data ToolsとSQL Server Management Studioで提供されているカスタム ビューアーを使用してモデルを探索できます。 For

予測を行う場合や、モデル メタデータまたはモデルによって作成されるパターンを取得する場合に、マイニング モデルに対するクエリを作成することもできます。 クエリの作成には、データ マイニング拡張機能 (DMX) を使用します。

トピック リンク
複数のマイニング モデルをサポートするマイニング構造の構築方法について説明します。 モデルにおける列の使用法についても説明します。 マイニング構造列

マイニング モデル列

コンテンツの種類 (データ マイニング)
さまざまなアルゴリズム、およびアルゴリズムの選択がモデル コンテンツに与える影響について説明します。 Mining Model Content (Analysis Services - Data Mining)

データ マイニング アルゴリズム (Analysis Services - データ マイニング)
モデルのコンポジションと動作に影響を与えるプロパティの設定方法について説明します。 マイニング モデルのプロパティ

モデリング フラグ (データ マイニング)
データ マイニングのプログラミング可能なインターフェイスについて説明します。 分析管理オブジェクト (AMO) による開発

データ マイニング拡張機能 (DMX) リファレンス
SQL Server Analysis Servicesでカスタム データ マイニング ビューアーを使用する方法について説明します。 データ マイニング モデル ビューアー
データ マイニング モデルに対して使用できるさまざまな種類のクエリの例について説明します。 データ マイニング クエリ

データ マイニング モデルの操作方法の詳細については、次のリンクを参照してください。

タスク Link
マイニング モデルを追加および削除する 既存のマイニング構造へのマイニング モデルの追加

マイニング構造からのマイニング モデルの削除
マイニング モデルの列を操作する マイニング モデルからの列の除外

モデル列の別名の作成

マイニング モデルでの列の分離の変更

モデルでリグレッサーとして使用する列の指定
モデルのプロパティを変更する マイニング モデルのプロパティの変更

マイニング モデルへのフィルターの適用

マイニング モデルからのフィルターの削除

マイニング モデルのドリルスルーの有効化

アルゴリズム パラメーターの表示または変更
コピーという種類のアクティビティが 1 つのみ含まれます。 移動、または管理する マイニング モデルのコピーの作成

マイニング モデルの表示のコピー

EXPORT (DMX)

IMPORT (DMX)
モデルにデータを入力する、またはモデルのデータを更新する マイニング モデルの処理
OLAP モデルを操作する データ マイニング ディメンションの作成

参照

データベース オブジェクト (Analysis Services - 多次元データ)