

 Amazon Forecast 不再提供給新客戶。Amazon Forecast 的現有客戶可以繼續正常使用服務。[進一步了解」](https://aws.amazon.com/blogs/machine-learning/transition-your-amazon-forecast-usage-to-amazon-sagemaker-canvas/)

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

# 預測器監控
<a name="predictor-monitoring"></a>

**注意**  
 如果您啟用預測器監控，即使刪除預測資料，Amazon Forecast 仍會儲存每個預測中的資料，以進行預測器效能分析。若要刪除此資料，請刪除監控資源。

 預測器監控可讓您查看預測器的效能如何隨時間變化。各種因素都可能導致效能變更，例如經濟發展或客戶行為的變更。

 例如，假設目標所為 `sales` 且有兩個相關屬性的預測案例：`price` 與 `color`。在建立第一個預測器後的幾個月內，某些顏色可能會意外地變得更受您的客戶歡迎。這可能會提高具有此屬性之項目的銷售額。此新資料可能會影響預測器的效能及其產生的預測準確性。

 啟用預測器監控後，預測會在您產生預測和匯入更多資料時分析預測器的效能。預測會將新資料與先前的預測進行比較，以偵測效能的任何變更。您可以在預測主控台中檢視不同準確度指標如何隨時間變化的圖表。或者，您可以使用 [ListMonitorEvaluations](API_ListMonitorEvaluations.md)操作取得監控結果。

 預測器監控有助於判斷是否需要重新訓練預測器。如果效能下降，您可能想要重新訓練較近期資料上的預測器。如果您選擇重新訓練預測器，新的預測器將包含上一個預測器的監控資料。您也可以使用預測器監控來收集生產環境的相關內容資料，或對不同的實驗執行比較。

預測器監控僅適用於 AutoPredictors。您可以將現有的舊版預測器升級至 AutoPredictor。請參閱[升級至 AutoPredictor](howitworks-predictor.md#upgrading-autopredictor)。

**Topics**
+ [預測器監控工作流程](#predictor-monitoring-workflow)
+ [啟用預測器監控](enabling-predictor-monitoring.md)
+ [檢視監控結果](predictor-monitoring-results.md)
+ [限制和最佳實務](#predictor-monitoring-best-practices)

## 預測器監控工作流程
<a name="predictor-monitoring-workflow"></a>

若要取得預測器監控結果，您必須先使用預測器產生預測，然後匯入更多資料。監控工作流程如下所示。

1. 啟用自動預測器的預測器監控：
   + 在啟用監控的情況下建立新的預測器。請參閱 [啟用新預測器的預測器監控](enabling-predictor-monitoring.md#enabling-predictor-monitoring-new)。
   + 或啟用現有預測器的監控。請參閱 [啟用現有預測器的預測器監控](enabling-predictor-monitoring.md#enabling-predictor-monitoring-existing)。

1. 使用預測器產生一或多個預測。

1. 匯入更多資料。如需將資料匯入預測的資訊，請參閱 [匯入資料集](howitworks-datasets-groups.md)。

1. 檢視預測器監控結果：
   + 您可以在預測器的**監控**索引標籤上檢視結果。
   + 或者，您可以使用 [ListMonitorEvaluations](API_ListMonitorEvaluations.md)操作取得監控結果。

   如需詳細資訊，請參閱[檢視監控結果](predictor-monitoring-results.md)。

# 啟用預測器監控
<a name="enabling-predictor-monitoring"></a>

您可以在建立預測器時啟用預測器監控，也可以為現有的預測器啟用它。

**注意**  
預測器監控僅適用於 AutoPredictors。您可以將現有的舊版預測器升級至 AutoPredictor。請參閱[升級至 AutoPredictor](howitworks-predictor.md#upgrading-autopredictor)。

**Topics**
+ [啟用新預測器的預測器監控](#enabling-predictor-monitoring-new)
+ [啟用現有預測器的預測器監控](#enabling-predictor-monitoring-existing)

## 啟用新預測器的預測器監控
<a name="enabling-predictor-monitoring-new"></a>

您可以使用 主控台、 AWS CLI、 AWS SDKs和 [CreateAutoPredictor](API_CreateAutoPredictor.md)操作啟用新預測器的預測器監控。

------
#### [ Console ]

**啟用預測器監控**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/forecast/](https://console.aws.amazon.com/forecast/) 的 Amazon Forecast 主控台。

1. 從**資料集群組**中，選擇您的資料集群組。

1. 在導覽窗格中，選擇**預測器**。

1. 選擇**訓練新的預測器**。

1. 在**預測器組態**區段中，選擇**啟用監控**。

1. 提供下列必要欄位的值：
   + **名稱** - 唯一的預測器名稱。
   + **預測頻率** - 預測的精細程度。
   + **預測期間** - 要預測的時間步驟數目。

1. 選擇**開始**以建立啟用監控的自動預測器。當您使用預測器產生預測，然後匯入更多資料時，您會看到監控結果。

------
#### [ Python ]

若要使用適用於 Python (Boto3) 的 SDK 啟用新預測器的預測器監控，請使用 `create_auto_predictor`方法，並在 中提供監視器名稱`MonitoringConfig`。

下列程式碼會建立自動預測器，未來預測 24 (`ForecastHorizon`) 天 (`ForecastFrequency`)，並將 指定`MyPredictorMonitor`為 `MonitorName`。產生預測並匯入更多資料後，您可以檢視預測器監控的結果。如需擷取結果的詳細資訊，請參閱 [檢視監控結果](predictor-monitoring-results.md)。

 如需建立預測器所需和選用參數的資訊，請參閱 [CreateAutoPredictor](API_CreateAutoPredictor.md)。

```
import boto3
                            
forecast = boto3.client('forecast')

create_predictor_response = forecast.create_auto_predictor(
    PredictorName = 'predictor_name',
    ForecastHorizon = 24,
    ForecastFrequency = 'D',
    DataConfig = {
        "DatasetGroupArn": "arn:aws:forecast:region:account:dataset-group/datasetGroupName"
    },
    MonitorConifg = {
        "MonitorName": "MyMonitorName"
    }
)
```

------

## 啟用現有預測器的預測器監控
<a name="enabling-predictor-monitoring-existing"></a>

您可以使用 主控台 AWS CLI和 AWS SDKs 啟用現有預測器的預測器監控。

------
#### [ Console ]

**啟用預測器監控**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/forecast/](https://console.aws.amazon.com/forecast/) 的 Amazon Forecast 主控台。

1. 從**資料集群組**中，選擇您的資料集群組。

1. 在導覽窗格中，選擇**預測器**。

1. 選擇您的預測器。

1. 導覽至**監控**索引標籤。

1. 在**監控詳細資訊**區段中，選擇**開始監控** 

   當**監控狀態**為作用中時，會啟用預測器監控。產生預測並匯入更多資料後，您可以檢視預測器監控的結果。如需詳細資訊，請參閱 [檢視監控結果](predictor-monitoring-results.md)

------
#### [ Python ]

若要使用適用於 Python 的 SDK (Boto3) 啟用現有預測器的預測器監控，請使用 `create_monitor`方法。指定監控的名稱，以及`ResourceArn`指定預測器要監控的 Amazon Resource Name (ARN)。使用 `describe_monitor`方法並提供監視器 ARN，以取得監視器的狀態。產生預測並匯入更多資料後，您可以檢視預測器監控的結果。如需更多資訊，請參閱[檢視監控結果](predictor-monitoring-results.md)。

如需必要和選用參數的資訊，請參閱 [CreateMonitor](API_CreateMonitor.md)和 [DescribeMonitor](API_DescribeMonitor.md)。

```
import boto3
                            
forecast = boto3.client('forecast')

create_monitor_response = forecast.create_monitor(
    MonitorName = 'monitor_name',
    ResourceArn = 'arn:aws:forecast:region:accountNumber:predictor/predictorName'
)

monitor_arn = create_monitor_response['MonitorArn']

describe_monitor_response = forecast.describe_monitor(
    MonitorArn = monitor_arn
)
print("Monitor status: " + describe_monitor_response['Status'])
```

------

# 檢視監控結果
<a name="predictor-monitoring-results"></a>

產生預測並匯入更多資料後，您可以檢視預測器監控的結果。您可以使用預測主控台查看結果的視覺化，或使用 [ListMonitorEvaluations](API_ListMonitorEvaluations.md)操作以程式設計方式擷取結果。

 預測主控台會顯示每個[預測器指標](metrics.md)的結果圖表。圖形包括每個指標在預測器和預測器事件的生命週期內如何變更，例如重新訓練。

 [ListMonitorEvaluations](API_ListMonitorEvaluations.md) 操作會傳回不同時段的指標結果和預測器事件。

------
#### [ Console ]

**檢視預測器監控結果**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/forecast/](https://console.aws.amazon.com/forecast/) 開啟 Amazon Forecast 主控台。

1. 從**資料集群組**中，選擇您的資料集群組。

1. 在導覽窗格中，選擇**預測器**。

1. 選擇預測器，然後選擇**監控**索引標籤。
   +  **監控結果**區段顯示不同準確度指標如何隨時間變化。使用下拉式清單來變更圖形追蹤的指標。
   + **監控歷史記錄**區段會列出結果中追蹤的不同事件的詳細資訊。

    以下是預測器`Avg wQL`分數如何隨時間變化的圖表範例。在此圖表中，請注意`Avg wQL`值會隨著時間增加。此增加表示預測器準確度正在降低。使用此資訊來判斷是否需要重新驗證模型並採取動作。  
![\[Graph showing increasing Avg wQL score over time, indicating decreasing predictor accuracy.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/predictor-drift.png)

------
#### [ SDK for Python (Boto3) ]

 若要使用適用於 Python 的 SDK (Boto3) 取得監控結果，請使用 `list_monitor_evaluations`方法。提供監視器的 Amazon Resource Name (ARN)，並選擇性地指定使用 `MaxResults` 參數擷取的最大結果數量。選擇性地指定 `Filter`來篩選結果。您可以依 `SUCCESS`或 `EvaluationState`的 篩選評估`FAILURE`。下列程式碼最多可獲得 20 次成功的監控評估。

```
import boto3
                            
forecast = boto3.client('forecast')

monitor_results = forecast.list_monitor_evaluations(
    MonitorArn = 'monitor_arn',
    MaxResults = 20,
    Filters = [ 
      { 
         "Condition": "IS",
         "Key": "EvaluationState",
         "Value": "SUCCESS"
      }
   ]
)
print(monitor_results)
```

 以下是 JSON 回應的範例。

```
{
  "NextToken": "string",
  "PredictorMonitorEvaluations": [
    {
      "MonitorArn": "MonitorARN",
      "ResourceArn": "PredictorARN",
      "EvaluationTime": "2020-01-02T00:00:00Z",
      "EvaluationState": "SUCCESS",
      "WindowStartDatetime": "2019-01-01T00:00:00Z",
      "WindowEndDatetime": "2019-01-03T00:00:00Z",
      "PredictorEvent": {
        "Detail": "Retrain",
        "Datetime": "2020-01-01T00:00:00Z"
      },
      "MonitorDataSource": {
        "DatasetImportJobArn": "arn:aws:forecast:region:accountNumber:dataset-import-job/*",
        "ForecastArn": "arn:aws:forecast:region:accountNumber:forecast/*",
        "PredictorArn": "arn:aws:forecast:region:accountNumber:predictor/*",
      
      },
      "MetricResults": [
        {
          "MetricName": "AverageWeightedQuantileLoss",
          "MetricValue": 0.17009070456599376
        },
        {
          "MetricName": "MAPE",
          "MetricValue": 0.250711322309796
        },
        {
          "MetricName": "MASE",
          "MetricValue": 1.6275608734888485
        },
        {
          "MetricName": "RMSE",
          "MetricValue": 3100.7125081405547
        },
        {
          "MetricName": "WAPE",
          "MetricValue": 0.17101159704738722}
      ]
    }
  ]
}
```

------

## 限制和最佳實務
<a name="predictor-monitoring-best-practices"></a>

使用預測器監控時，請考慮下列限制和最佳實務。
+ **預測器監控僅適用於自動預測器** – 您無法啟用監控使用 AutoML 或透過手動選擇建立的舊版預測器。請參閱[升級至 AutoPredictor](howitworks-predictor.md#upgrading-autopredictor)。
+ **預測器監控每個自動預測器都是唯一的** – 每個自動預測器只能建立一個監視器。
+ **預測器監控需要新資料並產生預測** – 當您匯入用於產生新預測的新資料時，預測器監控結果就會可用。如果您未匯入新資料，或新匯入的資料未涵蓋完整的預測期間，則不會看到監控結果。
+ **預測器監控需要新的預測** – 您必須持續產生新的預測，才能產生監控結果。如果您未產生新的預測，則不會看到監控結果。
+  **Amazon Forecast 將儲存來自每個預測的資料以進行預測器效能分析** – 即使您刪除預測，預測仍會儲存這些資料。若要刪除這些資料，請刪除相關聯的監視器。
+ [StopResource](API_StopResource.md) 操作將停止所有目前的評估和所有未來的評估。
+ 只有在您產生平均值以外的分位數預測時，才能使用 avgWQL 指標。
+ [ListMonitorEvaluations](API_ListMonitorEvaluations.md) 操作中不會顯示進行中監視器評估。