本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon SageMaker Canvas 中的時間序列預測
注意
時間序列預測模型僅支援表格式資料集。
Amazon SageMaker Canvas 可讓您使用機器學習時間序列預測。時間序列預測使您能夠進行可能隨時間變化的預測。
您可以針對下列範例進行時間序列預測:
-
預測您在未來幾個月內的庫存。
-
未來四個月售出的物品數量。
-
節日期間降低價格對銷售的影響。
-
接下來 12 個月的物品庫存。
-
接下來幾個小時內進入商店的客戶人數。
-
預測產品價格降低 10% 如何影響時段內的銷售。
若要進行時間序列預測,您的資料集必須具備下列項目:
-
一個時間戳欄,其中所有值包含
datetime
類型。 -
目標欄,其中包含您用來預測未來值的值。
-
項目 ID 資料欄,包含資料集中每個項目的唯一識別符,例如SKU數字。
時間戳記欄的 datetime
值必須使用下列其中一種格式:
-
YYYY-MM-DD HH:MM:SS
-
YYYY-MM-DDTHH:MM:SSZ
-
YYYY-MM-DD
-
MM/DD/YY
-
MM/DD/YY HH:MM
-
MM/DD/YYYY
-
YYYY/MM/DD HH:MM:SS
-
YYYY/MM/DD
-
DD/MM/YYYY
-
DD/MM/YY
-
DD-MM-YY
-
DD-MM-YYYY
您可以針對下列間隔進行預測:
-
1 分鐘
-
5 分鐘。
-
15 分鐘。
-
30 分鐘。
-
1 小時
-
1 天
-
1 週
-
1 個月
-
1 年
輸入資料集中的未來值
Canvas 會自動偵測資料集中可能包含未來值的資料欄。如果存在,這些值可以增強預測的準確性。Canvas 用 Future values
標籤來標籤這些特定的資料欄。Canvas 會推論這些欄中的資料與您嘗試預測的目標欄之間的關係,並利用該關係來產生更準確的預測。
例如,您可以預測雜貨店出售的冰淇淋數量。要進行預測,您必須有一個時間戳記欄,以及表示雜貨店售出了多少冰淇淋的資料欄。為了獲得更準確的預測,您的資料集還可以包括價格、環境溫度、冰淇淋的口味或冰淇淋的唯一識別碼。
當天氣變熱時,冰淇淋銷量可能會增加。冰淇淋價格下降可能會銷售的單位提高。有一個包含環境溫度資料的欄和一個包含定價料欄,可以提高預測雜貨店銷售的冰淇淋單位數量的能力。
雖然提供未來值是選擇性的,但它可以幫助您直接在 Canvas 應用程式中執行模擬分析,向您展示未來值的變化如何改變您的預測。
處理缺少值
您可能由於不同的原因而遺失資料。遺失資料的原因可能會讓 Canvas 知道如何估算。例如,您的組織可能會使用在銷售發生時間加以追蹤的自動系統。如果您使用的是來自這種自動系統類型的資料集,表示目標欄中會有缺少值。
重要
如果您在目標欄中缺少值,建議您使用沒有這些值的資料集。 SageMaker Canvas 會使用目標欄來預測未來值。目標欄中的缺少值會大幅降低預測的準確性。
針對資料集中的缺少值,Canvas 會自動把 0
填入目標欄,並在其他數值資料欄填入資料欄的中間值數值,來自動為您輸入缺少的值。
不過,您可以為資料集中的目標欄和其他數值資料欄選取自己的填入邏輯。與其他數值資料欄相比,目標欄的填入準則和限制有所不同。目標欄位會填滿至歷史週期結束,而數值欄位會填入至歷史週期與未來週期一直到預測總時程結束。如果您的資料至少有一筆具有未來時間戳記和且該特定欄具有數值的記錄,則 Canvas 僅填入數字欄中的未來值。
您可以選擇下列其中一個填入邏輯選項,來輸入資料中的缺少值:
-
zero
- 填入0
。 -
NaN
- 填入 NaN,或不是數字。只有目標欄才支援此選項。 -
mean
- 填入資料序列中的平均值。 -
median
- 填入資料序列中的中間值。 -
min
- 填入資料序列中的最小數值。 -
max
- 填入充資料序列中的最大值。
選擇填入邏輯時,您應考慮模型將會如何解讀邏輯。例如,在零售案例中,記錄供應商品的 0 銷售量會不同於記錄無法供應之商品的 0 銷售量,因為後者並不一定表示客戶對該無法供應商品缺乏興趣。在此情況下,在資料集的目標欄填入 0
可能會導致模型在預測中偏差不足,並推論客戶對無法供應的項目缺乏興趣。相反地,填入 NaN
可能會導致模型忽略銷售商品中出售零商品的真實情況。
預測類型
您可以進行下列預測之一:
-
單一項目
-
所有項目
對於資料集中所有項目的預測, SageMaker Canvas 會傳回資料集中每個項目未來值的預測。
對於單一項目預測,您可以指定項目, SageMaker Canvas 會傳回未來值的預測。預測包括一個折線圖,繪製了一定時間內的預測值。