モデルのテスト データの選択およびマップ
Analysis Services で精度グラフを作成するには、モデルのテストに使用するデータを選択し、データをモデルにマップする必要があります。
既定では、マイニング構造の作成時に保留データ セットを作成した場合、Analysis Services ではマイニング モデル テスト データが使用されます。 予約テスト セットを作成すると、列名とデータ型は常にモデルと一致し、データの分布が類似することを合理的に想定できるため、同じマイニング構造に基づくモデルを最も簡単にテストできます。 また、デザイナーでは入力列とモデル列間のリレーションシップが自動的に作成されます。
または、データの外部ソースを指定できます。 外部データについては、いくつかの追加要件があります。
外部データ セットは、Analysis Services のインスタンスでデータ ソース ビューとして定義する必要があります。
外部データ セットには、マイニング モデルの予測可能列にマッピングできる列が 1 つ以上含まれている必要があります。 いくつかの列を無視することを選択できます。
新しい列を追加したり、別のデータ ソース ビューの列をマップしたりすることはできません。 選択したデータ ソース ビューには、予測クエリに必要なすべての列が含まれている必要があります。
外部列名がモデルの列名と正確に一致する場合は、デザイナーによってマップされます。 マッピングが正しくない場合は、マッピングを変更するか、削除して既存の列に新しいマッピングを作成できます。
外部データ ソースを使用する場合は、フィルターを適用して、テスト データを関連するケースのサブセットに制限できます。
予約テスト セットを使用する場合でも、フィルターが原因でマイニング構造に関連付けられているテスト データとマイニング モデルのテスト ケースとが異なる可能性があることに注意する必要があります。
このトピックでは、テスト データを選択およびマップする方法について説明します。
マイニング モデルの精度をテストするための入力テーブルの選択
マイニング モデルの精度をテストするための入力テーブルを選択するには
SQL Server Data Tools (SSDT) のデータ マイニング Designerで、グラフ化するモデルを含むマイニング構造をダブルクリックします。
[マイニング精度チャート] タブをクリックします。
[マイニング精度チャート] ビューの [入力の選択] タブで、次のオプションのいずれかを選択します。
[マイニング モデルのテスト ケースを使用する]
[マイニング構造のテスト ケースを使用する]
[別のデータセットを指定する]
[別のデータセットを指定する]を選択した場合は、必要に応じて [フィルター エディターを開く] をクリックし、入力データセットのフィルター条件を作成します。 [OK] をクリックします。
[リフト チャート] タブまたは [分類マトリックス] タブをクリックすると、指定したテスト データを使用して自動的にチャートが作成されます。
モデル列をテスト データの列にマップするには
チャートを作成するモデルを含むマイニング構造をダブルクリックし、データ マイニング デザイナーで構造とモデルを開きます。
[マイニング精度チャート] タブを選択し、次に [入力の選択] タブを選択します。
[入力の選択] タブの [精度チャートに使用するデータセットの選択]で、 [別のデータセットを指定する]を選択します。
参照ボタン (...) をクリックしてダイアログ ボックスを開き、外部データ セットの定義を作成します。
[マイニング構造の選択] ダイアログ ボックスで、操作するモデルを含んでいるマイニング構造を選択し、 [OK]をクリックします。
[マイニング精度チャート] タブにある [入力テーブルの選択] テーブルで、 [ケース テーブルの選択] をクリックして、 [テーブルの選択] ダイアログ ボックスを開きます。
[テーブルの選択] ダイアログ ボックスで、データ ソースを [データ ソース] 一覧から選択します。 モデルの精度を測定するために予測クエリで使用するデータが含まれているテーブルを選択します。
[テーブル名またはビュー名] ボックスで、モデルのテストに使用するデータが含まれているテーブルを選択します。
必要に応じてマッピングを編集します。 マイニング構造の列が入力テーブルの同じ名前の列に自動的にマップされます。 [入力テーブルの選択] テーブルの列をクリックし、 [マイニング構造] テーブルの対応する列にドラッグして、マッピングを手動で作成することもできます。 マッピングを削除するには、 [マイニング構造] テーブルの列が [入力テーブルの選択] テーブル内のマップ先の列にリンクしている線をクリックし、<localizedText>Del</localizedText> キーを押します。
[OK] をクリックします。
入力データがモデルにマップされる方法を変更するには
データ マイニング デザイナーで、チャートを作成するモデルを含んだ構造をダブルクリックします。
[マイニング精度チャート] タブをクリックします。
[入力の選択] タブをクリックします。
[ 精度グラフに使用するデータ セットの選択] で、[ 別のデータ セットを指定する] オプションを選択します。
参照ボタン (...) をクリックしてダイアログ ボックスを開き、外部データ ソースの定義を作成します。
[列マッピングの指定] ダイアログ ボックスで、 [ケース テーブルの選択]をクリックします。
[テーブルの選択] ダイアログ ボックスで、一覧からデータ ソース ビューを選択し、ケース データが含まれているテーブルを選択します。 [OK] をクリックします。
必要なテーブルがない場合は、ダイアログ ボックスを閉じ、対象のテーブルを含む新しいデータ ソース ビューを作成します。 データ ソース ビューを作成する方法については、「データ ソース ビュー の定義 (Analysis Services)」を参照してください。
マイニング モデルに入れ子になったテーブルが含まれている場合は、 [入れ子になったテーブルの選択]をクリックし、データ ソース ビューのテーブルの一覧から入れ子になったテーブルを選択します。 [OK] をクリックします。
変更するマッピングの結合線を選択し、 [接続の変更]をクリックします。
[マッピングの変更] ダイアログ ボックスが開きます。 このダイアログ ボックスのテーブルの [マイニング構造列] には、選択されたマイニング構造に含まれている各列が一覧表示され、 [テーブル列] には、マイニング構造内の列にマップされている入力テーブルの列が一覧表示されます。
[テーブル列]で、リレーションシップを変更する [マイニング構造列] の下の行に対応する行を選択します。 一覧から新しい列を選択するか、一覧から空白エントリを選択して列を削除します。
[OK] をクリックします。
[列マッピングの指定] ダイアログ ボックスに、新しい列マッピングが表示されます。 2 つの列を結ぶ線を選択して <localizedText>Del</localizedText> キーを押すと、マッピングを削除できます。 [マイニング構造] テーブルで列を選択し、 [入力テーブルの選択] テーブルの対応する列にドラッグすると、新しい接続を作成できます。