このレッスンでは、Adventure Works Cycles の潜在顧客が自転車を購入するかどうかを予測できるマイニング構造を作成します。 データ マイニングにおけるマイニング構造とその役割に慣れていない場合は、「 マイニング構造 (Analysis Services - データ マイニング)」を参照してください。
このレッスンで作成する Bike Buyer マイニング構造では、 Microsoft クラスタリング アルゴリズム Microsoftデシジョン ツリー アルゴリズムに基づくマイニング モデルの追加がサポートされています。 後のレッスンでは、クラスタリング マイニング モデルを使用して、顧客をグループ化できるさまざまな方法を調べ、デシジョン ツリー マイニング モデルを使用して、潜在顧客が自転車を購入するかどうかを予測します。
マイニング構造を作成するステートメント
マイニング構造を作成するには、 CREATE MINING STRUCTURE (DMX) ステートメントを使用します。 ステートメント内のコードは、次の部分に分割できます。
構造体に名前を付ける。
キー列の定義。
マイニングカラムの定義。
オプションのテスト データ セットの定義。
CREATE MINING STRUCTURE ステートメントの一般的な例を次に示します。
CREATE MINING STRUCTURE [<mining structure name>]
(
<key column>,
<mining structure columns>
)
WITH HOLDOUT (<holdout specifier>)
コードの最初の行は、構造体の名前を定義します。
CREATE MINING STRUCTURE [<mining structure name>]
データ マイニング拡張機能 (DMX) でのオブジェクトの名前付けの詳細については、「 識別子 (DMX)」を参照してください。
コードの次の行では、ソース データ内のエンティティを一意に識別するマイニング構造のキー列を定義します。
<key column>,
作成するマイニング構造では、顧客識別子 ( CustomerKey
) によってソース データ内のエンティティが定義されます。
コードの次の行は、マイニング構造に関連付けられているマイニング モデルによって使用されるマイニング列を定義するために使用されます。
<mining structure columns>
次の構文を用いて、<マイニング構造の列>で DISCRETIZE 関数を使用することで、連続的な列を離散化できます。
DISCRETIZE(<method>,<number of buckets>)
列の分離の詳細については、「 分離メソッド (データ マイニング)」を参照してください。 定義できるマイニング構造列の種類の詳細については、「 マイニング構造列」を参照してください。
コードの最後の行では、マイニング構造でオプションのパーティションを定義します。
WITH HOLDOUT (<holdout specifier>)
構造に関連するマイニング モデルのテストに使用するデータの一部を指定し、残りのデータはモデルのトレーニングに使用します。 既定では、Analysis Services は、すべてのケース データの 30% を含むテスト データ セットを作成します。 テスト データ セットには、ケースの 30% を最大 1,000 ケースまで含める必要がある仕様を追加します。 ケースの 30% が 1000 未満の場合、テスト データ セットに含まれる量は少なくなります。
このレッスンの作業
このレッスンでは、次のタスクを実行します。
新しい空のクエリを作成します。
クエリを変更してマイニング構造を作成します。
クエリを実行します。
クエリの作成
最初の手順では、Analysis Services のインスタンスに接続し、SQL Server Management Studio で新しい DMX クエリを作成します。
SQL Server Management Studio で新しい DMX クエリを作成するには
SQL Server Management Studio を開きます。
[ サーバーへの接続 ] ダイアログ ボックスの [ サーバーの種類] で、[ Analysis Services] を選択します。 [ サーバー名] に「
LocalHost
」と入力するか、このレッスンで接続する Analysis Services のインスタンスの名前を入力します。 [接続] をクリックします。オブジェクト エクスプローラーで Analysis Services のインスタンスを右クリックし、[新しいクエリ] をポイントし、[DMX] をクリックしてクエリ エディターと新しい空のクエリを開きます。
クエリの変更
次の手順では、前述の CREATE MINING STRUCTURE ステートメントを変更して Bike Buyer マイニング構造を作成します。
CREATE MINING STRUCTURE ステートメントをカスタマイズするには
クエリ エディターで、CREATE MINING STRUCTURE ステートメントの一般的な例を空白のクエリにコピーします。
次のコードを置き換えます。
[<mining structure>]
次の内容に置き換えます。
[Bike Buyer]
次のコードを置き換えます。
<key column>
次の内容に置き換えます。
CustomerKey LONG KEY
次のコードを置き換えます。
<mining structure columns>
次の内容に置き換えます。
[Age] LONG DISCRETIZED(Automatic,10), [Bike Buyer] LONG DISCRETE, [Commute Distance] TEXT DISCRETE, [Education] TEXT DISCRETE, [Gender] TEXT DISCRETE, [House Owner Flag] TEXT DISCRETE, [Marital Status] TEXT DISCRETE, [Number Cars Owned] LONG DISCRETE, [Number Children At Home] LONG DISCRETE, [Occupation] TEXT DISCRETE, [Region] TEXT DISCRETE, [Total Children]LONG DISCRETE, [Yearly Income] DOUBLE CONTINUOUS
次のコードを置き換えます。
WITH HOLDOUT (holdout specifier>)
次の内容に置き換えます。
WITH HOLDOUT (30 PERCENT or 1000 CASES)
これで、完全なマイニング構造ステートメントは次のようになります。
CREATE MINING STRUCTURE [Bike Buyer] ( [Customer Key] LONG KEY, [Age]LONG DISCRETIZED(Automatic,10), [Bike Buyer] LONG DISCRETE, [Commute Distance] TEXT DISCRETE, [Education] TEXT DISCRETE, [Gender] TEXT DISCRETE, [House Owner Flag] TEXT DISCRETE, [Marital Status] TEXT DISCRETE, [Number Cars Owned]LONG DISCRETE, [Number Children At Home]LONG DISCRETE, [Occupation] TEXT DISCRETE, [Region] TEXT DISCRETE, [Total Children]LONG DISCRETE, [Yearly Income] DOUBLE CONTINUOUS ) WITH HOLDOUT (30 PERCENT or 1000 CASES)
[ ファイル ] メニューの [ DMXQuery1.dmx As の保存] をクリックします。
[ 名前を付けて保存 ] ダイアログ ボックスで、適切なフォルダーを参照し、ファイルに
Bike Buyer Structure.dmx
名前を付けます。
クエリの実行
最後の手順では、クエリを実行します。 クエリを作成して保存した後、クエリを実行する必要があります。 つまり、サーバー上にマイニング構造を作成するには、ステートメントを実行する必要があります。 クエリ エディターでのクエリの実行の詳細については、「 データベース エンジン クエリ エディター (SQL Server Management Studio)」を参照してください。
クエリを実行するには
クエリ エディターのツール バーの [ 実行] をクリックします。
ステートメントの実行が完了すると、クエリ エディターの下部にある [ メッセージ ] タブにクエリの状態が表示されます。 メッセージが表示されます。
Executing the query Execution complete
Bike Buyer という名前の新しい構造体がサーバーに存在するようになりました。
次のレッスンでは、先ほど作成した構造にマイニング モデルを追加します。