預測模型的推斷和評估 (預覽)

重要

此功能目前處於公開預覽。 此預覽版本沒有服務等級協定,不建議用於處理生產工作負載。 可能不支援特定功能,或可能已經限制功能。

如需詳細資訊,請參閱 Microsoft Azure 預覽版增補使用條款

本文會介紹與預測工作中模型推斷和評估相關的概念。 如需在 AutoML 中定型預測模型的指示和範例,請參閱我們的 設定 AutoML 以進行時間序列預測 文章。

一旦您使用 AutoML 來定型並選取最佳模型,下一個步驟就是產生預測,然後盡可能評估其在定型資料所保留的測試集上的正確性。 若要了解如何在自動化機器學習中設定和執行預測模型評估,請參閱我們的 推斷和評估元件 指南。

推斷案例

針對機器學習來説,推斷是對未用於定型的新資料產生模型預測的流程。 由於資料的時間相依性,在預測中產生預測的方式有很多種。 最簡單的案例是,推斷期間會緊接在定型期間之後,並在預測時間範圍中產生預測。 下圖說明此案例:

Diagram demonstrating a forecast immediately following the training period.

此圖顯示了兩個重要的推斷參數:

  • 內容長度,或模型進行預測所需的歷程記錄量,
  • 預測時間範圍,這是預測員經過定型會在多長時間之前進行預測。

預測模型通常會使用一些歷史資訊,內容,在預測時間範圍之前預先做出預測。 當內容屬於定型資料的一部分時,AutoML 會儲存它需要進行預測的内容,因此不需要明確提供它。

另外還有兩個比較複雜的推斷案例:

  • 產生在預測時間範圍之後的未來預測,
  • 當定型與推斷期間之間有差距時,取得預測。

我們會在下列子區段中檢閱這些案例。

超過預測時間範圍的預測: 遞歸預測

當您需要超過預測時間範圍的預測時,AutoML 會在推斷期間以遞歸方式套用模型。 這表示來自模型的預測會 作為輸入 送回,以便產生後續預測時段的預測。 下圖為一個簡單的範例:

Diagram demonstrating a recursive forecast on a test set.

我們會在這使用一個時段的預測作為下一個時段的內容,在時間範圍三倍長的一段時期產生預測。

警告

遞歸預測會加劇模型化錯誤,因此當預測距離原始預測時間範圍越遠,預測就越不準確。 在此情況下,您可以使用較長的時間範圍重新定型以找出更精確的模型。

定型與推斷期間之間有差距的預測

假設您過去已定型模型,而且想要使用它從定型期間尚未提供的新觀察進行預測。 在此情況下,定型與推斷期間之間有時間差距:

Diagram demonstrating a forecast with a gap between the training and inference periods.

AutoML 支援此推斷案例,但 您需要提供差距期間的內容資料,如下圖所示。 傳遞至 推斷元件 的預測資料會需要差距和遺漏值中的特徵和觀察目標值,或推斷期間内目標的“NaN”值。 下表會顯示這個模式的範例:

Table showing an example of prediction data when there's a gap between the training and inference periods.

此處提供了 2023 年 5 月 1 日至 2023 年 5 月 3 日期間目標和特徵的已知值。 從 2023 年 5 月 4 日 開始的遺漏目標值表示推斷期間從該日期開始。

AutoML 會使用新的內容資料來更新延隔時間和其他回溯功能,以及更新 ARIMA 之類的模型,以保持內部狀態。 此作業 不會 更新或重新調整模型參數。

模型評估

評估是從引導模型部署決策的這些預測,在定型資料和計算計量所保留的測試集上產生預測的流程。 因此,有一個特別適合模型評估的推斷模式 - 滾動預測。 我們會在下方子區段中檢閱這些案例。

滾動預測

評估預測模型的最佳做法流程是將定型的預測員在測試集上將時間往前捲動,平均數個預測時段的錯誤計量。 此流程有時稱為 回測,視內容而定。 在理想情況下,評估的測試集相對於模型的預測時間範圍很長。 預測錯誤的估計值可能是統計上的雜訊,因此比較不可靠。

下圖會顯示具有三個預測時段的簡單範例:

Diagram demonstrating a rolling forecast on a test set.

此圖會說明三個滾動評估參數:

  • 內容長度,或模型進行預測所需的歷程記錄量,
  • 預測時間範圍,這是預測員經過定型會在多長時間之前進行預測,
  • 步驟大小,這是滾動視窗在測試集上每次反覆運算提前的時間。

重要的是,內容會隨著預測窗口前進。 這表示當實際值落在目前的內容視窗中時,會用來進行預測。 用於指定預測時段之實際值的最新日期稱為時段的 起源時間。 下表會顯示三個視窗滾動預測的範例輸出,時間範圍為三天,步驟大小為一天:

Example output table from a rolling forecast.

有了這樣的資料表,我們可以將預測與實際和計算所需的評估計量視覺化。 AutoML 管線可以在具有 推斷元件 的測試集上產生滾動預測。

注意

當測試期間與預測時間範圍相同時,在預測時間範圍前,滾動預測會提供一個預測時段。

評估計量

評估摘要或計量的選擇通常是由特定商務案例所驅動。 一些常見的選擇包括下列各項:

  • 觀察目標值的繪圖與預測值,以檢查模型是否有擷取資料的特定動態,
  • 實際值與預測值之間的 MAPE (平均絕對百分比誤差),
  • RMSE (均方根誤差),可能具有正規化,介於實際值和預測值之間,
  • MAE (平均絕對誤差),可能具有正規化,介於實際值和預測值之間。

根據商務案例,還有其他許多可能性。 您可能需要建立自己的後置處理公用程式,以從推斷結果或滾動預測計算評估計量。 如需計量的詳細資訊,請參閱我們的 迴歸和預測計量 文章章節。

下一步