共用方式為


將預測函數套用至模型

適用於: SQL Server 2019 和舊版 Analysis Services Azure Analysis Services Fabric/Power BI Premium

重要

SQL Server 2017 Analysis Services 中已淘汰數據採礦,現在已在 SQL Server 2022 Analysis Services 中停止。 檔不會更新為已淘汰和已停止的功能。 若要深入瞭解,請參閱 Analysis Services 回溯相容性

若要在 SQL Server 數據採礦中建立預測查詢,您必須先選取查詢所依據的採礦模型。 您可以選取存在於目前專案中的任何採礦模型。

選取模型之後,將 預測函式新增至查詢。 預測函式可用來取得預測,但您也可以新增可傳回相關統計數據的預測函數,例如預測值的機率,或用於產生預測的資訊。

預測函式可以傳回下列類型的值:

  • 可預測屬性的名稱,以及所預測的值。

  • 有關預測值分佈和變異數的統計數據。

  • 指定結果的機率,或所有可能結果的機率。

  • 頂端或底部分數或值。

  • 與指定之節點、對象或屬性相關聯的值。

可用的預測函式類型取決於您所使用的模型類型。 例如,套用至判定樹模型的預測函式可以傳回規則和節點描述;時間序列模型的預測函式可以傳回時間序列特有的延遲和其他資訊。

如需幾乎所有模型類型支援的預測函數清單,請參閱 一般預測函數 (DMX)

如需如何查詢特定採礦模型的範例,請參閱 數據採礦演算法(Analysis Services - 數據採礦)中的演算法參考主題。

選擇要用於預測的採礦模型

  1. 在 SQL Server Management Studio 中,以滑鼠右鍵按兩下模型,然後選取 [建置預測查詢]

    --或--

    在 SQL Server Data Tools 中,按兩下索引標籤,採礦模型預測,然後按兩下 [採礦模型] 資料表中的 [選取模型]。

  2. [選取採礦模型] 對話框中,選取採礦模型,然後按兩下 [確定] [確定]

    您可以選擇目前 SQL Server Analysis Services 資料庫內的任何模型。 若要在不同的資料庫中使用模型建立查詢,您必須在該資料庫的內容中開啟新的查詢視窗,或開啟包含該模型的方案檔。

將預測函式新增至查詢

  1. 預測查詢產生器中,藉由在 [單一查詢輸入] 對話框中提供值,或將模型對應至外部數據源,來設定用於預測的輸入數據。

    如需詳細資訊,請參閱 選擇和對應預測查詢的輸入資料

    警告

    您不需要提供輸入來產生預測。 沒有輸入時,演算法通常會傳回所有可能輸入中最有可能預測的值。

  2. 點選單擊 [來源] 資料列 ,然後從清單中選擇值:

    價值 描述
    <模型名稱> 選取此選項,以在輸出中包含採礦模型中的值。 您只能新增可預測的數據行。

    當您從模型新增數據行時,傳回的結果就是該數據行中非相異的值清單。

    您使用此選項新增的資料列會包含在所產生 DMX 語句的 SELECT 部分中。
    預測函式 選取此選項以瀏覽預測函式清單。

    您選取的值或函式會新增至所產生 DMX 語句的 SELECT 部分。

    預測函式清單不會依您選取的模型類型進行篩選或限制。 因此,如果您對目前模型類型是否支援函式有任何疑慮,您可以只將函式新增至清單,並查看是否有錯誤。

    清單專案前面加上 $ (例如 $AdjustedProbability)代表使用 函式時輸出之巢狀數據表的數據行,PredictHistogram。 這些是可讓您用來傳回單一數據行而非巢狀數據表的快捷方式。
    自定義表示式 選取此選項以輸入自定義表達式,然後將別名指派給輸出。

    自定義表達式會新增至所產生 DMX 預測查詢的 SELECT 部分。

    如果您想要為每個數據列新增輸出的文字、呼叫 VB 函式或呼叫自定義預存程式,這個選項會很有用。

    如需從 DMX 使用 VBA 和 Excel 函式的詳細資訊,請參閱 MDX 和 DAX中的 VBA 函式。
  3. 新增每個函式或表達式之後,切換至 DMX 檢視以查看如何在 DMX 語句中新增函式。

    警告

    在您按兩下 [結果] 之後,預測查詢產生器才會驗證 DMX。 通常,您會發現查詢產生器所產生的表達式無效 DMX。 典型的原因是參考與可預測數據行無關的數據行,或嘗試預測巢狀數據表中的數據行,這需要子 SELECT 語句。 此時,您可以切換至 DMX 檢視並繼續編輯語句。

範例:在叢集模型上建立查詢

  1. 如果您沒有可用來建置此範例查詢的叢集模型,請使用 基本數據採礦教學課程建立模型 [TM_Clustering]。

  2. 從 SQL Server Management Studio,以滑鼠右鍵按兩下模型 [TM_Clustering],然後選取 [[建置預測查詢]

  3. 從 [採礦模型] 功能表中,選取 [單一查詢]。

  4. 在 [單一查詢輸入] 對話框中,將下列值設定為輸入:

    • Gender = M

    • 通勤距離 = 5-10 英里

  5. 在查詢方格中,針對 [來源],選取 [TM_Clustering採礦模型],然後新增數據行 [Bike Buyer]。

  6. 針對 Source,選取 [預測函式],然後新增函式,[叢集]。

  7. 針對 [來源],選取 [預測函式]、將函式、PredictSupport,然後將模型數據行 [Bike Buyer] 拖曳到 [Criteria/Argument] 方塊中。 在 [別名] 數據行中輸入 Support

    [準則/自 變數] 方塊複製代表預測函式和數據行參考的表達式。

  8. 針對 Source,選取 [自定義表達式],輸入別名,然後使用下列語法參考 Excel CEILING 函式:

    Excel![CEILING](<arguments) as <return type>  
    

    將數據行參考貼入 中做為 函式的自變數。

    例如,下列表示式會傳回支援值的 CEILING:

    EXCEL!CEILING(PredictSupport([TM_Clustering].[Bike Buyer]),2)  
    

    [別名] 資料行中輸入 CEILING。

  9. 按兩下 [切換至查詢文字檢視 以檢閱產生的 DMX 語句,然後按兩下 [切換至查詢結果檢視] 以查看預測查詢輸出的數據行。

    下表顯示預期的結果:

    Bike Buyer $Cluster 支援 天花板
    0 叢集8 954 953.948638926372

如果您想要在語句中的其他位置新增其他子句,例如,如果您想要新增WHERE 子句,則無法使用方格來新增它;您必須先切換至 DMX 檢視。

另請參閱

數據採礦查詢