CREATE MINING MODEL (DMX)

適用於: SQL Server Analysis Services

在資料庫中建立新的採礦模型和採礦結構。 您可以在 語句中定義新的模型,或使用預測模型標記語言 (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
模型的唯一名稱。

資料行定義清單
以逗號分隔的資料行定義清單。

algorithm
資料採礦演算法的名稱,如目前提供者所定義。

注意

您可以使用 DMSCHEMA_MINING_SERVICES Rowset 來擷取 目前提供者支援的演算法清單。 若要檢視 Analysis Services 目前實例中支援的演算法,請參閱 資料採礦屬性

參數清單
選擇性。 演算法的提供者定義參數逗號分隔清單。

XML 字串
(僅供進階使用。)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> )  

除了模型旗標之外,您只能使用來自特定群組的一個子句來定義資料行。 您可以定義資料行的多個模型旗標。

如需可用來定義資料行的資料類型、內容類型、資料行散發和模型旗標清單,請參閱下列主題:

您可以將 子句新增至 語句,以描述兩個數據行之間的關聯性。 Analysis Services 支援使用下列 < Column 關聯 > 性子句。


此表單表示值階層。 RELATED TO 資料行的目標可以是巢狀資料表中的索引鍵資料行、案例資料列中的離散值資料行,或是具有 RELATED TO 子句的另一個資料行,表示更深層階層。

使用預測子句來描述預測資料行的使用方式。 下表描述兩個可能子句。

<prediction > 子句 描述
預測 此資料行可由模型預測,而且可以在輸入案例中提供,以預測其他可預測資料行的值。
PREDICT_ONLY 此資料行可由模型預測,但其值不能用於輸入案例中來預測其他可預測資料行的值。

參數定義清單

您可以使用參數清單來調整採礦模型的效能和功能。 參數清單的語法如下所示:

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

如需與每個演算法相關聯的參數清單,請參閱 資料採礦演算法(Analysis Services - 資料採礦)。

備註

如果您想要建立具有內建測試資料集的模型,您應該使用語句 CREATE MINING STRUCTURE,後面接著 ALTER MINING STRUCTURE。 不過,並非所有模型類型都支援鑒效組資料集。 如需詳細資訊,請參閱 CREATE MINING STRUCTURE (DMX)

如需如何使用 CREATEMODEL 語句建立採礦模型的逐步解說,請參閱 時間序列預測 DMX 教學課程

貝氏機率分類範例

下列範例會使用 Microsoft 貝氏機率分類演算法來建立新的採礦模型。 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 時序群集演算法來建立新的採礦模型。 兩個索引鍵可用來定義模型。 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')  

另請參閱

資料採礦延伸模組 (DMX) 資料定義語句
資料採礦延伸模組 (DMX) 資料動作陳述式
資料採礦延伸模組 (DMX) 陳述式參考