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
プロバイダによって定義された、データ マイニング プロバイダの名前です。
parameter list
省略可。プロバイダによって定義された、アルゴリズムに対するパラメータのコンマ区切りリストです。
XML string
(詳しい知識のあるユーザーのみ。)XML でエンコードされたモデル (PMML) です。文字列を示すには必ず単一引用符 (') を使用してください。
解説
SESSION 句によって、接続が閉じたときやセッションがタイムアウトになったときにサーバーから自動的に削除されるマイニング モデルを作成することができます。SESSION マイニング モデルは、ユーザーがデータベース管理者である必要がなく、接続が開いている間のみディスク容量を使用するため、便利です。
WITH DRILLTHROUGH 句によって、新しいマイニング モデルでのドリルスルーが可能になります。ドリルスルーは、モデルの作成時にのみ可能です。
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>,…]
各アルゴリズムに関連付けられたパラメータのリストについては、「データ マイニング アルゴリズム」を参照してください。
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 つのキーを使用してモデルを定義しています。Order Number は、個人の注文を指定します。Line Number は、注文が追加されたアイテムのシーケンスを指定します。
CREATE MINING MODEL BuyingSequence (
[Order Number] TEXT KEY,
[Products] TABLE (
[Line Number] LONG KEY SEQUENCE,
[Model] TEXT DISCRETE PREDICT
)
)
Using Microsoft_Sequence_Clustering
時系列の例
次の例では、Microsoft 時系列アルゴリズムを使用して、新しいマイニング モデルを作成しています。時系列モデルには複数のキーを含めることができるため、TimeIndex および ModelRegion の両方をキー列に指定することができます。この例では、データの周期を 12 か月としているため、PERIODICITY_HINT パラメータは 12 に設定されています。
メモ : |
---|
PERIODICITY_HINT パラメータを指定するには、かっこ記号 "{}" を使用する必要があります。 |
CREATE MINING MODEL SalesForcast (
TimeIndex LONG KEY TIME,
ModelRegion TEXT KEY,
Amount LONG CONTINUOUS PREDICT,
Quantity LONG CONTINUOUS PREDICT
)
Using Microsoft_Time_Series (PERIODICITY_HINT = '{12}')
参照
関連項目
データ マイニング拡張機能 (DMX) データ定義ステートメント
データ マイニング拡張機能 (DMX) データ操作ステートメント
データ マイニング拡張機能 (DMX) ステートメント リファレンス