ALTER MINING STRUCTURE (DMX)

適用: SQL Server Analysis Services

既存のマイニング構造に基づく新しいマイニング モデルを作成します。 ALTER MINING STRUCTURE ステートメントを使用して新しいマイニング モデルを作成する場合は、その構造が既に存在している必要があります。 これに対し、 CREATE MINING MODEL (DMX) ステートメントを使用すると、モデルを作成し、基になるマイニング構造を同時に自動的に生成します。

構文

  
ALTER MINING STRUCTURE <structure>  
ADD MINING MODEL <model>  
(  
    <column definition list>  
  [(<nested column definition list>) [WITH FILTER (<nested filter criteria>)]]  
)  
USING <algorithm> [(<parameter list>)]   
[WITH DRILLTHROUGH]  
[,FILTER(<filter criteria>)]  

引数

構造
マイニング モデルが追加されるマイニング構造の名前です。

model
マイニング モデルの一意の名前。

列定義リスト
列定義のコンマ区切りのリスト。

入れ子になった列定義リスト
入れ子になったテーブルの列のコンマ区切りのリストです (該当する場合)。

入れ子になったフィルター条件
入れ子になったテーブルの列に適用されるフィルター式。

アルゴリズム
プロバイダーによって定義されているデータ マイニング アルゴリズムの名前。

注意

現在のプロバイダーでサポートされているアルゴリズムの一覧は、 DMSCHEMA_MINING_SERVICES行セットを使用して取得できます。 Analysis Services の現在のインスタンスでサポートされているアルゴリズムを表示するには、「 データ マイニング プロパティ」を参照してください。

パラメーター リスト
省略可能。 アルゴリズムのプロバイダー定義パラメーターのコンマ区切りの一覧。

フィルター条件
ケース テーブルの列に適用されるフィルター式。

注釈

マイニング構造に複合キーが含まれている場合、マイニング モデルには、構造で定義されているすべてのキー列を含める必要があります。

Microsoft クラスタリングアルゴリズムと Microsoft シーケンス クラスタリング アルゴリズムを使用して構築されたモデルなど、予測可能な列がモデルに必要ない場合は、ステートメントに列定義を含める必要はありません。 結果のモデル内のすべての属性が入力として扱われます。

ケース テーブルに適用される WITH 句では、フィルター処理とドリルスルーの両方のオプションを指定できます。

  • FILTER キーワード (keyword)とフィルター条件を追加します。 フィルターは、マイニング モデルのケースに適用されます。

  • DRILLTHROUGH キーワード (keyword)を追加して、マイニング モデルのユーザーがモデルの結果からケース データにドリルダウンできるようにします。 データ マイニング拡張機能 (DMX) では、モデルの作成時にのみドリルスルーを有効にすることができます。

大文字と小文字のフィルター処理とドリルスルーの両方を使用するには、次の例に示す構文を使用して、1 つの WITH 句でキーワードを結合します。

WITH DRILLTHROUGH, FILTER(Gender = 'Male')

列定義リスト

モデルの構造を定義するには、列ごとに次の情報を含む列定義リストを指定します。

  • 名前 (必須)

  • エイリアス (省略可能)

  • モデリング フラグ

  • PREDICT 句または PREDICT_ONLY 句で示される予測可能な値が列に含まれているかどうかをアルゴリズムに示す予測要求

1 つの列を定義するには、列定義リストに次の構文を使用します。

<structure column name>  [AS <model column name>]  [<modeling flags>]    [<prediction>]  

列名と別名

列定義リストで使用する列名は、マイニング構造で使用されている列の名前にする必要があります。 ただし、必要に応じて、マイニング モデルの構造列を表すエイリアスを定義できます。 同じ構造列に複数の列定義を作成し、列の各コピーに異なる別名と予測の使用方法を割り当てることもできます。 既定では、別名を定義しない場合、構造列の名前が使用されます。 詳細については、「 モデル列の別名を作成する」を参照してください。

入れ子になったテーブル列の場合は、入れ子になったテーブルの名前を指定し、データ型を TABLE として指定し、かっこで囲んでモデルに含める入れ子になった列の一覧を指定します。

入れ子になったテーブル列の定義の後にフィルター条件式を付加することで、入れ子になったテーブルに適用されるフィルター式を定義できます。

ModelingFlags

Analysis Services では、マイニング モデル列で使用するための次のモデリング フラグがサポートされています。

注意

NOT_NULL モデリング フラグは、マイニング構造列に適用されます。 詳細については、「 CREATE MINING STRUCTURE (DMX)」を参照してください。

期間 定義
リグレッサー アルゴリズムが、指定した列を回帰アルゴリズムの回帰式に使用できることを示します。
MODEL_EXISTENCE_ONLY 属性列の値が属性の有無ほど重要ではないことを示します。

列には複数のモデリング フラグを定義できます。 モデリング フラグの使用方法の詳細については、「モデリング フラグ (DMX)」を参照してください。

予測句

予測句では、予測列の使用方法について説明します。 次の表は、使用可能な句を示しています。

説明
PREDICT この列はモデルによって予測でき、その値を入力として使用して、他の予測可能な列の値を予測できます。
PREDICT_ONLY この列はモデルによって予測できますが、その値を入力ケースで使用して、他の予測可能な列の値を予測することはできません。

フィルター条件式

マイニング モデルで使用されるケースを制限するフィルターを定義できます。 フィルターは、ケース テーブルの列、入れ子になったテーブルの行、またはその両方に適用できます。

フィルター条件式は、WHERE 句と同様に簡略化された DMX 述語です。 フィルター式は、基本的な算術演算子、スカラー、および列名を使用する式に制限されます。 ただし、EXISTS 演算子は例外です。これは、サブクエリに対して少なくとも 1 行が返される場合は true に評価されます。 述語は、一般的な論理演算子 AND、OR、NOT を使用して結合できます。

マイニング モデルで使用されるフィルターの詳細については、「マイニング モデル のフィルター (Analysis Services - データ マイニング)」を参照してください。

注意

フィルター内の列は、マイニング構造列である必要があります。 モデル列または別名付き列にフィルターを作成することはできません。

DMX 演算子と構文の詳細については、「 マイニング モデル列」を参照してください。

パラメーター定義リスト

アルゴリズム パラメーターをパラメーター リストに追加して、モデルのパフォーマンスと機能を調整できます。 使用できるパラメーターは、USING 句で指定するアルゴリズムによって異なります。 各アルゴリズムに関連付けられているパラメーターの一覧については、「 データ マイニング アルゴリズム (Analysis Services - データ マイニング)」を参照してください。

パラメーター リストの構文は次のとおりです。

[<parameter> = <value>, <parameter> = <value>,...]  

例 1: 構造へのモデルの追加

次の例では、Naive Bayes マイニング モデルを New Mailing マイニング構造に追加し、属性状態の最大数を 50 に制限します。

ALTER MINING STRUCTURE [New Mailing]  
ADD MINING MODEL [Naive Bayes]  
(  
    CustomerKey,   
    Gender,  
    [Number Cars Owned],  
    [Bike Buyer] PREDICT  
)  
USING Microsoft_Naive_Bayes (MAXIMUM_STATES = 50)  

例 2: 構造へのフィルター選択されたモデルの追加

次の例では、 Naive Bayes Womenマイニング モデル である を New Mailing マイニング構造に追加します。 新しいモデルは、例 1 で追加されたマイニング モデルと同じ基本構造を持ちます。ただし、このモデルでは、マイニング構造から 50 歳以上の女性顧客にケースを制限します。

ALTER MINING STRUCTURE [New Mailing]  
ADD MINING MODEL [Naive Bayes Women]  
(  
    CustomerKey,   
    Gender,  
    [Number Cars Owned],  
    [Bike Buyer] PREDICT  
)  
USING Microsoft_Naive_Bayes  
WITH FILTER([Gender] = 'F' AND [Age] >50)  

例 3: 入れ子になったテーブルを含む構造へのフィルター選択されたモデルの追加

次の例では、マーケット バスケット マイニング構造の変更されたバージョンにマイニング モデルを追加します。 この例で使用されるマイニング構造は、顧客リージョンの属性を含む Region 列と、HighModerate、または Low の値を使用して顧客の収入を分類する [収入グループ] 列を追加するように変更されています。

マイニング構造には、顧客が購入したアイテムを一覧表示する入れ子になったテーブルも含まれています。

マイニング構造には入れ子になったテーブルが含まれているため、ケース テーブル、入れ子になったテーブル、またはその両方にフィルターを定義できます。 この例では、ケース フィルターと入れ子になった行フィルターを組み合わせて、Road Tire モデルのいずれかの品目を購入した富裕なヨーロッパの顧客だけにケースを制限します。

ALTER MINING STRUCTURE [Market Basket with Region and Income]  
ADD MINING MODEL [Decision Trees]  
(  
    CustomerKey,   
    Region,  
    [Income Group],  
    [Product] PREDICT (Model)   
WITH FILTER (EXISTS (SELECT * FROM [v Assoc Seq Line Items] WHERE   
 [Model] = 'HL Road Tire' OR  
 [Model] = 'LL Road Tire' OR  
 [Model] = 'ML Road Tire' )  
)  
) WITH FILTER ([Income Group] = 'High' AND [Region] = 'Europe')  
USING Microsoft_Decision Trees  

参照

データ マイニング拡張機能 (DMX) データ定義ステートメント
データ マイニング拡張機能 (DMX) データ操作ステートメント
データ マイニング拡張機能 (DMX) ステートメント リファレンス