マイニング モデルの精度テスト (データ マイニング チュートリアル)
訴求対象を絞り込んでメールを配信するためのマイニング モデルを作成、処理し、検証したら、次はこれらのモデルをテストして、どの程度の予測精度が得られるか、どのモデルの精度が高いかを検証します。
データ マイニング デザイナの [マイニング精度チャート] タブでは、各モデルの予測精度を計算し、その結果をモデル間で直接比較できます。この比較方法をリフト チャートといいます。[マイニング精度チャート] タブでは、元のデータセットとは別の入力データを使用し、予測と既知の結果を比較します。比較した結果は、並べ替えられてグラフとして表示されます。このグラフには、常に 100% 正確な予測を行う理論上の理想モデルもプロットされます。実際のモデルと理想モデルを比較することにより、実際のモデルの予測精度を確認できます。リフト チャートの動作については、「リフト チャート」を参照してください。
ほぼ同じ構造を持つ 2 つのモデルを区別し、どちらの予測精度が高いかを調べるにはリフト チャートが有効です。同様に、特定の状況において最も予測精度の高いアルゴリズムの種類がリフト チャートからわかります。[マイニング精度チャート] タブの使用法の詳細については、「データ マイニング モデルの検証」を参照してください。
このトピックでは次の作業を行います。
- 入力列のマッピング
- 入力行のフィルタリング
- モデル、予測可能列、および値の選択
- リフト チャートの表示
入力列のマッピング
マイニング モデルの精度をテストするには、まず、マイニング構造の列を入力データの列にマッピングする必要があります。列名が直接対応している場合は、データ マイニング デザイナによって自動的に関連付けられます。
入力列をマイニング構造にマッピングするには
データ マイニング デザイナの [マイニング精度チャート] タブをクリックし、[列マッピング] タブをクリックします。次に、[入力テーブルの選択] ボックスの [ケース テーブルの選択] をクリックします。
[テーブルの選択] ダイアログ ボックスが表示されます。このダイアログ ボックスで、目的の入力データが保存されているテーブルを選択します。入力データとは、モデルの精度を判断するための予測クエリで使用するデータです。このチュートリアルでは、その目的上、モデルの処理で使用した入力列と同じデータを使用します。ただし本来は、別のデータ、つまり、モデルの処理時に使用したデータから取得した行が入力列であるのが理想的です。その場合は、[テーブルの選択] ダイアログ ボックスで、該当するデータを入力列として選択します。
[データ ソース] ボックスの一覧で、[Adventure Works DW] が選択されていることを確認します。
[テーブル名またはビュー名] ボックスの一覧で [vTargetMail] を選択し、[OK] をクリックします。
マイニング構造の列が、入力テーブルの同じ名前の列に自動的にマッピングされます。
列のマッピングに基づき、構造内の各モデルについて予測クエリが生成されます。2 つの列間のマッピングを削除するには、[マイニング構造] テーブルの列と [入力テーブルの選択] テーブルの列を結ぶ線をクリックし、Delete キーを押します。また、[入力テーブルの選択] の列をクリックして [マイニング構造] の対応する列にドラッグすると、マッピングを手動で作成できます。
入力行のフィルタリング
入力データにフィルタを適用するには、[リフト チャートの生成に使用する入力データをフィルタ選択する] のグリッドを使用します。[入力テーブルの選択] の列をこのグリッドまでドラッグするか、またはグリッドの列をクリックし、表示される値の一覧からいずれかの値を選択します。たとえば、[Income] 列が x より大きい行だけを入力行として使用する場合は、[ソース] 列で [vTargetMai]、[フィールド] 列で [YearlyIncome] を選択し、[条件と引数] 列に「>x」と入力します。
このチュートリアルでは、データにフィルタを適用しません。
モデル、予測可能列、および値の選択
次の手順では、リフト チャートに表示するモデルを選択し、そのモデルと比較する予測可能列を選択します。既定では、マイニング構造内のすべてのモデルが選択されます。リフト チャートから除外するモデルを選択することもできますが、このチュートリアルではすべてのモデルを選択したままにしておきます。
作成できる精度チャートは 2 種類です。予測値を選択すると、チャートにはそのモデルから得られるリフト量が表示されます。予測値を選択しない場合、チャートにはモデルの精度が表示されます。
モデルのリフトを表示するには
[リフト チャートに表示する予測可能なマイニング モデル列の選択] で、すべてのモデルの [予測可能列名] が [Bike Buyer] になっていることを確認します。
各モデルの [予測値] 列で、[1] を選択します。
モデルの精度を表示するには
[リフト チャートに表示する予測可能なマイニング モデル列の選択] で、すべてのモデルの [予測可能列名] が [Bike Buyer] になっていることを確認します。
[予測値] 列は空のままにしておきます。
[予測列と値の同期] チェック ボックスをオンにすると、マイニング構造のすべてのマイニング モデルについて予測可能列が同期されます。
メモ : |
---|
[予測可能列名] に表示されるのは、使用法が Predict または Predict Only に設定されている列だけです。また、この列は、コンテンツの種類が Discrete または Discretized であるマイニング構造列に基づいている必要があります。 |
場合によっては、基になるマイニング構造列は異なるが、同じデータが格納されている 2 つのマイニング モデルの予測可能列を使用して、リフト チャートを生成する必要があります。[予測列と値の同期] チェック ボックスをオフにすると、有効な予測可能列と値を任意に選択できるようになります。選択した列と値の組み合わせに意味があるかどうかにかかわらず、その組み合わせで結果がプロットされます。
リフト チャートの表示
リフト チャートを表示するには、[マイニング精度チャート] の [リフト チャート] タブに切り替えます。このタブをクリックすると、サーバーとデータベースに対し、指定のマイニング構造および指定の入力テーブルの予測クエリが実行されます。予測結果は実際の既知の値と比較され、グラフとして表示されます。チャートの使用法の詳細については、「リフト チャート」を参照してください。