レッスン 2: Market Basket マイニング構造へのマイニング モデルの追加

このレッスンでは、「レッスン 1: Market Basket マイニング構造の作成」で作成した Market Basket マイニング構造に 2 つのマイニング モデルを追加します。これらのマイニング モデルを使用すると、予測を作成できます。

同時に購入する傾向が強い製品の種類を予測するには、Microsoft アソシエーション アルゴリズムで MINIMUM_PROBABILTY パラメータに 2 つの異なる値を使用して、2 つのマイニング モデルを作成します。

MINIMUM_PROBABILTY は、Microsoft アソシエーション アルゴリズムのパラメータで、マイニング モデルに含まれるルールの数を決定するときに役立ちます。このパラメータでは、ルールの最小確率を指定します。たとえば、この値を 0.4 に設定すると、ルールで記述する製品の組み合わせの発生確率が 40% 以上である場合にのみ、ルールが生成されます。

MINIMUM_PROBABILTY パラメータを変更した場合の影響については、後のレッスンで確認します。

ALTER MINING STRUCTURE ステートメント

入れ子になったテーブルを含むマイニング モデルをマイニング構造に追加するには、ALTER MINING STRUCTURE (DMX) ステートメントを使用します。ステートメントのコードは次の部分に分けることができます。

  • マイニング構造の指定

  • マイニング モデルの名前指定

  • キー列の定義

  • 入力列と予測可能列の定義

  • 入れ子になったテーブル列の定義

  • アルゴリズムとパラメータ変更の指定

入れ子になったテーブル列を含む構造にマイニング モデルを追加する ALTER MINING STRUCTURE ステートメントの汎用例を次に示します。

ALTER MINING STRUCTURE [<Mining Structure Name>]
ADD MINING MODEL [<Mining Model Name>]
(
    [<key column>],
    <mining model column> <usage>,
    <table columns>
    (  [<nested key column>],
       <nested mining model columns> )
) USING <algorithm>( <algorithm parameters> )

コードの最初の行では、マイニング モデルの追加先となる既存のマイニング構造を指定します。

ALTER MINING STRUCTURE [<mining structure name>]

コードの次の行では、マイニング構造に追加するマイニング モデルを指定します。

ADD MINING MODEL [<mining model name>]

データ マイニング拡張機能 (DMX) でオブジェクトに名前を付ける方法については、「識別子 (DMX)」を参照してください。

コードの次の数行では、マイニング モデルで使用するマイニング構造の列を定義します。

[<key column>],
<mining model columns> <usage>,

使用できるのは、マイニング構造内に既に存在する列だけです。

マイニング モデル列の一覧の最初の列は、マイニング構造のキー列にする必要があります。ただし、キー列の後ろに「KEY」と入力して使用法を指定する必要はありません。マイニング構造の作成時に、この列をキーとして定義済みであるためです。

残りの行では、新しいマイニング モデルにおける列の使用法を指定します。次の構文で、マイニング モデルの列を予測に使用するよう指定できます。

<column name> PREDICT,

使用法を指定しない場合は、データ マイニング構造列を一覧に含める必要がありません。参照されたデータ マイニング構造で使用されているすべての列が、その構造に基づくマイニング モデルで自動的に使用可能になります。ただし、使用法を指定していない列は、モデルのトレーニングに使用されません。

コードの最後の行では、マイニング モデルの生成に使用するアルゴリズムとアルゴリズム パラメータを定義します。

) USING <algorithm>( <algorithm parameters> )

このレッスンの作業

このレッスンでは、次の作業を行います。

  • 既定の確率を使用して、アソシエーション マイニング モデルを構造に追加します。

  • 変更した確率を使用して、アソシエーション マイニング モデルを構造に追加します。

既定の MINIMUM_PROBABILITY を使用した、構造への Association マイニング モデルの追加

最初に、Microsoft アソシエーション アルゴリズムに基づいて、Market Basket マイニング構造に新しいマイニング モデルを追加します。このとき、MINIMUM_PROBABILITY の既定値を使用します。

Association マイニング モデルを追加するには

  1. オブジェクト エクスプローラで、Analysis Services インスタンスを右クリックし、[新しいクエリ] をポイントして [DMX] をクリックします。

    クエリ エディタが開き、新しい空のクエリが表示されます。

    注意

    特定の Analysis Services データベースに対する DMX クエリを作成するには、インスタンスではなくデータベースを右クリックします。

  2. ALTER MINING STRUCTURE ステートメントの汎用例を空のクエリにコピーします。

  3. 次の部分を探します。

    <mining structure name> 
    

    これを次の文字列に置き換えます。

    [Market Basket]
    
  4. 次の部分を探します。

    <mining model name> 
    

    これを次の文字列に置き換えます。

    [Default Association]
    
  5. 次の部分を探します。

    [<key column>],
    <mining model columns>,
    <table columns>
    (  [<nested key column>],
       <nested mining model columns> )
    

    これを次の文字列に置き換えます。

    OrderNumber,
        [Products] PREDICT (
            [Model]
        )
    

    この場合、[Products] テーブルは予測可能列として指定されています。また、[Model] 列は入れ子になったテーブルのキー列であるため、入れ子になったテーブル列の一覧に含まれています。

    注意

    入れ子になったキーは、ケース キーとは異なります。ケース キーはケースの一意識別子ですが、入れ子になったキーはモデル化する属性です。

  6. 次の部分を探します。

    USING <algorithm>( <algorithm parameters> )
    

    これを次の文字列に置き換えます。

    Using Microsoft_Association_Rules
    

    これで、ステートメントは次のようになります。

    ALTER MINING STRUCTURE [Market Basket]
    ADD MINING MODEL [Default Association]
    (
        OrderNumber,
        [Products] PREDICT (
            [Model]
        )
    )
    Using Microsoft_Association_Rules
    
  7. [ファイル] メニューで、[名前を付けて DMXQuery1.dmx を保存] をクリックします。

  8. [名前を付けて保存] ダイアログ ボックスで、適切なフォルダを参照して指定し、ファイルに「Default_Association_Model.dmx」という名前を付けます。

  9. ツール バーの [実行] ボタンをクリックします。

既定の MINIMUM_PROBABILITY を変更した値による、構造への Association マイニング モデルの追加

次に、Microsoft アソシエーション アルゴリズムに基づいて、Market Basket マイニング構造に別のマイニング モデルを追加します。このとき、MINIMUM_PROBABILITY の既定値を 0.01 に変更します。パラメータを変更すると、Microsoft アソシエーション アルゴリズムによってさらに多くのルールが作成されます。

Association マイニング モデルを追加するには

  1. オブジェクト エクスプローラで、Analysis Services インスタンスを右クリックし、[新しいクエリ] をポイントして [DMX] をクリックします。

    クエリ エディタが開き、新しい空のクエリが表示されます。

  2. ALTER MINING STRUCTURE ステートメントの汎用例を空のクエリにコピーします。

  3. 次の部分を探します。

    <mining structure name> 
    

    これを次の文字列に置き換えます。

    Market Basket
    
  4. 次の部分を探します。

    <mining model name> 
    

    これを次の文字列に置き換えます。

    [Modified Association]
    
  5. 次の部分を探します。

    <mining model columns>,
    <table columns>
    (  [<nested key column>],
       <nested mining model columns> )
    

    これを次の文字列に置き換えます。

    OrderNumber,
    [Products] PREDICT (
            [Model]
        )
    

    この場合、[Products] テーブルは予測可能列として指定されています。また、[MODEL] 列は入れ子になったテーブルのキー列であるため、一覧に含まれています。

  6. 次の部分を探します。

    USING <algorithm>( <algorithm parameters> )
    

    これを次の文字列に置き換えます。

    USING Microsoft_Association_Rules (Minimum_Probability = 0.1)
    

    これで、ステートメントは次のようになります。

    ALTER MINING STRUCTURE [Market Basket]
    ADD MINING MODEL [Modified Assocation]
    (
        OrderNumber,
        [Products] PREDICT (
            [Model]
        )
    )
    USING Microsoft_Association_Rules (Minimum_Probability = 0.1)
    
  7. [ファイル] メニューで、[名前を付けて DMXQuery1.dmx を保存] をクリックします。

  8. [名前を付けて保存] ダイアログ ボックスで、適切なフォルダを参照して指定し、ファイルに「Modified Association_Model.dmx」という名前を付けます。

  9. ツール バーの [実行] ボタンをクリックします。

次のレッスンでは、Market Basket マイニング構造とそれに関連するマイニング モデルを処理します。