預測模型的訓練參數

本頁面詳細說明用於訓練預測模型的參數。如要瞭解如何訓練預測模型,請參閱「訓練預測模型」和「使用 Tabular Workflow 訓練預測模型」。

模型訓練方法

您可以選擇下列其中一種方法來訓練模型:

時間序列稠密型編碼器 (TiDE): 以最佳化稠密型 DNN 為基礎的 編碼器-解碼器模型,訓練和推論速度非常快,模型品質極佳,若背景區間和預測期間較長,更是如此。瞭解詳情

時間融合轉換器 (TFT):以注意力為基礎的 DNN 模型,可讓模型與一般的多重預測期間任務保持一致,達到優異的準確率和可解釋性。瞭解詳情

AutoML (L2L): 適合各種用途。瞭解詳情

Seq2Seq+: 適合用於實驗。由於演算法架構較簡單,且使用的搜尋空間較小,因此可能比 AutoML 更快收斂。實驗結果顯示,Seq2Seq+ 在時間預算較少,以及資料集大小小於 1 GB 的情況下,表現良好。

預測時的特徵類型和可用性

用於訓練預測模型的每個資料欄都必須有類型:屬性共變數。共變量會進一步指定為可在預測時使用或無法使用。

系列類型 在預測時可用 說明 範例 API 欄位
屬性 可用 屬性是不會隨時間變更的靜態特徵。 項目顏色、產品說明。 time_series_attribute_columns
共變量 可用

預計會隨著時間改變的外生變數,可在預測時使用的共變量即為「先行指標」。

您必須為預測期間的各個時間點提供這個資料欄的推論資料。

節日、已排定的促銷或活動。 available_at_forecast_columns
共變量 無法使用 無法在預測時使用的共變量。建立預測時,您不需要提供這些特徵值。 實際天氣。 unavailable_at_forecast_columns

進一步瞭解功能適用情況與預測範圍、背景期間和預測期間之間的關係。

預測期間、背景期間和預測範圍

預測特徵可以是靜態屬性,也可以是隨時間變化的共變數。 請參閱「預測時的特徵類型和可用性」。

訓練預測模型時,您必須指定要擷取哪些共變數訓練資料。這會以「預測視窗」的形式呈現,也就是由下列項目組成的一系列資料列:

  • 推論時的脈絡或歷來資料。
  • 用於推論的預測範圍或資料列。

視窗中的資料列共同定義了時間序列例項,做為模型輸入內容:這是 Vertex AI 訓練、評估及用於推論的內容。用來產生視窗的資料列是時間序列中的第一個資料列,可做為視窗的專屬 ID。

預測範圍會決定模型要預測多遠的未來,以及推論資料每列的目標值。

背景期間會設定模型在訓練期間 (和預測期間) 的回溯時間長度。換句話說,對於每個訓練資料點,背景區間會決定模型回溯多遠的時間,以尋找預測模式。瞭解尋找合適脈絡視窗值的最佳做法

舉例來說,如果「內容視窗」 = 14 且「預測範圍」 = 7,則每個視窗範例都會有 14 + 7 = 21 個資料列。

預測時的供應量

預測共變量可分為預測時可用的共變量,以及預測時無法使用的共變量。

處理預測時間可用的共變數時,Vertex AI 會考量來自內容視窗和預測範圍的共變數值,以進行訓練、評估和推論。處理預測時間無法使用的共變數時,Vertex AI 會考量背景資訊視窗中的共變數值,但會明確排除預測範圍中的共變數值。

滾動週期策略

Vertex AI 會使用滾動視窗策略,從輸入資料產生預測視窗。預設策略為「Count」

  • Count。 Vertex AI 生成的視窗數量不得超過使用者提供的上限。如果輸入資料集中的資料列數少於視窗數量上限,系統會使用每個資料列產生視窗。否則,Vertex AI 會執行隨機取樣來選取資料列。視窗數上限的預設值為 100,000,000。視窗數量上限不得超過 100,000,000
  • Stride。Vertex AI 會使用每 X 個輸入資料列中的一個來生成視窗,最多可生成 100,000,000 個視窗。這個選項適用於季節性或週期性推論。舉例來說,您可以將步幅長度值設為 7,將預測限制為每週的單一日期。這個值可介於 11000 之間。
  • 。 您可以在輸入資料中新增資料欄,其中的值為 TrueFalse。Vertex AI 會為每個輸入資料列產生視窗,其中資料欄的值為 TrueTrueFalse 值可以依任意順序設定,只要 True 列的總數小於 100,000,000 即可。建議使用布林值,但系統也接受字串值。字串值不區分大小寫。

產生少於預設值的 100,000,000 視窗,即可縮短預先處理和模型評估所需的時間。此外,視窗下採樣可讓您進一步控制訓練期間所見視窗的分布情形。如果使用得當,這項功能可望提升成效,並讓結果更加一致。

訓練和預測期間如何使用背景區間和預測期間

假設您每月收集資料,背景區間為 5 個月,預測期間為 5 個月。使用 12 個月的資料訓練模型,會產生下列輸入和預測結果:

  • [1-5]:[6-10]
  • [2-6]:[7-11]
  • [3-7]:[8-12]

訓練完成後,模型可用於預測第 13 到 17 個月的資料:

  • [8-12]:[13-17]

模型只會使用內容視窗內的資料進行預測。如果提供的資料超出脈絡窗口,系統會忽略這些資料。

收集第 13 個月的資料後,即可預測第 18 個月的情況:

  • [9-13]:[14-18]

只要成效良好,您就可以繼續使用這項功能。 最終,您可以使用新資料重新訓練模型。舉例來說,如果您在新增 6 個月的資料後重新訓練模型,訓練資料的使用方式如下:

  • [2-6]:[7-11]
  • [3-7]:[8-12]
  • [4-8]:[9-13]
  • [5-9]:[10-14]
  • [6-10]:[11-15]
  • [7-11]:[12-16]
  • [8-12]:[13-17]
  • [9-13]:[14-18]

接著,您可以使用模型預測第 19 到 23 個月的資料:

  • [14-18]:[19-23]

預測模型的最佳化目標

訓練模型時,Vertex AI 會根據模型類型和目標欄所用的資料類型,選取預設最佳化目標。下表提供部分詳細資料,說明預測模型最適合因應的問題:

最佳化目標 API 值 目標的適用情境
均方根誤差 minimize-rmse 盡量減少均方根誤差 (RMSE)。可準確擷取更極端的值,且匯總推論時的偏差較小。預設值。
平均絕對誤差 minimize-mae 盡量減少平均絕對誤差 (MAE)。將極端值視為對模型影響較小的離群值。
均方根對數誤差 minimize-rmsle 盡量減少均方根對數誤差 (RMSLE)。依據相對大小 (而非絕對值) 懲罰誤差,如果預測值和實際值可能很大,這項做法就相當實用。
均方根百分比誤差 minimize-rmspe 盡量減少均方根百分比誤差 (RMSPE)。準確擷取大範圍的值。與均方根誤差相似,但以目標規模為相對基準。在值的範圍偏大時相當實用。
加權絕對百分比誤差 minimize-wape-mae 盡量減少加權絕對百分比誤差 (WAPE) 和平均絕對誤差 (MAE) 的組合。在實際值偏低時相當實用。
分位數損失 minimize-quantile-loss 盡量減少所定義分位數的縮放彈珠損失,以量化預估值的不確定性。分位數推論會量化推論的不確定度。這類指標會評估推論結果落入某個範圍的可能性。

節慶區域

在某些情況下,如果預測資料對應到區域性節慶,可能會出現不規律的行為。如要讓模型將此效應納入考量,請選取與輸入資料對應的地理區域。訓練期間,Vertex AI 會根據時間欄中的日期和指定的地理區域,在模型中建立節慶類別特徵。

以下是美國的日期和節慶類別功能摘錄。請注意,系統會將類別特徵指派給主要日期、一或多個節前日,以及一或多個節後日。舉例來說,2013 年美國的母親節主要日期是 5 月 12 日。母親節功能會指派給主要日期、節日前六天和節日後一天。

日期 節慶類別特徵
2013-05-06MothersDay
2013-05-07MothersDay
2013-05-08MothersDay
2013-05-09MothersDay
2013-05-10MothersDay
2013-05-11MothersDay
2013-05-12MothersDay
2013-05-13MothersDay
2013-05-26US_MemorialDay
2013-05-27US_MemorialDay
2013-05-28US_MemorialDay

可接受的節慶地區值如下:

  • GLOBAL:偵測全球各地的節慶。
  • NA:偵測北美洲的節慶。
  • JAPAC:偵測日本和亞太地區的節慶。
  • EMEA:偵測歐洲、中東和非洲的節慶。
  • LAC:偵測拉丁美洲和加勒比海地區的節慶。
  • ISO 3166-1 國家/地區代碼:偵測個別國家/地區的節慶。

如要查看各個地理區域的完整節慶日期清單,請參閱 BigQuery 中的 holidays_and_events_for_forecasting 資料表。您可以透過 Google Cloud 控制台開啟這個表格,步驟如下:

  1. 前往 Google Cloud 控制台的「BigQuery」專區,然後前往「BigQuery Studio」頁面。

    前往 BigQuery Studio

  2. 在「Explorer」面板中,開啟 bigquery-public-data 專案。如果找不到這個專案,或想瞭解詳情,請參閱「開啟公開資料集」。
  3. 開啟 ml_datasets 資料集。
  4. 開啟 holidays_and_events_for_forecasting 表格。

以下是 holidays_and_events_for_forecasting 表格的摘錄內容:

預測用的節日範例