

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

# 使用 API 建立用於時間序列預測的 AutoML 任務
<a name="autopilot-create-experiment-timeseries-forecasting"></a>

機器學習的預測是指根據歷史資料與模式預測未來結果或趨勢的過程。透過分析過去的時間序列資料並識別基礎模式，機器學習演算法可以做出預測，並為未來行為提供有價值的洞察。在預測中，目標是開發能夠隨時間精確擷取輸入變數與目標變數之間關係的模型。這涉及檢查各種因素，例如趨勢、季節性及資料的其他相關模式。然後，收集的資訊會用來訓練機器學習模型。經過訓練的模型能夠透過取得新的輸入資料並應用學習到的模式與關係來產生預測。它可以為各種使用案例提供預測，例如銷售預測、股票市場趨勢、天氣預報、需求預測等等。

下列指示說明如何使用 SageMaker [API Reference](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html) 建立 Amazon SageMaker Autopilot 任務，做為時間序列預測問題類型的試驗。

**注意**  
文字和影像分類、時間序列預測以及大型語言模型的微調等任務，僅能透過 [AutoML REST API](autopilot-reference.md) 第 2 版獨家取得。如果您選擇的語言是 Python，您可以直接參考 [適用於 Python (Boto3) 的 AWS SDK](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html) 或 Amazon SageMaker Python SDK 的 [AutoMLV2 物件](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2)。  
偏好使用者介面便利性的使用者，可以使用 [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) 存取預先訓練的模型、生成式 AI 基礎模型，或建立針對特定文字、影像分類、預測需求或生成式 AI 量身打造的自訂模型。

您可以透過以 Amazon SageMaker Autopilot 或 AWS CLI支援的任何語言呼叫 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) API，以程式設計方式建立 Autopilot 時間序列預測實驗。

有關此 API 作業如何以您選擇的語言轉換為函式的詳細資訊，請參閱 `CreateAutoMLJobV2` 的[另請參閱](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso)一節並選擇 SDK。例如，對於 Python 使用者，請參閱 適用於 Python (Boto3) 的 AWS SDK中 `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` 的完整請求語法。

Autopilot 會使用您的目標時間序列來訓練多個模型候選模型，然後為指定的目標指標選擇最佳預測模型。當您的候選模型經過訓練後，您可以在 `[BestCandidate](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html#sagemaker-Type-CandidateProperties-CandidateMetrics)` 的 `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` 反應中找到最佳候選指標。

下列各節會針對用於時間序列預測的 `CreateAutoMLJobV2` API，定義必要與選擇性的輸入請求參數。

**注意**  
請參閱筆記本 [Amazon SageMaker Autopilot 進行時間序列預測](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/autopilot_time_series.ipynb)，以取得實用的實作時間序列預測範例。在此筆記本，您可以使用 Amazon SageMaker Autopilot 訓練時間序列模型並使用經過訓練的模型產生預測。筆記本提供如何在 Amazon S3 擷取現成的表格歷史資料集的指示。

## 先決條件
<a name="autopilot-timeseries-forecasting-prerequisites"></a>

使用 Autopilot 在 SageMaker AI 建立時間序列預測實驗之前，請務必：
+ 準備您的時間序列資料集。資料集準備包括從各種來源收集相關資料，對其進行清理清理和過濾以消除雜訊與不一致性，並將其組織成結構化格式。請參閱 [時間序列資料集格式與遺失值填入方法](timeseries-forecasting-data-format.md) 以深入了解 Autopilot 的時間序列格式要求。或者，您可以使用您選擇的國家/地區的公共假日行事曆來補充資料集，以擷取相關的模式。如需假日行事曆的詳細資訊，請參閱[國定假日行事曆](autopilot-timeseries-forecasting-holiday-calendars.md)。
**注意**  
建議您為要預測的每個未來 1 個資料點提供至少 3-5 個歷史資料點。例如，若要根據每日資料預測 7 天 (1 週期間)，請訓練您的模型至少 21-35 天的歷史資料。請務必提供足夠的資料來擷取季節性和週期性模式。
+ 將您的時間序列資料放入 Amazon S3 儲存貯體。
+ 授予對 Amazon S3 儲存貯體的完整存取權，該儲存貯體包含用於執行實驗的 SageMaker AI 執行角色的輸入資料。完成此操作後，您可以透過 Autopilot API 請求使用此執行角色的 ARN。
  + 如需有關擷取 SageMaker AI 執行角色的資訊，請參閱[取得您的執行角色](sagemaker-roles.md#sagemaker-roles-get-execution-role)。
  + 如需授予 SageMaker AI 執行角色存取 Amazon S3 中一或多個特定儲存貯體的相關資訊，請參閱[建立執行角色](sagemaker-roles.md#sagemaker-roles-create-execution-role)中的*新增額外的 Amazon S3 權限給 SageMaker AI 執行角色*。

## 必要參數
<a name="timeseries-forecasting-api-required-params"></a>

當呼叫 `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` 建立用於時間序列預測的 Autopilot 實驗時，您必須提供下列值：
+ 用於指定任務的名稱的 `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)`。名稱應為 `string` 類型，最小長度為 1 個位元，最大長度為 32 位元。
+ `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` 中至少有一個 `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)`，其中您指定包含您的資料的 Amazon S3 儲存貯體的名稱。或者，您可以指定內容 (CSV 或 Parquet 檔案) 和壓縮 (GZip) 類型。
+ 類型為 `[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)` 的 `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`，用於設定時間序列預測作業的設置。尤其是，您必須指定：
  + 預測的**頻率**，指的是預測所需的精細程度 (每小時、每日、每月等等)。

    有效間隔為整數，後跟 `Y` (年)、`M` (月)、`W` (週)、`D` (天)、`H` (小時) 與 `min` (分鐘)。例如，`1D` 表示每天，`15min` 表示每隔 15 分鐘。頻率的值不得與下一個較大頻率重疊使用。例如，您必須使用的頻率 `1H` 而不是 `60min`。

    每個頻率的有效值如下：
    + 分鐘–1-59
    + 小時–1-23
    + 天–1-6
    + 週–1-4
    + 月–1-11
    + 年–1
  + 預測中預測的**總時程**，指的是模型預測的時間步長數。預測期間也稱為預測長度。預測總時程上限是資料集中 500 個時間步長或 1/4 的較小者。
  + [TimeSeriesConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesConfig.html)，您可以在其中定義資料集的結構描述，藉由指定下欄位項目，將欄位標題對應至預測：
    + `TargetAttributeName`：包含要預測之目標欄位歷史資料的欄位。
    + `TimestampAttributeName`：包含記錄指定項目的目標值的時間點的欄位。
    + `ItemIdentifierAttributeName`：包含您要預測其目標值之項目識別碼的資料欄位。

  下列是這些請求參數的範例。在此範例中，您要設定 20 天內特定項目的預期需求數量或需求程度的每日預測。

  ```
  "AutoMLProblemTypeConfig": { 
          "ForecastFrequency": "D",
          "ForecastHorizon": 20,
          "TimeSeriesConfig": {
              "TargetAttributeName": "demand",
              "TimestampAttributeName": "timestamp",
              "ItemIdentifierAttributeName": "item_id"
          },
  ```
+ `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` 指定用於存放 AutoML 任務成品的 Amazon S3 輸出路徑。
+ `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` 指定用於存取您的資料的角色的 ARN。您可以透過已授予資料存取權限的執行角色的 ARN。

所有其他參數都是選用參數。例如，您可以設定特定的預測分位數、為資料集中缺少的值選擇填入方法，或定義如何彙總不符合預測頻率的資料。若要了解如何設定這些其他參數，請參閱[選用的參數](#timeseries-forecasting-api-optional-params)。

## 選用的參數
<a name="timeseries-forecasting-api-optional-params"></a>

下列各節提供了一些可傳遞給時間序列預測 AutoML 任務的可選參數的詳細資訊。

### 如何指定演算法
<a name="timeseries-forecasting-algorithms-selection"></a>

預設情況下，您的 Autopilot 任務會在資料集上訓練預先定義的演算法清單。不過，您可以提供預設演算法選取的子集。

對於時間序列預測，您必須選擇 `[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)` 作為 `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` 的類型。

然後，您可以在 [CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html) 的 `AlgorithmsConfig` 屬性指定選定的 `AutoMLAlgorithms` 陣列。

以下是在其 `AutoMLAlgorithms` 欄位中僅列出三個演算法 `AlgorithmsConfig` ("cnn-qr"、"prophet"、"arima") 的屬性範例。

```
{
   "[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)": {
        "[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)": {
          "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html#sagemaker-Type-CandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html)":["cnn-qr", "prophet", "arima"]}
            ]
         },
       },
     },
  }
```

如需時間序列預測的可用演算法清單，請參閱 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms)。如需每個演算法的詳細資訊，請參閱[演算法支援時間序列預測](timeseries-forecasting-algorithms.md)。

### 如何指定自訂分位數
<a name="timeseries-forecasting-custom-quantiles"></a>

Autopilot 使用您的目標時間序列訓練 6 個候選模型，然後使用堆疊整合方法組合這些模型，為指定的目標指標建立最佳預測模型。每個 Autopilot 預測模型都會透過在 P1 和 P99 之間的分位數產生預測來產生機率預測。這些分位數用於解釋預測的不確定性。依預設，會針對 0.1 (`p10`)、0.5 (`p50`) 與 0.9 (`p90`) 產生預測。您可以選擇指定自己的分位數。

在 Autopilot 中，您可以在 [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html) 的 `ForecastQuantiles` 屬性指定最多 5 個從 0.01 (`p1`) 到 0.99 (`p99`) 的預測分位數，增量為 0.01 或更高。

在下列範例中，您將針對特定項目在 20 天內的預期數量或需求程度設定每日第 10、25、50、75 及第 90 個百分位數預測。

```
"AutoMLProblemTypeConfig": { 
        "ForecastFrequency": "D",
        "ForecastHorizon": 20,
        "ForecastQuantiles": ["p10", "p25", "p50", "p75", "p90"],
        "TimeSeriesConfig": {
            "TargetAttributeName": "demand",
            "TimestampAttributeName": "timestamp",
            "ItemIdentifierAttributeName": "item_id"
        },
```

### 如何彙總不同預測頻率的資料
<a name="timeseries-forecasting-aggregation"></a>

若要建立預測模型 (也稱為實驗中的最佳模型候選模型)，您必須指定預測頻率。預測頻率決定預測中預測的頻率。例如，每月銷售預測。Autopilot 的最佳模型可以針對高於資料記錄頻率的資料頻率產生預測。

在訓練期間，Autopilot 會彙總任何與您指定的預測頻率不符的任何資料。例如，您可能有一些每日資料，但指定每週預測頻率。Autopilot 會根據每日資料所屬的週來調整每日資料。然後，Autopilot 將其合併為每週的單一記錄。

在彙總期間，預設的轉換方法是將資料加總。您可以在建立 AutoML 任務時在 [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html) 的 `Transformations` 屬性設定彙總。支援的彙總方法為 `sum` (預設)、`avg`、`first`、`min`、`max`。僅目標資料欄支援彙總。

在下列範例中，您將彙總設定為計算個別促銷預測的平均值，以提供最終的彙總預測值。

```
"Transformations": {
            "Aggregation": {
                "promo": "avg"
            }
        }
```

### 如何處理輸入資料集中的遺失值
<a name="timeseries-forecasting-fill-missing-values"></a>

Autopilot 提供了多種填入方法來處理時間序欄資料集的目標與其他數字欄位缺少的值。如需支援的填入方法清單及其可用填入邏輯的資訊，請參閱[處理遺失值](timeseries-forecasting-data-format.md#timeseries-missing-values)。

建立 AutoML 任務時，您可以在 [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html) 的 `Transformations` 屬性設定填入策略。

設定填入方式，需要提供機碼值組：
+ 機碼是您要為其指定填入方法之欄位的名稱。
+ 與機碼相關聯的值是定義該欄位填入策略的物件。

您可以為單一欄位指定多種填入方法。

若要為填入方法設定特定值，您應該將填入參數設定為所需的填入方法值 (例如 `"backfill" : "value"`)，並在後綴為 “\$1value” 的其他參數定義實際填入值。例如，若要設定 `backfill` 為的值 `2`，您必須包含兩個參數：`"backfill": "value"` 與 `"backfill_value":"2"`。

在下欄範例中，您為不完整資料欄 “價格” 指定填入策略，如下所示：項目第一個資料點與最後一個資料點之間的所有遺失值都會設定為 `0`，之後所有遺失值均使用該值填入 `2` 直到資料集的結束日期。

```
"Transformations": {
            "Filling": {
                "price": {
                        "middlefill" : "zero",
                        "backfill" : "value",
                        "backfill_value": "2"
                }
            }
        }
```

### 如何指定目標指標
<a name="timeseries-forecasting-set-objective-metric"></a>

Autopilot 會產生準確度指標來評估候選模型，並協助您選擇要使用哪個模型來產生預測。當您執行時間序列預測實驗時，您可以選擇 AutoML 讓 Autopilot 為您最佳化預測器，也可以手動選擇預測器的演算法。

根據預設，Autopilot 使用 Average Weighted Quantile Loss (平均加權分位數損失)。但是，您可以在建立 AutoML 任務時在 [AutoMLJobObjective](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html) 的 `MetricName` 屬性設定目標指標。

如需可用演算法的清單，請參閱[演算法支援時間序列預測](timeseries-forecasting-algorithms.md)。

### 如何將國定假日資訊納入您的資料集
<a name="timeseries-forecasting-add-holiday-calendar"></a>

在 Autopilot，您可以將特徵設計的國家假日資訊資料集合到您的時間序列中。Autopilot 為 250 多個國家/地區的假日行事曆提供本地支援。選擇國家/地區後，Autopilot 會在訓練期間，將該國家/地區的假日行事曆套用至您的資料集的每個項目。這可讓模型識別與特定假日相關聯的模式。

您可以在建立 AutoML 任務時，透過將 [HolidayConfigAttributes](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HolidayConfigAttributes.html) 物件傳遞至 [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html) 的 `HolidayConfig` 屬性，來啟用假日特徵化。`HolidayConfigAttributes` 物件包含兩個字母 `CountryCode` 屬性，該屬性決定用於擴充時間序列資料集的公共國定假日行事曆的國家/地區。

如需支援的行事曆清單及其對應的國家/地區代碼，請參閱[國家/地區代碼](autopilot-timeseries-forecasting-holiday-calendars.md#holiday-country-codes)。

### 如何啟用自動部署
<a name="timeseries-forecasting-auto-model-deployment"></a>

Autopilot 功能可讓您將預測模型自動部署到端點。若要針對 AutoML 任務的最佳模型候選項啟用自動部署，請在 AutoML 任務請求中包含 `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)`。這可讓您將最佳模型部署到 SageMaker AI 端點。以下是可用的自訂組態。
+ 若要讓 Autopilot 產生端點名稱，請將 `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` 設定為 `True`。
+ 若要為端點提供您自己的名稱，請設定 `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`。

### 如何設定 AutoML 在大型資料集的 EMR Serverless 上啟動遠端任務
<a name="autopilot-set-emr-serverless-api-forecasting"></a>

您可以設定 AutoML 任務 V2，以便在需要額外的運算資源來處理大型資料集時，在 Amazon EMR Serverless 上自動啟動遠端任務。透過在需要時無縫轉換為 EMR Serverless，AutoML 任務可以處理原本會超過最初佈建資源的資料集，而無需您進行任何手動介入。EMR Serverless 適用於表格式和時間序列問題類型。我們建議為大於 30 GB 的時間序列資料集設定此選項。

若要允許 AutoML 任務 V2 自動轉換為適用於大型資料集的 EMR Serverless，您需要將包含 `ExecutionRoleARN` 欄位的 `EmrServerlessComputeConfig` 物件提供給 AutoML 任務 V2 輸入請求的 `AutoMLComputeConfig`。

`ExecutionRoleARN` 是 IAM 角色的 ARN，授予 AutoML 任務 V2 執行 EMR Serverless 任務所需的許可。

此角色應具有下列信任關係：

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "emr-serverless.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

並授予許可給：
+ 建立、列出和更新 EMR Serverless 應用程式。
+ 在 EMR Serverless 應用程式上啟動、列出、取得或取消任務執行。
+ 標記 EMR Serverless 資源。
+ 將 IAM 角色傳遞至 EMR Serverless 服務以進行執行。

  透過授予 `iam:PassRole` 許可，AutoML 任務 V2 可以暫時擔任該 `EMRServerlessRuntimeRole-*` 角色並將其傳遞給 EMR Serverless 服務。這些是 EMR Serverless 任務執行環境用來存取執行時間所需 AWS 其他服務和資源的 IAM 角色，例如 Amazon S3 用於資料存取、CloudWatch 用於記錄、存取 AWS Glue 資料目錄或根據您的工作負載需求的其他 服務。

  如需此角色許可的詳細資訊，請參閱 [Amazon EMR Serverless 的任務執行時期角色](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/security-iam-runtime-role.html)。

所提供 JSON 文件中定義的 IAM 政策會授予這些許可：

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
           "Sid": "EMRServerlessCreateApplicationOperation",
           "Effect": "Allow",
           "Action": "emr-serverless:CreateApplication",
           "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessListApplicationOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:ListApplications",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessApplicationOperations",
            "Effect": "Allow",
            "Action": [
                "emr-serverless:UpdateApplication",
                "emr-serverless:GetApplication"
            ],
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessStartJobRunOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:StartJobRun",
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessListJobRunOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:ListJobRuns",
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessJobRunOperations",
            "Effect": "Allow",
            "Action": [
                "emr-serverless:GetJobRun",
                "emr-serverless:CancelJobRun"
            ],
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*/jobruns/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessTagResourceOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:TagResource",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "IAMPassOperationForEMRServerless",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/EMRServerlessRuntimeRole-*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "emr-serverless.amazonaws.com",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
         }
    ]
}
```

------

# 時間序列資料集格式與遺失值填入方法
<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 個最新資料項目的滾動時段進行計算。

# 國定假日行事曆
<a name="autopilot-timeseries-forecasting-holiday-calendars"></a>

Autopilot 支援國定假日資訊的特徵工程資料集，可存取超過 250 個國家/地區的假日行事曆。假日行事曆功能在零售網域中特別有幫助，其中國定假期可能會顯著影響需求。下一節列出可用來存取每個支援國家/地區的假日行事曆的國家/地區代碼。

若要了解如何將行事曆新增至您的資料集，請參閱[如何將國定假日資訊納入您的資料集](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-add-holiday-calendar)。

## 國家/地區代碼
<a name="holiday-country-codes"></a>

Autopilot 提供下列國家/地區之國定假日假行事曆的原生支援。使用 API 指定國家/地區時，請使用**國家/地區代碼**。


| Country | 國家代碼 | 
| --- | --- | 
|   阿富汗   |   AF   | 
|   奧蘭群島   |   AX   | 
|   阿爾巴尼亞   |   AL   | 
|   阿爾及利亞   |   DZ   | 
|   美屬薩摩亞   |   AS   | 
|   安道爾   |   AD   | 
|   安哥拉   |   AO   | 
|   安圭拉   |   AI   | 
|   南極   |   AQ   | 
|   安地卡及巴布達   |   AG   | 
|   阿根廷   |   AR   | 
|   亞美尼亞   |   AM   | 
|   阿魯巴島   |   AW   | 
|   澳洲   |   AU   | 
|   奧地利   |   AT   | 
|   亞塞拜然   |   AZ   | 
|   巴哈馬   |   BS   | 
|   巴林   |   BH   | 
|   孟加拉   |   BD   | 
|   巴貝多   |   BB   | 
|   白俄羅斯   |   BY   | 
|   比利時   |   BE   | 
|   貝里斯   |   BZ   | 
|   貝南   |   BJ   | 
|   百慕達   |   BM   | 
|   不丹   |   BT   | 
|   玻利維亞   |   BO   | 
|   波士尼亞與赫塞哥維納   |   BA   | 
|   波札那   |   BW   | 
|   布威島   |   BV   | 
|   巴西   |   BR   | 
|   英屬印度洋領地   |   IO   | 
|   英屬維京群島   |   VG   | 
|   汶萊和平之國   |   BN   | 
|   保加利亞   |   BG   | 
|   布吉納法索   |   BF   | 
|   蒲隆地   |   BI   | 
|   柬埔寨   |   KH   | 
|   喀麥隆   |   CM   | 
|   加拿大   |   CA   | 
|   維德角   |   CV   | 
|   荷蘭加勒比區   |   BQ   | 
|   開曼群島   |   KY   | 
|   中非共和國   |   CF   | 
|   查德   |   TD   | 
|   智利   |   CL   | 
|   中國   |   CN   | 
|   聖誕島   |   CX   | 
|   可可斯群島   |   CC   | 
|   哥倫比亞   |   CO   | 
|   葛摩   |   KM   | 
|   庫克群島   |   CK   | 
|   哥斯大黎加   |   CR   | 
|   克羅埃西亞   |   HR   | 
|   古巴   |   CU   | 
|   庫拉索   |   CW   | 
|   賽普勒斯   |   CY   | 
|   捷克   |   CZ   | 
|   剛果民主共和國   |   CD   | 
|   丹麥   |   DK   | 
|   吉布地   |   DJ   | 
|   多米尼克   |   DM   | 
|   多明尼加共和國   |   DO   | 
|   厄瓜多   |   EC   | 
|   埃及   |   EG   | 
|   薩爾瓦多   |   SV   | 
|   赤道幾內亞   |   GQ   | 
|   厄利垂亞   |   ER   | 
|   愛沙尼亞   |   EE   | 
|   史瓦帝尼   |   SZ   | 
|   衣索比亞   |   ET   | 
|   福克蘭群島   |   FK   | 
|   法羅群島   |   FO   | 
|   斐濟   |   FJ   | 
|   芬蘭   |   FI   | 
|   法國   |   FR   | 
|   法屬圭亞那   |   GF   | 
|   法屬玻里尼西亞   |   PF   | 
|   法屬南部領地   |   TF   | 
|   加彭   |   GA   | 
|   甘比亞   |   GM   | 
|   喬治亞   |   GE   | 
|   德國   |   DE   | 
|   迦納   |   GH   | 
|   直布羅陀   |   GI   | 
|   希臘   |   GR   | 
|   格陵蘭   |   GL   | 
|   格瑞那達   |   GD   | 
|   瓜地洛普   |   GP   | 
|   關島   |   GU   | 
|   瓜地馬拉   |   GT   | 
|   根西島   |   GG   | 
|   幾內亞   |   GN   | 
|   幾內亞比索   |   GW   | 
|   蓋亞納   |   GY   | 
|   海地   |   HT   | 
|   赫德島和麥克唐納群島   |   HM   | 
|   宏都拉斯   |   HN   | 
|   香港   |   HK   | 
|   匈牙利   |   HU   | 
|   冰島   |   IS   | 
|   印度   |   IN   | 
|   印尼   |   ID   | 
|   伊朗   |   IR   | 
|   伊拉克   |   IQ   | 
|   愛爾蘭   |   IE   | 
|   曼島   |   IM   | 
|   以色列   |   IL   | 
|   義大利   |   IT   | 
|   象牙海岸   |   CI   | 
|   牙買加   |   JM   | 
|   日本   |   JP   | 
|   澤西島   |   JE   | 
|   約旦   |   JO   | 
|   哈薩克   |   KZ   | 
|   肯亞   |   KE   | 
|   吉里巴斯   |   KI   | 
|   科索沃   |   XK   | 
|   科威特   |   KW   | 
|   吉爾吉斯   |   KG   | 
|   寮國   |   LA   | 
|   拉脫維亞   |   LV   | 
|   黎巴嫩   |   LB   | 
|   賴索托   |   LS   | 
|   賴比瑞亞   |   LR   | 
|   利比亞   |   LY   | 
|   列支敦斯登   |   LI   | 
|   立陶宛   |   LT   | 
|   盧森堡   |   LU   | 
|   澳門   |   MO   | 
|   馬達加斯加   |   MG   | 
|   馬拉威   |   MW   | 
|   馬來西亞   |   MY   | 
|   馬爾地夫   |   MV   | 
|   馬利   |   ML   | 
|   馬爾他   |   MT   | 
|   馬紹爾群島   |   MH   | 
|   馬丁尼克   |   MQ   | 
|   茅利塔尼亞   |   MR   | 
|   模里西斯   |   MU   | 
|   馬約特島   |   YT   | 
|   墨西哥   |   MX   | 
|   密克羅尼西亞   |   FM   | 
|   摩爾多瓦   |   MD   | 
|   摩納哥   |   MC   | 
|   蒙古   |   MN   | 
|   蒙特內哥羅   |   ME   | 
|   蒙特色拉特島   |   MS   | 
|   摩洛哥   |   MA   | 
|   莫三比克   |   MZ   | 
|   緬甸   |   MM   | 
|   納米比亞   |   NA   | 
|   諾魯   |   NR   | 
|   尼泊爾   |   NP   | 
|   荷蘭   |   NL   | 
|   新喀里多尼亞   |   NC   | 
|   紐西蘭   |   NZ   | 
|   尼加拉瓜   |   NI   | 
|   尼日   |   NE   | 
|   奈及利亞   |   NG   | 
|   紐埃島   |   NU   | 
|   諾福克島   |   NF   | 
|   北韓   |   KP   | 
|   北馬其頓   |   MK   | 
|   北馬里亞納群島   |   MP   | 
|   挪威   |   NO   | 
|   阿曼   |   OM   | 
|   巴基斯坦   |   PK   | 
|   帛琉   |   PW   | 
|   巴勒斯坦   |   PS   | 
|   巴拿馬   |   PA   | 
|   巴布亞紐幾內亞   |   PG   | 
|   巴拉圭   |   PY   | 
|   秘魯   |   PE   | 
|   菲律賓   |   PH   | 
|   皮特肯群島   |   PN   | 
|   波蘭   |   PL   | 
|   葡萄牙   |   PT   | 
|   波多黎各   |   PR   | 
|   卡達   |   QA   | 
|   剛果共和國   |   CG   | 
|   留尼旺   |   RE   | 
|   羅馬尼亞   |   RO   | 
|   俄羅斯聯邦   |   RU   | 
|   盧安達   |   RW   | 
|   聖巴泰勒米島   |   BL   | 
|   “聖赫勒拿島、亞森欣島和特里斯坦達庫尼亞島”   |   SH   | 
|   聖克里斯多福及尼維斯   |   KN   | 
|   聖露西亞   |   LC   | 
|   法屬聖馬丁   |   MF   | 
|   聖皮埃赫及密克隆   |   PM   | 
|   聖文森及格瑞那丁   |   VC   | 
|   薩摩亞   |   WS   | 
|   聖馬利諾   |   SM   | 
|   聖多美普林西比   |   ST   | 
|   沙烏地阿拉伯   |   SA   | 
|   塞內加爾   |   SN   | 
|   塞爾維亞   |   RS   | 
|   賽席爾   |   SC   | 
|   獅子山   |   SL   | 
|   新加坡   |   SG   | 
|   荷屬聖馬丁   |   SX   | 
|   斯洛伐克   |   SK   | 
|   斯洛維尼亞   |   SI   | 
|   索羅門群島   |   SB   | 
|   索馬利亞   |   SO   | 
|   南非   |   ZA   | 
|   南喬治亞和南桑威奇群島   |   GS   | 
|   南韓   |   KR   | 
|   南蘇丹   |   SS   | 
|   西班牙   |   ES   | 
|   斯里蘭卡   |   LK   | 
|   蘇丹   |   SD   | 
|   蘇利南   |   SR   | 
|   斯瓦巴和揚馬延   |   SJ   | 
|   瑞典   |   SE   | 
|   瑞士   |   CH   | 
|   敘利亞阿拉伯共和國   |   SY   | 
|   臺灣   |   TW   | 
|   塔吉克   |   TJ   | 
|   坦尚尼亞   |   TZ   | 
|   泰國   |   TH   | 
|   東帝汶   |   TL   | 
|   多哥   |   TG   | 
|   托克勞   |   TK   | 
|   東加   |   TO   | 
|   千里達及托巴哥   |   TT   | 
|   突尼西亞   |   TN   | 
|   土耳其   |   TR   | 
|   土庫曼   |   TM   | 
|   英屬土克斯及開科斯群島   |   TC   | 
|   吐瓦魯   |   TV   | 
|   烏干達   |   UG   | 
|   烏克蘭   |   UA   | 
|   阿拉伯聯合大公國   |   AE   | 
|   英國   |   UK   | 
|   聯合國   |   UN   | 
|   美國   |   US   | 
|   美國本土外小島嶼   |   UM   | 
|   美屬維京群島   |   VI   | 
|   烏拉圭   |   UY   | 
|   烏茲別克   |   UZ   | 
|   萬那杜   |   VU   | 
|   梵蒂岡   |   VA   | 
|   委內瑞拉   |   VE   | 
|   越南   |   VN   | 
|   瓦利斯和富圖那   |   WF   | 
|   西撒哈拉   |   EH   | 
|   葉門   |   YE   | 
|   尚比亞   |   ZM   | 
|   辛巴威   |   ZW   | 

# 目標指標
<a name="timeseries-objective-metric"></a>

Autopilot 會產生準確度指標來評估候選模型，並協助您選擇要使用哪個模型來產生預測。您可以讓 Autopilot 為您最佳化預測器，也可以手動選擇預測器的演算法。根據預設，Autopilot 使用 Average Weighted Quantile Loss (平均加權分位數損失)。

下列清單包含目前可用來測量時間序列預測模型效能的測量結果名稱。

**`RMSE`**  
均方根誤差 (RMSE) – 測量預測值與實際值之間的平方差異的平方根，並對所有值進行平均。這是指出是否存在較大模型錯誤與異常值的重要指標。其數值範圍從零 (0) 到無限大，數字越小，表示模型越適合資料。RMSE 取決於規模，不應用於比較不同大小的資料集。

**`wQL`**  
加權分位數損失 (WQL)–透過測量預測與實際 P10、P50 和 P90 分位數之間的加權絕對差異來評估預測的準確性，數值越低表示效能越好。

**`Average wQL (default)`**  
平均加權分位數損失 (平均 WQL)–透過平均 P10、P50 和 P90 分位數的準確度來評估預測。數值越低表示模型越準確。

**`MASE`**  
平均絕對比例誤差 (MASE) – 透過簡單基準預測方法的平均絕對誤差標準化的預測的平均絕對誤差。值越低表示模型越準確，其中 MASE < 1 估計值比基準更好，MASE > 1 估計值比基準較差。

**`MAPE`**  
平均絕對誤差百分比 (MAPE) – 所有時間點的平均誤差百分比 (平均預測值與實際值的百分比差異)。數值越低表示模型越準確，其中 MAPE = 0 是沒有錯誤的模型。

**`WAPE`**  
加權絕對誤差百分比 (WAPE) – 絕對誤差的總和，由絕對目標的總和標準化，測量預測值與觀測值的整體偏差。數值越低表示模型越準確。

# 演算法支援時間序列預測
<a name="timeseries-forecasting-algorithms"></a>

Autopilot 可訓練以下六種內建演算法，搭配您的目標時間。然後，使用堆疊整合方法，組合這些候選模型，為指定的目標指標建立最佳預測模型。
+ **卷積神經網路 - 分位數迴歸 (CNN-QR)**–CNN-QR 是專有的機器學習算法，用於使用因果卷積神經網路 (CNN) 預測時間序列。CNN-QR 最適用於包含數百個時間序列的大型資料集。
+ **DeepAR \$1** – DeepAR \$1 是一種專有的機器學習演算法，用於使用循環神經網路 (RNN) 預測時間序列。DeepAR A\$1 最適合包含數百個特徵時間序列的大型資料集。
+ **Prophet** - [Prophet](https://facebook.github.io/prophet/) 是流行的本機 Bayesian 結構時間序列模型，其中非線性趨勢適合每年、每週和及每日季節性的新增模型。Autopilot Prophet 演算法使用 Prophet 的 Python 實作的 [Prophet 類別](https://facebook.github.io/prophet/docs/quick_start.html#python-ap)。它最適合具有強烈季節性影響的時間序列和多個季節的歷史資料。
+ **非參數時間序列 (NPTS)** – NPTS 專有演算法是可擴展的機率基準預測器。它透過對過去的觀察進行取樣來預測特定時間序列的未來值分佈。NPTS 在處理稀疏或間歇時間序列時特別有用。
+ **整合移動自回歸模型 (ARIMA)** – 是常用的時間序列預測統計演算法。此演算法擷取輸入資料集內的標準時間結構 (規律的時間組織)。它對於時間序列少於 100 個的簡單資料集特別有用。
+ **指數平滑法 (ETS)** – 是常用的時間序列預測統計演算法。該演算法對於具有 100 個時間序列以下的簡單資料集以及具有季節性模式的資料集特別有用。ETS 計算時間序列資料集中所有觀測值的加權平均值作為其預測，權重隨著時間的推移呈指數下降。

# 預測已部署的 Autopilot 模型
<a name="timeseries-forecasting-deploy-models"></a>

使用 AutoML API 訓練模型後，您可以部署模型以進行即時或批次式預測。

AutoML API 會為您的時間序列資料訓練多個模型候選，並根據您的目標指標選擇最佳預測模型。當您的候選模型經過訓練後，您就可以在 [BestCandidate](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-CandidateName) 的回應 [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) 中找到最佳候選者。

若要使用此最佳效能模型取得預測，您可以設定端點以互動方式取得預測，或使用批次預測對批次觀察進行預測。

**考量事項**
+ 提供用於預測的輸入資料時，資料結構描述應與用於訓練模型的結構描述保持相同，包括欄位數、欄位標題以及資料類型。您可以預測相同或不同時間戳記範圍內的現有或新項目 ID，以預測不同的時間段。
+ 預測模型預測訓練時輸入請求中指定的未來預測範圍點，即從*目標結束日期*到*目標結束日期 \$1 預測範圍*。若要使用模型來預測特定日期，您應該提供與原始輸入資料相同格式的資料，並延伸到指定的*目標結束日期*。在這個案例中，模型會從新的目標結束日期開始預測。

  例如，如果您的資料集包含從 1 月至 6 月的每月資料，且預測範圍時程為 2，則模型會預測未來 2 個月的目標值，即 7 月和 8 月。如果在八月，您想要預測接下來的 2 個月，這次您的輸入資料應為 1 月至 8 月，且模型會預測接下來的 2 個月 (9 月、10 月)。
+ 預測未來資料點時，沒有設定要提供的歷史資料量下限。包含足夠的資料來擷取時間序列中的季節性和週期性模式。

**Topics**
+ [即時預測](timeseries-forecasting-realtime.md)
+ [批次預測](timeseries-forecasting-batch.md)

# 即時預測
<a name="timeseries-forecasting-realtime"></a>

當您需要即時產生預測時，即時預測非常有用，例如對於需要立即回應的應用程式或對單一資料點進行預測時。

透過將 AutoML 模型部署為即時端點，您可以隨需產生預測，並將接收新資料和取得預測之間的延遲降至最低。這使得即時預測非常適合需要立即、個人化或事件驅動預測功能的應用程式。

對於即時預測，資料集應該是輸入資料集的子集。即時端點的輸入資料大小約為 6MB，回應逾時限制為 60 秒。我們建議您一次攜帶一個或幾件項目。

您可以使用 SageMaker APIs 擷取 AutoML 任務的最佳候選項目，然後使用該候選項目建立 SageMaker AI 端點。

或者，您可以在建立 Autopilot 實驗時選擇自動部署選項。若要取得有關設定自動部署模型的資訊，請參閱[如何啟用自動部署](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-auto-model-deployment)。

**若要使用最佳模型候選項目建立 SageMaker AI 端點：**

1. 

**擷取 AutoML 任務的詳細資訊。**

   下列 AWS CLI 命令範例使用 [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) API 來取得 AutoML 任務的詳細資訊，包括最佳模型候選項目的相關資訊。

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. 

**從 [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers) 擷取容器定義，以獲得最佳模型候選項目。**

   容器定義是用於託管訓練 SageMaker AI 模型以進行預測的容器化環境。

   ```
   BEST_CANDIDATE=$(aws sagemaker describe-auto-ml-job-v2 \
     --auto-ml-job-name job-name 
     --region region \
     --query 'BestCandidate.InferenceContainers[0]' \
     --output json
   ```

   此命令會擷取最佳模型候選項目的容器定義，並將其存放在 `BEST_CANDIDATE` 變數中。

1. 

**使用最佳候選容器定義建立 SageMaker AI 模型。**

   使用上一個步驟中的容器定義，利用 [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html) API 建立一個 SageMaker AI 模型。

   ```
   aws sagemaker create-model \
               --model-name 'your-candidate-name>' \
               --primary-container "$BEST_CANDIDATE"
               --execution-role-arn 'execution-role-arn>' \
               --region 'region>
   ```

   `--execution-role-arn` 參數指定使用模型進行推論時，SageMaker AI 擔任的 IAM 角色。如需此角色所需許可的詳細資訊，請參閱 [CreateModel API：執行角色許可](https://docs.aws.amazon.com/)。

1. 

**使用模型建立 SageMaker AI 端點組態。**

   下列 AWS CLI 命令使用 [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html) API 來建立端點組態。

   ```
   aws sagemaker create-endpoint-config \
     --production-variants file://production-variants.json \
     --region 'region'
   ```

   `production-variants.json` 檔案包含模型組態的位置，包括模型名稱和執行個體類型。
**注意**  
建議使用 [m5.12xlarge](https://aws.amazon.com/ec2/instance-types/m5/) 執行個體進行即時預測。

   ```
   [
       {
         "VariantName": "variant-name",
         "ModelName": "model-name",
         "InitialInstanceCount": 1,
         "InstanceType": "m5.12xlarge"
       }
     ]
   }
   ```

1. 

**使用端點組態建立 SageMaker AI 端點。**

   下列 AWS CLI 範例使用 [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html) API 來建立端點。

   ```
   aws sagemaker create-endpoint \
               --endpoint-name 'endpoint-name>' \
               --endpoint-config-name 'endpoint-config-name' \
               --region 'region'
   ```

   使用 [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html) API 來檢查即時推論端點部署的進度。請參閱下列 AWS CLI 命令做為範例。

   ```
   aws sagemaker describe-endpoint \
               --endpoint-name 'endpoint-name' \
               --region 'region'
   ```

   `EndpointStatus`變更為後`InService`，端點即可用於即時推論。

1. 

**叫用 SageMaker AI 端點進行預測。**

   ```
   aws sagemaker invoke-endpoint \
               --endpoint-name 'endpoint-name' \ 
               --region 'region' \
               --body file://input-data-in-bytes.json \
               --content-type 'application/json' outfile
   ```

   其中 `input-data-in-bytes.json` 檔案包含預測的輸入資料。

# 批次預測
<a name="timeseries-forecasting-batch"></a>

批次預測 (也稱為離線推論) 會根據一批觀察產生模型預測。對於大型資料集來說，或者如果您不需要立即回應模型預測請求，批次推論是不錯的選擇。

相反地，線上推論 (即時推論) 可即時產生預測。

您可以使用 SageMaker APIs 擷取 AutoML 任務的最佳候選項目，然後使用該候選項目提交一批輸入資料以進行推論。

1. 

**擷取 AutoML 任務的詳細資訊。**

   下列 AWS CLI 命令範例使用 [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) API 來取得 AutoML 任務的詳細資訊，包括最佳模型候選項目的相關資訊。

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. 

**從 [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers) 擷取容器定義，以獲得最佳模型候選項目。**

   容器定義是用於託管訓練 SageMaker AI 模型以進行預測的容器化環境。

   ```
   BEST_CANDIDATE=$(aws sagemaker describe-auto-ml-job-v2 \
         --auto-ml-job-name job-name 
         --region region \
         --query 'BestCandidate.InferenceContainers[0]' \
         --output json
   ```

   此命令會擷取最佳模型候選項目的容器定義，並將其存放在 `BEST_CANDIDATE` 變數中。

1. 

**使用最佳候選容器定義建立 SageMaker AI 模型。**

   使用上一個步驟中的容器定義，利用 [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html) API 建立一個 SageMaker AI 模型。

   ```
   aws sagemaker create-model \
         --model-name 'model-name' \
         --primary-container "$BEST_CANDIDATE"
         --execution-role-arn 'execution-role-arn>' \
         --region 'region>
   ```

   `--execution-role-arn` 參數指定使用模型進行推論時，SageMaker AI 擔任的 IAM 角色。如需此角色所需許可的詳細資訊，請參閱 [CreateModel API：執行角色許可](https://docs.aws.amazon.com/)。

1. 

**建立批次轉換任務。**

   下列範例使用 [CreateTransformJob](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/create-transform-job.html) API 建立轉換任務。

   ```
   aws sagemaker create-transform-job \ 
          --transform-job-name 'transform-job-name' \
          --model-name 'model-name'\
          --transform-input file://transform-input.json \
          --transform-output file://transform-output.json \
          --transform-resources file://transform-resources.json \
          --region 'region'
   ```

   輸入、輸出和資源詳細資訊在不同的 JSON 檔案中定義：
   + `transform-input.json`:

     ```
     {
       "DataSource": {
         "S3DataSource": {
           "S3DataType": "S3Prefix",
           "S3Uri": "s3://my-input-data-bucket/path/to/input/data"
         }
       },
       "ContentType": "text/csv",
       "SplitType": "None"
     }
     ```
   + `transform-output.json`:

     ```
     {
       "S3OutputPath": "s3://my-output-bucket/path/to/output",
       "AssembleWith": "Line"
     }
     ```
   + `transform-resources.json`:
**注意**  
我們建議將 [m5.12xlarge](https://aws.amazon.com/ec2/instance-types/m5/) 執行個體用於一般用途工作負載，將 `m5.24xlarge` 執行個體用於巨量資料預測任務。

     ```
     {
       "InstanceType": "instance-type",
       "InstanceCount": 1
     }
     ```

1. 

**使用 [DescribeTransformJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeTransformJob.html) API 監控轉換任務的進度。**

   請參閱下列 AWS CLI 命令做為範例。

   ```
   aws sagemaker describe-transform-job \
         --transform-job-name 'transform-job-name' \
         --region region
   ```

1. 

**擷取批次轉換輸出。**

   任務完成後，即可在 `S3OutputPath` 中使用預測結果。

   輸出檔案名稱的格式如下：`input_data_file_name.out`。例如，如果輸入檔案是 `text_x.csv`，則輸出名稱將是 `text_x.csv.out`。

   ```
   aws s3 ls s3://my-output-bucket/path/to/output/
   ```

下列程式碼範例說明使用適用於 Python (boto3) 的 AWS SDK 和 AWS CLI 進行批次預測。

------
#### [ AWS SDK for Python (boto3) ]

 下列範例使用**適用於 Python 的AWS SDK (boto3)** 進行批次預測。

```
import sagemaker 
import boto3

session = sagemaker.session.Session()

sm_client = boto3.client('sagemaker', region_name='us-west-2')
role = 'arn:aws:iam::1234567890:role/sagemaker-execution-role'
output_path = 's3://test-auto-ml-job/output'
input_data = 's3://test-auto-ml-job/test_X.csv'

best_candidate = sm_client.describe_auto_ml_job_v2(AutoMLJobName=job_name)['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

# create model
reponse = sm_client.create_model(
    ModelName = best_candidate_name,
    ExecutionRoleArn = role,
    Containers = best_candidate_containers 
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName=f'{best_candidate_name}-transform-job',
    ModelName=model_name,
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/csv",
        'SplitType': 'None'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m5.2xlarge',
        'InstanceCount': 1,
    },
)
```

批次推論任務以下列格式傳回回應。

```
{'TransformJobArn': 'arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-transform-job',
 'ResponseMetadata': {'RequestId': '659f97fc-28c4-440b-b957-a49733f7c2f2',
  'HTTPStatusCode': 200,
  'HTTPHeaders': {'x-amzn-requestid': '659f97fc-28c4-440b-b957-a49733f7c2f2',
   'content-type': 'application/x-amz-json-1.1',
   'content-length': '96',
   'date': 'Thu, 11 Aug 2022 22:23:49 GMT'},
  'RetryAttempts': 0}}
```

------
#### [ AWS Command Line Interface (AWS CLI) ]

1. **取得最佳候選項目容器定義**。

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name 'test-automl-job' --region us-west-2
   ```

1. **建立模型**

   ```
   aws sagemaker create-model --model-name 'test-sagemaker-model'
   --containers '[{
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz",
       "Environment": {
           "AUTOML_SPARSE_ENCODE_RECORDIO_PROTOBUF": "1",
           "AUTOML_TRANSFORM_MODE": "feature-transform",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "application/x-recordio-protobuf",
           "SAGEMAKER_PROGRAM": "sagemaker_serve",
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-xgboost:1.3-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/tuning/flicdf10v2-dpp0-xgb/test-job1E9-244-7490a1c0/output/model.tar.gz",
       "Environment": {
           "MAX_CONTENT_LENGTH": "20971520",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv",
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,probabilities" 
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", 
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz", 
       "Environment": { 
           "AUTOML_TRANSFORM_MODE": "inverse-label-transform", 
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv", 
           "SAGEMAKER_INFERENCE_INPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,labels,probabilities", 
           "SAGEMAKER_PROGRAM": "sagemaker_serve", 
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code" 
       } 
   }]' \
   --execution-role-arn 'arn:aws:iam::1234567890:role/sagemaker-execution-role' \
   --region 'us-west-2'
   ```

1. **建立轉換任務**。

   ```
   aws sagemaker create-transform-job --transform-job-name 'test-tranform-job'\
    --model-name 'test-sagemaker-model'\
    --transform-input '{
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "SplitType": "None"
       }'\
   --transform-output '{
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line"
       }'\
   --transform-resources '{
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       }'\
   --region 'us-west-2'
   ```

1. **檢查轉換任務的進度**。

   ```
   aws sagemaker describe-transform-job --transform-job-name  'test-tranform-job' --region us-west-2
   ```

   以下是轉換任務的回應。

   ```
   {
       "TransformJobName": "test-tranform-job",
       "TransformJobArn": "arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-tranform-job",
       "TransformJobStatus": "InProgress",
       "ModelName": "test-model",
       "TransformInput": {
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "CompressionType": "None",
           "SplitType": "None"
       },
       "TransformOutput": {
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line",
           "KmsKeyId": ""
       },
       "TransformResources": {
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       },
       "CreationTime": 1662495635.679,
       "TransformStartTime": 1662495847.496,
       "DataProcessing": {
           "InputFilter": "$",
           "OutputFilter": "$",
           "JoinSource": "None"
       }
   }
   ```

   `TransformJobStatus` 變更為之後 `Completed`，您可以在 `S3OutputPath` 檢查推論結果。

------

# Amazon SageMaker Autopilot資料探勘筆記本
<a name="timeseries-forecasting-data-exploration-notebook"></a>

Amazon SageMaker Autopilot 會自動清除並預先處理您的資料集。為了協助使用者了解他們的資料、找出關於時間序列的模式、關係與異常狀況，Amazon SageMaker Autopilot 會以筆記本的形式產生**資料探勘**靜態報告，供使用者參考。

資料探勘筆記本是針對每個 Autopilot 任務所產生。報告存放在 Amazon S3 儲存貯體，您可以從任務輸出路徑存取報告。

您可以在 `[AutoMLJobArtifacts.DataExplorationNotebookLocation](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html#sagemaker-DescribeAutoMLJobV2-response-AutoMLJobArtifacts)` 對 `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` 的回應找到資料探勘筆記本的 Amazon S3 字首。

# Amazon SageMaker Autopilot 產生的報告
<a name="timeseries-forecasting-reports"></a>

除了資料探勘筆記本之外，Autopilot 還會為每個實驗的最佳候選模型產生各種報告。
+ 可解釋性報告提供有關模型如何進行預測的洞察。
+ 效能報告提供模型預測能力的量化評估。
+ 在對歷史資料測試模型效能後，會產生回溯測試結果報告。

## 可解釋性報告
<a name="timeseries-forecasting-explainability-report"></a>

Autopilot 可解釋性報表可協助您更了解您的資料集的屬性如何影響特定時間序列 (項目與維度組合) 與時間點的預測。Autopilot 使用稱為*影響分數*的指標來量化每個屬性的相對影響，並判斷它們是否增加或減少預測值。

例如，假設目標所為 `sales` 且有兩個相關屬性的預測案例：`price` 與 `color`。Autopilot 可能會發現該項目的顏色對某些商品的銷售影響很大，但對其他項目的影響微不足道。它也可能發現，在夏季的促銷活動對銷售有很大的影響，但在冬季促銷影響不大。

僅在以下情況下才會產生可解釋性報告：
+ 時間序欄資料集包含其他特徵欄位，或與假日行事曆相關聯。
+ 最終整合包括 CNN-QR 與 DeepAR \$1 的基本模型。

### 解釋影響分數
<a name="timeseries-forecasting-explainability-impact-scores"></a>

影響分數會衡量屬性對預測值的相對影響。例如，如果屬性 `price` 的影響分數是屬性 `store location` 的兩倍，則您可以得出結論，商品價格對預測值的影響是商店位置的兩倍。

影響分數也會提供屬性是否增加或減少預測值的相關資訊。

影響分數範圍從 -1 到 1，其中符號表示影響的方向。分數 0 表示無影響，而接近 1 或 -1 的分數表示有重大影響。

值得注意的是，影響力分數衡量的是屬性的相對影響，而不是絕對影響。因此，影響分數無法用於確定特定屬性是否可以改善模型的準確性。如果某個屬性的影響分數較低，不一定表示它對預測值的影響較低； 這表示與它對預測值的影響比預測器使用的其他屬性要小。

### 尋找可解釋性報告
<a name="timeseries-forecasting-explainability-report-location"></a>

您可以在 `[BestCandidate.CandidateProperties.CandidateArtifactLocations.Explainability](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-Explainability)` 對 `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` 的回應找到為最佳候選產生的可解釋性成品的 Amazon S3 字首。

## 模型效能報告
<a name="timeseries-forecasting-model-performance-report"></a>

Autopilot 模型品質報告 (也稱為效能報告) 提供 AutoML 任務所產生的最佳候選模型 (最佳預測器) 的洞察與品質資訊。這包含有關任務詳細資訊、目標函式與準確性指標 (`wQL`、`MAPE`、`WAPE`、`RMSE`、`MASE`) 的資訊。

您可以在 `[BestCandidate.CandidateProperties.CandidateArtifactLocations.ModelInsights](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-ModelInsights)` 的 `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` 回應中找到最佳候選產生的模型品質報告成品的 Amazon S3 字首。

## 回溯測試結果報告
<a name="timeseries-forecasting-model-backtest-report"></a>

回溯測試結果透過評估時間序列預測模型的預測準確性與可靠性，提供對時間序列預測模型效能的洞察。它可以幫助分析師與資料科學家評估其在歷史資料的效能，並協助了解其在未來未見資料的潛在效能。

Autopilot 使用回溯測試來調整參數並產生準確性指標。在回溯測試期間，Autopilot 會自動將您的時間序列資料分為兩組：訓練集與測試集。訓練集用於訓練模型，然後使用該模型產生測試集中資料點的預測。Autopilot 使用此測試資料集，透過將預測值與測試集的觀測值進行比較來評估模型的準確性。

您可以在 `[BestCandidate.CandidateProperties.CandidateArtifactLocations.BacktestResults](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-BacktestResults)` 的 `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` 回應中找到最佳候選產生的模型品質報告成品的 Amazon S3 字首。

# Autopilot 的時間序列預測資源限制
<a name="timeseries-forecasting-limits"></a>

下表列出 Amazon SageMaker Autopilot 中時間序列預測任務的資源限制，以及是否可以調整每個限制。


| **資源限制** | **預設值限制** | **可調整** | 
| --- | --- | --- | 
|  輸入資料集的大小  |  30 GB  |  是  | 
|  單一 Parquet 檔案的大小  |  2 GB  |  否  | 
|  資料集中的列數量上限  |  30 億  |  是  | 
|  群組數目欄位上限  |  5  |  否  | 
|  數值特徵上限的上限數量  |  13  |  否  | 
|  分類特徵數量的上限  |  10  |  否  | 
|  每個資料集的時間序列數上限 (項目與群組資料欄的唯一組合)  |  5,000,000  |  是  | 
|  預測總時程上限  |  500  |  是  | 