

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

# 時間序列資料集格式與遺失值填入方法
<a name="timeseries-forecasting-data-format"></a>

時間序列資料是指在固定時間間隔內記錄的觀測值或測量值的集合。在這種類型的資料中，每個觀測都與特定的時間戳記或時間段相關聯，以建立一系列按時間順序排列的資料點。

時間序欄資料集中包含的特定資料欄取決於您分析的目標以及可用的資料。時間序欄資料至少由 3 欄資料表組成，其中：
+ 一欄位包含指定給個別項目的唯一識別碼，以便在特定時刻參照其值。
+ 另一欄位表示在時間點值或**目標**記錄在特定時刻的指定項目的值。在對這些目標值進行模型訓練之後，此目標欄位包含模型在定義範圍內以指定頻率預測的值。
+ 並且包含時間戳欄位來記錄測量值的日期與時間。
+ 其他欄位可以包含可能影響預測績效的其他因素。例如，在零售業的時間序列資料集 (目標為銷售額或收入) 中，您可能會包含提供銷售單位、產品 ID、商店位置、客戶數量、庫存程度以及共變指標 (例如氣象資料或人口統計資訊) 的相關資訊的功能。

**注意**  
您可以將特徵設計的國定假日資訊資料集新增至您的時間序列。透過在時間序列模型中包含假日，您可以擷取假日所建立的週期性模式。這有助於您的預測更好地反映資料的潛在季節性。如需每個國家/地區可用行事曆的資訊，請參閱[國定假日行事曆](autopilot-timeseries-forecasting-holiday-calendars.md)

## 用於時間序列預測的資料集格式
<a name="timeseries-format"></a>

Autopilot 支援數字、分類、文字與日期時間資料類型。目標欄的資料類型必須為數值。

Autopilot 支援格式為 CSV (預設) 檔案或 Parquet 檔案的時間序列資料。
+ **CSV** (逗號分隔值)是基於行的文件格式，以人類可讀的純文字格式儲存資料，這是資料交換的流行選擇，因為它們受到廣泛的應用程式的支援。
+ **Parquet** 是一種基於列的文件格式，其中資料存放和處理比基於行的文件格式更有效。這使它們成為解決大數據問題的更好選擇。

如需 Autopilot 中預測時間序列資料集的資源限制的詳細資訊，請參閱[Autopilot 的時間序列預測資源限制](timeseries-forecasting-limits.md)。

## 處理遺失值
<a name="timeseries-missing-values"></a>

時間序列預測資料中有個常見問題，就是會出現遺失值。您的資料可能由於多種原因而包含遺失值，包括測量失敗、格式設定問題、人為錯誤或缺少要記錄的資訊。例如，如果您要預測零售商店的產品需求，而某個商品已售完或無法供應，則在該商品無庫存期間，不會有要記錄的銷售資料。如果遺失值夠普遍，則會顯著影響模型的準確性。

Autopilot 提供了多種填入方法來處理遺失的值，與目標欄及其他附加欄採用不同的方法。填入是將標準化值新增至資料集中的遺失項目的程序。

請參閱[如何處理輸入資料集中的遺失值](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-fill-missing-values)以了解如何設定填入時間序列資料集中遺失值的方法。

Autopilot 支援下列填入方法：
+ **前填入：**填入所有項目中最早記錄的資料點和每個項目的起點之間的任何遺失值(每個項目可以在不同的時間開始)。這樣可以確保每個項目的資料完整，並且涵蓋從最早記錄的資料點到其各自的起始點。
+ **中間填入：**填入資料集中項目的開始日期和結束日期之間的所有遺失值。
+ **回填：**填入每個項目的最後一個資料點 (每個項目可以在不同的時間停止)和所有項目中最後記錄的資料點之間的任何遺失值。
+ **未來填入：**填入所有項目最後記錄的資料點與預測範圍結束之間的任何遺失值。

下列影像提供不同填入方法的視覺化呈現。

![Amazon SageMaker Autopilot 中時間序列預測的不同填入方法。](http://docs.aws.amazon.com/zh_tw/sagemaker/latest/dg/images/autopilot/autopilot-forecast-filling-methods.png)


### 選擇填入邏輯
<a name="filling-logic"></a>

選擇填入邏輯時，您應考慮模型將會如何解讀邏輯。例如，在零售案例中，記錄供應商品的 0 銷售量會不同於記錄無法供應之商品的 0 銷售量，因為後者並不表示客戶對該商品缺乏興趣。因此，`0` 填入時間序欄的目標欄可能會導致預測器的預測偏差不足，而 `NaN` 填入可能會忽略 0 個可用商品的實際銷售情況，導致預測器偏差過大。

### 填入邏輯
<a name="filling-restrictions"></a>

您可以對資料集的目標資料欄與其他數值資料欄執行填寫。與其他數值資料欄相比，目標資料欄的填入準則和限制不同。

填入指導方針


| 資料欄類型 | 預設填入？ | 支援的填入方法 | 預設的填入邏輯 | 可接受的填入邏輯 | 
| --- | --- | --- | --- | --- | 
| 目標欄 | 是 | 中間和往回填入 | 0 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/sagemaker/latest/dg/timeseries-forecasting-data-format.html)  | 
| 其他數值欄 | 否 | 中間、往回和未來填入 | 無預設值 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/sagemaker/latest/dg/timeseries-forecasting-data-format.html)  | 

**注意**  
對於目標欄與其他數字欄，`mean`、`median`、`min` 與 `max` 是根據遺失之前的 64 個最新資料項目的滾動時段進行計算。