CREATE MINING MODEL (DMX)
新しいマイニング モデルとマイニング構造の両方をデータベースに作成します。モデルを作成するには、新しいモデルをステートメントで定義するか、Predictive Model Markup Language (PMML) を使用します。後者については、詳しい知識のあるユーザーのみ使用してください。
マイニング構造には、モデル名の後に「_structure」を追加した名前を付けます。これにより、構造名がモデル名から一意であることが保証されます。
既存のマイニング構造に対するマイニング モデルを作成するには、ALTER MINING STRUCTURE (DMX) ステートメントを使用します。
構文
CREATE [SESSION] MINING MODEL <model>
(
[(<column definition list>)]
)
USING <algorithm> [(<parameter list>)] [WITH DRILLTHROUGH]
CREATE MINING MODEL <model> FROM PMML <xml string>
引数
model
モデルの一意の名前です。column definition list
列定義のコンマ区切りのリストです。algorithm
現在のプロバイダによって定義された、データ マイニング アルゴリズムの名前です。注 現在のプロバイダでサポートされているアルゴリズムの一覧は、DMSCHEMA_MINING_SERVICES 行セット を使用して取得できます。Analysis Services の現在のインスタンスでサポートされているアルゴリズムを表示するには、「データ マイニング プロパティ」を参照してください。
parameter list
省略可。プロバイダによって定義された、アルゴリズムに対するパラメータのコンマ区切りリストです。XML string
(詳しい知識のあるユーザーのみ。)XML でエンコードされたモデル (PMML) です。文字列を示すには必ず単一引用符 (') を使用してください。
SESSION 句によって、接続が閉じたときやセッションがタイムアウトになったときにサーバーから自動的に削除されるマイニング モデルを作成できます。SESSION マイニング モデルは、ユーザーがデータベース管理者である必要がなく、接続が開いている間のみディスク容量を使用するため便利です。
WITH DRILLTHROUGH 句によって、新しいマイニング モデルでのドリルスルーが可能になります。ドリルスルーは、モデルの作成時にのみ可能です。モデルの種類によっては、カスタム ビューアでモデルを参照するためにドリルスルーが必要な場合があります。Microsoft 汎用コンテンツ ツリー ビューアを使用してモデルを予測または参照する場合は、ドリルスルーは必要ありません。
CREATE MINING MODEL ステートメントは、列定義の一覧、アルゴリズム、およびアルゴリズム パラメータのリストに基づいた新しいマイニング モデルを作成します。
列定義の一覧
列定義の一覧を使用するモデルの構造を定義するには、次の情報を各列に含めます。
名前 (必須)
データ型 (必須)
分布
モデリング フラグの一覧
コンテンツの種類 (必須)
PREDICT または PREDICT_ONLY 句で示される、この列を予測するためのアルゴリズムを示す予測要求です。
RELATED TO 句によって示される、属性列へのリレーションシップです (適用される場合にのみ必須)。
列定義リストの次の構文を使用して、単一列を定義します。
<column name> <data type> [<Distribution>] [<Modeling Flags>] <Content Type> [<prediction>] [<column relationship>]
列定義リストの次の構文を使用して、入れ子になったテーブル列を定義します。
<column name> TABLE [<prediction>] ( <non-table column definition list> )
モデリング フラグを除き、特定のグループから句を 1 つだけ使用して列を定義します。列には複数のモデリング フラグを定義できます。
構造列の定義に使用できる、データ型、コンテンツの種類、列分布、モデリング フラグのリストについては、次のトピックを参照してください。
ステートメントに句を追加して、2 つの列間のリレーションシップを記述できます。Analysis Services では、次の <Column relationship> 句の使用がサポートされます。
- RELATED TO
この形式は値の階層を示します。RELATED TO 列の対象にすることが可能なのは、入れ子になったテーブル内のキー列、ケース行内の不連続値の列、RELATED TO 句のある別の列です。これにより、より深い階層が示されます。
予測列の使用方法を説明するには、予測句を使用します。次の表は、使用できる 2 つの句について示しています。
<prediction> 句 |
説明 |
---|---|
PREDICT |
この列は、モデルによって予測が可能で、入力ケースで指定されることで、その他の予測可能列の値を予測することができます。 |
PREDICT_ONLY |
この列は、モデルによって予測が可能ですが、その他の予測可能列の値を予測するためにこの列の値を入力ケースで使用することはできません。 |
パラメータ定義リスト
マイニング モデルのパフォーマンスおよび機能を調整するには、パラメータの一覧を使用します。パラメータ リストの構文は次のとおりです。
[<parameter> = <value>, <parameter> = <value>,…]
各アルゴリズムに関連付けられたパラメータのリストについては、「データ マイニング アルゴリズム (Analysis Services - データ マイニング)」を参照してください。
説明
組み込みのテスト データセットを持つモデルを作成する場合は、CREATE MINING STRUCTURE ステートメントの後に ALTER MINING STRUCTURE ステートメントを使用します。ただし、すべての種類のモデルで提示されたデータセットがサポートされるわけではありません。詳細については、「CREATE MINING STRUCTURE (DMX)」を参照してください。
CREATEMODEL ステートメントを使用してマイニング モデルを作成する方法のチュートリアルについては、「時系列予測の DMX のチュートリアル」を参照してください。
Naive Bayes の例
次の例では、Microsoft Naive Bayes アルゴリズムを使用して、新しいマイニング モデルを作成しています。Bike Buyer の列は、予測可能属性として定義されています。
CREATE MINING MODEL [NBSample]
(
CustomerKey LONG KEY,
Gender TEXT DISCRETE,
[Number Cars Owned] LONG DISCRETE,
[Bike Buyer] LONG DISCRETE PREDICT
)
USING Microsoft_Naive_Bayes
結合モデルの例
次の例では、Microsoft 結合アルゴリズムを使用して、新しいマイニング モデルを作成しています。このステートメントは、テーブル列を使用することで、モデル定義内でテーブルを入れ子にする機能を利用しています。モデルを変更するには、MINIMUM_PROBABILITY パラメータおよび MINIMUM_SUPPORT パラメータを使用します。
CREATE MINING MODEL MyAssociationModel (
OrderNumber TEXT KEY,
[Products] TABLE PREDICT (
[Model] TEXT KEY
)
)
USING Microsoft_Association_Rules (Minimum_Probability = 0.1, MINIMUM_SUPPORT = 0.01)
シーケンス クラスタリングの例
次の例では、Microsoft シーケンス クラスタリング アルゴリズムを使用して、新しいマイニング モデルを作成しています。2 つのキーを使用してモデルを定義しています。OrderNumber 列は、ケース キーとして使用され、個々の注文を指定します。LineNumber 列は、入れ子になったテーブルのキーとして使用され、注文が追加されたアイテムのシーケンスを指定します。
CREATE MINING MODEL BuyingSequence (
[Order Number] TEXT KEY,
[Products] TABLE
(
[Line Number] LONG KEY SEQUENCE,
[Model] TEXT DISCRETE PREDICT
)
)
USING Microsoft_Sequence_Clustering
時系列の例
次の例では、Microsoft タイム シリーズ アルゴリズムで、ARTxp アルゴリズムを使用して新しいマイニング モデルを作成しています。ReportingDate は時系列のキー列で、ModelRegion はデータ系列のキー列です。この例では、データの周期を 12 か月としています。そのため、PERIODICITY_HINT パラメータは 12 に設定されています。
注 |
---|
PERIODICITY_HINT パラメータを指定するには、中かっこ文字を使用する必要があります。さらに、値が文字列なので、'{<numeric value>}' のように単一引用符で囲む必要があります。 |
CREATE MINING MODEL SalesForecast (
ReportingDate DATE KEY TIME,
ModelRegion TEXT KEY,
Amount LONG CONTINUOUS PREDICT,
Quantity LONG CONTINUOUS PREDICT
)
USING Microsoft_Time_Series (PERIODICITY_HINT = '{12}', FORECAST_METHOD = 'ARTXP')