

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon SageMaker Canvas 中的時間序列預測
<a name="canvas-time-series"></a>

**注意**  
時間序列預測模型僅支援表格式資料集。

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 年

## 輸入資料集中的未來值
<a name="canvas-time-series-future"></a>

Canvas 會自動偵測資料集中可能包含未來值的資料欄。如果存在，這些值可以增強預測的準確性。Canvas 用 `Future values` 標籤來標籤這些特定的資料欄。Canvas 會推論這些欄中的資料與您嘗試預測的目標欄之間的關係，並利用該關係來產生更準確的預測。

例如，您可以預測雜貨店出售的冰淇淋數量。要進行預測，您必須有一個時間戳記欄，以及表示雜貨店售出了多少冰淇淋的資料欄。為了獲得更準確的預測，您的資料集還可以包括價格、環境溫度、冰淇淋的口味或冰淇淋的唯一識別碼。

當天氣變熱時，冰淇淋銷量可能會增加。冰淇淋價格下降可能會銷售的單位提高。有一個包含環境溫度資料的欄和一個包含定價料欄，可以提高預測雜貨店銷售的冰淇淋單位數量的能力。

雖然提供未來值是選擇性的，但它可以幫助您直接在 Canvas 應用程式中執行模擬分析，向您展示未來值的變化如何改變您的預測。

## 處理缺少值
<a name="canvas-time-series-missing"></a>

您可能由於不同的原因而遺失資料。遺失資料的原因可能會讓 Canvas 知道如何估算。例如，您的組織可能會使用在銷售發生時間加以追蹤的自動系統。如果您使用的是來自這種自動系統類型的資料集，表示目標欄中會有缺少值。

**重要**  
如果目標欄中有缺少值，建議您使用沒有這些值的資料集。SageMaker Canvas 使用目標欄來預測未來值。目標欄中的缺少值會大幅降低預測的準確性。

針對資料集中的缺少值，Canvas 會自動把 `0` 填入目標欄，並在其他數值資料欄填入資料欄的中間值數值，來自動為您輸入缺少的值。

不過，您可以為資料集中的目標欄和其他數值資料欄選取自己的填入邏輯。與其他數值資料欄相比，目標欄的填入準則和限制有所不同。目標欄位會填滿至歷史週期結束，而數值欄位會填入至歷史週期與未來週期一直到預測總時程結束。如果您的資料至少有一筆具有未來時間戳記和且該特定欄具有數值的記錄，則 Canvas 僅填入數字欄中的未來值。

您可以選擇下列其中一個填入邏輯選項，來輸入資料中的缺少值：
+ `zero` - 填入 `0`。
+ `NaN` - 填入 NaN，或不是數字。只有目標欄才支援此選項。
+ `mean` - 填入資料序列中的平均值。
+ `median` - 填入資料序列中的中間值。
+ `min` - 填入資料序列中的最小數值。
+ `max` - 填入充資料序列中的最大值。

選擇填入邏輯時，您應考慮模型將會如何解讀邏輯。例如，在零售案例中，記錄供應商品的 0 銷售量會不同於記錄無法供應之商品的 0 銷售量，因為後者並不一定表示客戶對該無法供應商品缺乏興趣。在此情況下，在資料集的目標欄填入 `0` 可能會導致模型在預測中偏差不足，並推論客戶對無法供應的項目缺乏興趣。相反地，填入 `NaN` 可能會導致模型忽略銷售商品中出售零商品的真實情況。

## 預測類型
<a name="canvas-time-series-types"></a>

您可以進行下列預測之一：
+ **單一項目**
+ **所有項目**

針對資料集中所有項目的預測，SageMaker Canvas 會傳回資料集中每個項目未來值的預測。

針對單一項目預測，您可以指定項目，SageMaker Canvas 會傳回未來值的預測。預測包括一個折線圖，繪製了一定時間內的預測值。

**Topics**
+ [輸入資料集中的未來值](#canvas-time-series-future)
+ [處理缺少值](#canvas-time-series-missing)
+ [預測類型](#canvas-time-series-types)
+ [用於預測洞見的其他選項](canvas-additional-insights.md)

# 用於預測洞見的其他選項
<a name="canvas-additional-insights"></a>

在 Amazon SageMaker Canvas 中您可以使用下列方法，從預測中取得更多深入分析：
+ 群組欄
+ 假日排程
+ 模擬情況

您可以將資料集中的資料欄指定為 **Group column** (群組欄)。Amazon SageMaker Canvas 會按照欄中的每個值來分組預測。例如，您可以將預測根據包含價格資料或項目識別符的欄位進行分組。依欄位將預測分組，可讓您進行更具體的預測。例如，如果您將預測根據包含項目識別符的欄位進行分組，則可以查看每個項目的預測。

項目的整體銷售可能會受到假日存在的影響。例如，在美國，十一月和十二月售出的商品數量可能與一月售出的商品數量有很大的不同。如果您使用十一月和十二月的資料來預測一月份的銷售額，結果可能不正確。使用假日排程可必避免您獲得不正確的結果。您可以使用 251 個國家/地區的假日排程。

針對資料集中單一項目的預測，您可以使用模擬情況。模擬情況可讓您變更資料中的值並變更預測。例如您可以使用模擬情況來回答下列問題：“如果我降低價格將會如何？ 將如何影響出售的物品數量？”