マーケット バスケット モデルの検証 (中級者向けデータ マイニング チュートリアル)

前の実習では Association モデルを作成しました。次は、データ マイニング デザイナーの [マイニング モデル ビューアー] を開き、Microsoft アソシエーション ビューアーを使用してアソシエーション モデルを検証します。 このチュートリアルでは、ビューアーを使用してアイテム間の関係を検証する方法を、順を追って学習します。ビューアーを使用すると、どの製品とどの製品がよく一緒に表示されるかがひとめでわかるほか、新たなパターンの概観も可能です。

Microsoft アソシエーション ビューアーには、[ルール][アイテムセット][依存関係ネットワーク] という 3 つのタブがあります。 これらのタブにはデータがそれぞれ少しずつ異なる形で表示されるため、モデルを検証する際には、異なるペインの間を何度も切り替えながら調査を進めるのが一般的です。

  • [依存関係ネットワーク] タブ

  • [アイテムセット] タブ

  • [ルール] タブ

  • 汎用コンテンツ ツリー ビューアー

このチュートリアルでは、最初に [依存関係ネットワーク] タブを使用します。その後、[ルール] タブと [アイテムセット] タブを使用して、ビューアーに表示された関係についての理解を深めます。 さらに、[Microsoft 汎用コンテンツ ツリー ビューアー] を使用して、個々のルールやアイテムセットに関する詳細な統計情報を取得します。

[依存関係ネットワーク] タブ

[依存関係ネットワーク] タブでは、モデル内のさまざまなアイテムの相互関係を検証できます。 ビューアーの各ノードはアイテムを表し、アイテム間を結ぶ線はルールを表します。 ノードを選択すると、選択したアイテムが他のどのノードによって予測されるか、また現在のアイテムがどのアイテムを予測するかがわかります。 アイテム間に双方向の関係がある (つまり同一トランザクション内に発生する可能性が高い) 場合もあります。 タブの下部にある色の凡例を参照すると、関係の方向を確認できます。

2 つのアイテムを結ぶ線は、それらのアイテムが同じトランザクションに含まれる可能性が高いことを示しています。 つまり、顧客がそれらのアイテムをまとめて購入する可能性が高いということになります。 スライダーはルールの確率に関連付けられています。 スライダーを下方向に移動すると、緊密な関係 (確率の高いルール) のみが表示されます。

依存関係ネットワークのグラフには、"A->B" として論理的に表現できる 1 対 1 のルールが表示されます。これは、製品 A が購入された場合は製品 B も購入される可能性が高いことを表します。 このグラフでは、AB->C のようなルールを表示することはできません。 すべてのルールが表示される位置までスライダーを動かしてもグラフに線が表示されない場合は、アルゴリズム パラメーターの条件を満たす 1 対 1 のルールが存在しないことになります。

属性名の最初の数文字を入力してノードを名前で検索することもできます。 詳細については、「[ノードの検索] ダイアログ ボックス (マイニング モデル ビューアー)」を参照してください。

Microsoft アソシエーション ルール ビューアーで Association モデルを開くには

  1. ソリューション エクスプローラーで、Association 構造をダブルクリックします。

  2. データ マイニング デザイナーで、[マイニング モデル ビューアー] タブをクリックします。

  3. [マイニング モデル] ボックスのマイニング モデルの一覧から Association を選択します。

依存関係のグラフを操作して特定のノードを見つけるには

  1. [マイニング モデル ビューアー] タブで、[依存関係ネットワーク] タブをクリックします。

  2. [拡大] を数回クリックして、各ノードのラベルが見やすくなるようにします。

    既定では、すべてのノードが見えるようにグラフが表示されます。 複雑なモデルでは、ノードの数が多いためにそれぞれのノードが非常に小さくなることがあります。

  3. ビューアーの右下隅にあるプラス記号 (+) をクリックして、マウス ボタンを押したままにすると、グラフをパン表示することができます。

  4. ビューアーの左側で、スライダーをドラッグして [すべてのリンク] (既定値) からスライダー コントロールの一番下まで動かします。

  5. グラフが更新されて、最も強いアソシエーション (Touring Tire と Touring Tire Tube の間のアソシエーション) のみが表示されます。

  6. "Touring Tire Tube = Existing" というラベルの付いたノードをクリックします。

    グラフが更新されて、このアイテムとの間に強い関連があるアイテムのみが強調表示されます。 2 つのアイテム間の矢印の向きに注目してください。

  7. ビューアーの左側で、スライダーをドラッグして一番下から真ん中あたりまで戻します。

    2 つのアイテムを結ぶ矢印の変化に注目してください。

  8. [依存関係ネットワーク] ペインの上部にあるドロップダウン リストで、[属性名のみ表示] を選択します。

    グラフのテキスト ラベルが更新されて、モデル名のみが表示されます。

トップに戻る

[アイテムセット] タブ

次に、Touring Tire と Touring Tire Tube という 2 つの製品についてモデルによって生成された、ルールとアイテムセットの詳細を調べます。 [アイテムセット] タブには、Microsoft アソシエーション アルゴリズムが検出するアイテムセットに関して、次の 3 つの重要情報が表示されます。

  • **[サポート]:    **アイテムセットが発生するトランザクションの数です。

  • **[サイズ]:    **アイテムセット内のアイテムの数です。

  • **[アイテム]:    **各アイテムセットに含まれているアイテムの一覧です。

アルゴリズム パラメーターの設定方法によっては、多数のアイテムセットが生成される場合があります。 ビューアーに返される各アイテムセットは、アイテムが販売されたトランザクションを表します。 [アイテムセット] タブの上部のコントロールを使用してビューアーにフィルターを適用し、サポートおよびアイテムセットのサイズが指定の (最低限の) 大きさを超えるアイテムセットのみを表示することができます。

別のマイニング モデルを使用していてアイテムセットが表示されない場合、それは、アルゴリズム パラメーターの条件を満たすアイテムセットが存在しないからです。 そのような場合は、サポートの値がもっと低いアイテムセットが許可されるようにアルゴリズム パラメーターを変更できます。

ビューアーに表示されるアイテムセットを名前で絞り込むには

  1. ビューアーの [アイテムセット] タブをクリックします。

  2. [アイテムセットのフィルター] ボックスに「Touring Tire」と入力し、ボックスの外をクリックします。

    その文字列を含むすべてのアイテムが返されます。

  3. [表示] ボックスの一覧で、[属性名のみ表示] を選択します。

  4. [長い名前を表示する] チェック ボックスをオンにします。

    アイテムセットの一覧が更新されて、"Touring Tire" という文字列を含むアイテムセットのみが表示されます。 アイテムセットの長い名前には、各アイテムの属性と値を含むテーブルの名前が含まれます。

  5. [長い名前を表示する] チェック ボックスをオフにします。

    アイテムセットの一覧が更新されて、短い名前のみが表示されます。

[サポート] 列の値は、各アイテムセットのトランザクションの数を表します。 アイテムセットのトランザクションとは、アイテムセット内のすべてのアイテムを含む購入のことです。

既定では、アイテムセットはサポートの降順でビューアーに表示されます。 列のヘッダーをクリックすると、アイテムセットを別の列 (アイテムセットのサイズや名前など) で並べ替えることができます。 アイテムセットに含まれる個々のトランザクションの詳細に関心がある場合は、アイテムセットから個々のケースにドリルスルーすることもできます。 ドリルスルーの結果には、モデルでは使用されなかった顧客の収入レベルと顧客 ID の構造列が含まれます。

アイテムセットの詳細を表示するには

  1. アイテムセットの一覧で、[アイテムセット] 列の見出しをクリックして、アイテムセットを名前で並べ替えます。

  2. "Touring Tire" というアイテム (2 番目のアイテムを含まない) を見つけます。

  3. Touring Tire アイテムを右クリックし、[ドリルスルー] をポイントして [モデル列および構造列] をクリックします。

    [ドリルスルー] ダイアログ ボックスに、このアイテムセットのサポートとして使用されている個々のトランザクションが表示されます。

  4. 入れ子になったテーブル vAssocSeqLineItems を展開して、トランザクションの実際の購入の一覧を表示します。

アイテムセットをサポートまたはサイズで絞り込むには

  1. [アイテムセットのフィルター] ボックスにテキストが入力されている場合は削除します。 テキスト フィルターと数値フィルターを同時に使用することはできません。

  2. [最小のサポート] ボックスに「100」と入力し、ビューアーの背景をクリックします。

    アイテムセットの一覧が更新されて、サポートが 100 以上のアイテムセットのみが表示されます。

トップに戻る

[ルール] タブ

[ルール] タブには、アルゴリズムの検索ルールに関する次の情報が表示されます。

  • **[確率]:    **ルールの確率値です。与えられた左辺のアイテムに対する右辺のアイテムの確率として定義されます。

  • **[重要度]:    **ルールの有効性を示します。 この値が大きいほどルールの有効性が高くなります。

    ルールの有効性を判断するための基準として重要度が用意されているのは、確率だけでは誤った判断を招く可能性があるためです。 たとえば、プロモーションの一環として各顧客のカートに自動的に水筒が追加される場合は、すべてのトランザクションに水筒が含まれるため、水筒の確率を 1 として予測するルールがモデルによって作成されます。 このルールは、確率に基づく限りはきわめて正確ですが、有用な情報にはなりません。

  • **[ルール]:    **ルールの定義です。 マーケット バスケット モデルのルールでは、アイテムの特定の組み合わせを記述します。

各ルールを使用すると、他のアイテムが存在するかどうかに基づいて、あるアイテムがトランザクションに含まれるかどうかを予測することができます。 [アイテムセット] タブと同様、最も注目すべきルールのみを表示するようにルールにフィルターを適用できます。 使用しているマイニング モデルにルールが 1 つもない場合は、アルゴリズム パラメーターを変更して、ルールの確率のしきい値を下げることができます。

Mountain-200 という自転車を含むルールのみを表示するには

  1. [マイニング モデル ビューアー] タブで、[ルール] タブをクリックします。

  2. [ルールのフィルター] ボックスに、「Mountain-200」と入力します。

    [長い名前を表示する] チェック ボックスをオフにします。

  3. [表示] ボックスの一覧で、[属性名のみ表示] を選択します。

    これにより、"Mountain-200" という語句を含むルールのみがビューアーに表示されます。 このルールの確率は、Mountain-200 という自転車を購入した顧客が他の製品を同時に購入する可能性を表します。

ルールは確率の降順で表示されますが、列見出しをクリックして並べ替え順を変更できます。 特定のルールの詳細に関心がある場合は、ドリルスルーを使用して、そのルールをサポートするケースを表示することもできます。

特定のルールをサポートするケースを表示するには

  1. [ルール] タブで、表示するルールを右クリックします。

  2. [ドリルスルー] をポイントして、[モデル列のみ] または [モデル列および構造列] をクリックします。

    [ドリルスルー] ダイアログ ボックスのペインの一番上にルールの概要が表示され、その下に、ルールのサポート データとして使用されたすべてのケースの一覧が表示されます。

トップに戻る

汎用コンテンツ ツリー ビューアー

このビューアーは、アルゴリズムやモデルの種類に関係なく、すべてのモデルで使用できます。 Microsoft 汎用コンテンツ ツリー ビューアーは、[ビューアー] ボックスから起動できます。

コンテンツ ツリーは、マイニング モデルを一連のノードで表したものです。各ノードは、データのサブセットに関する学習済みの知識を表します。 ノードには、いくつかの特徴が共通するパターン、一連のルール、クラスター、または日付範囲の定義を含めることができます。 ノードの正確な内容はアルゴリズムや予測可能な属性の種類に応じて変わりますが、内容の全体的な表示は同じです。 各ノードを展開して、より詳細なレベルで表示したり、任意のノードの内容をクリップボードにコピーしたりできます。

コンテンツ ビューアーを使用してルールの詳細を表示するには

  1. [マイニング モデル ビューアー] タブの [ビューアー] ボックスの一覧で、[Microsoft 汎用コンテンツ ツリー ビューアー] を選択します。

  2. [ノードのキャプション] ペインで、一覧を一番下までスクロールして最後のノードをクリックします。

    ビューアーでは、最初にアイテムセット、次にルールが表示されますが、グループ化はされていません。 特定のノードを見つけるには、コンテンツ クエリを作成するのが最も簡単です。 詳細については、「結合モデルのクエリ例」を参照してください。

  3. [ノードの詳細] ペインで、NODE_TYPE と NODE_DESCRIPTION の値を確認します。

    ルールのノードの種類は 8 で、アイテムセットのノードの種類は 7 です。 ルールの NODE_DESCRIPTION の値は、ルールを構成する条件を表します。 アイテムセットの NODE_DESCRIPTION の値は、アイテムセットに含まれるアイテムを表します。

コンテンツ クエリを作成してルールの詳細な統計情報を取得することもできます。 マイニング モデル コンテンツとその解釈方法の詳細については、「アソシエーション モデルのマイニング モデル コンテンツ (Analysis Services - データ マイニング)」を参照してください。

トップに戻る

このレッスンの次の作業

マイニング モデルでの入れ子になったテーブルのフィルター処理 (中級者向けデータ マイニング チュートリアル)

関連項目

参照

Microsoft アソシエーション アルゴリズム テクニカル リファレンス

概念

レッスン 3: マーケット バスケット シナリオの作成 (中級者向けデータ マイニング チュートリアル)

レッスン 4: シーケンス クラスター シナリオの作成 (中級者向けデータ マイニング チュートリアル)

Microsoft アソシエーション アルゴリズム