

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

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

# 天氣索引


Amazon Forecast 天氣索引是內建功能，可將歷史和預測天氣資訊納入模型。它特別適用於零售使用案例，其中溫度和降水可能會對產品需求產生重大影響。

啟用天氣索引時，預測只會將天氣特徵套用到時間序列，在預測器訓練期間發現準確性改善。如果使用天氣資訊補充時間序列無法改善其在回溯測試期間的預測準確性，預測不會將天氣索引套用至該特定時間序列。

若要套用天氣索引，您必須在目標時間序列資料集和任何相關的時間序列資料集中包含[地理位置屬性](#adding-geolocation)。您也需要為目標[時間](#specifying-timezones)序列時間戳記指定時區。如需資料集需求的詳細資訊，請參閱[條件與限制](#weather-conditions-restrictions)。

**Python 筆記本**  
如需使用天氣索引step-by-step指南，請參閱 [NY Taxi： Amazon Forecast with Weather Index](https://github.com/aws-samples/amazon-forecast-samples/tree/master/notebooks/advanced/Weather_index)。

**Topics**
+ [

## 啟用天氣索引
](#enabling-weather)
+ [

## 將地理位置資訊新增至資料集
](#adding-geolocation)
+ [

## 指定時區
](#specifying-timezones)
+ [

## 條件與限制
](#weather-conditions-restrictions)

## 啟用天氣索引


天氣索引會在預測器訓練階段期間啟用。使用 [`CreateAutoPredictor`](API_CreateAutoPredictor.md)操作時，天氣索引會包含在 [AdditionalDataset](API_AdditionalDataset.md) 資料類型中。

啟用天氣索引之前，您必須在目標時間序列和相關時間序列資料集中包含地理位置屬性，並定義時間戳記的時區。如需詳細資訊，請參閱[新增地理位置資訊和](#adding-geolocation)[指定時區](#specifying-timezones)。

您可以使用預測主控台或預測軟體開發套件 (SDK) 來啟用天氣索引。

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

**啟用天氣索引**

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

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

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

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

1. 選擇**啟用天氣索引**。

------
#### [ SDK ]

**啟用天氣索引**

使用 [`CreateAutoPredictor`](API_CreateAutoPredictor.md)操作，透過在 [AdditionalDataset](API_AdditionalDataset.md) 資料類型`"Value": "true"`中新增 `"Name": "weather"`和 來啟用天氣索引。

```
    "DataConfig": { 
        ...
        "AdditionalDatasets": [
            ...                      
            {             
                "Name": "weather",       
            }      
            ]   
        },
```

------

## 將地理位置資訊新增至資料集


若要使用天氣索引，您必須在目標時間序列和相關時間序列資料集中包含每個項目的地理位置屬性。屬性是以資料集結構描述中的`geolocation`屬性類型定義。

資料集中的所有地理位置值必須僅在單一區域內。區域包括：美國 （不含夏威夷和阿拉斯加）、加拿大、南美洲、中南美洲、亞太區域、歐洲，以及非洲和中東。

以兩種格式之一指定地理位置屬性：
+ **緯度和經度** （所有區域） - 以十進位格式指定緯度和經度 （範例：47.61\$1-122.33)
+ **郵遞區號 **（僅限美國） - 指定國家/地區碼 （美國），後面接著 5 位數郵遞區號 （範例：US\$198121)

所有區域都支援緯度和經度格式。只有美國區域才支援郵遞區號格式。

**Topics**
+ [

### 緯度和經度界限
](#geolocation-bounds)
+ [

### 在資料集結構描述中包含地理位置
](#geolocation-schema)
+ [

### 設定地理位置格式
](#geolocation-format)

### 緯度和經度界限


以下是接受區域的縱向和縱向邊界：

------
#### [ US Region ]

**界限**：緯度 (24.6、50.0)、經度 (-126.0、-66.4)。

![\[Map of North America showing United States, parts of Canada and Mexico with major cities.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/weather-us-bounds.png)


------
#### [ Canada Region ]

**界限**：緯度 (41.0、75.0)、經度 (-142.0、-52.0)。

![\[Map showing northern Canada and parts of the US, highlighting territories and major cities.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/weather-can-bounds.PNG)


------
#### [ Europe Region ]

**界限**：緯度 (34.8、71.8)、經度 (-12.6、44.8)。

![\[Map of Northern Europe and surrounding regions showing countries and major cities.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/weather-euro-bounds.png)


------
#### [ South America Region ]

**界限**：緯度 (-56.6、14.0)、經度 (-82.4、-33.00)。

![\[Map of South America showing countries, major cities, and Brazilian states.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/weather-sa-bounds.PNG)


------
#### [ Asia Pacific Region ]

**界限**：緯度 (-47.8、55.0)、經度 (67.0、180.60)。

![\[Map showing East Asia, Southeast Asia, and Australia with country names and ocean labels.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/weather-apac-bounds.png)


------
#### [ Central America Region ]

**界限**：緯度 (6.80、33.20)、經度 (-118.80、-58.20)。

![\[Map showing southern US, Mexico, Central America, and Caribbean with major cities and bodies of water.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/weather-ca-bounds.png)


------
#### [ Africa & Middle East Region ]

**界限**：緯度 (-35.60、43.40)、經度 (-18.80、-58.20)。

![\[Map showing North Africa, Middle East, and parts of Europe with country names and borders.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/weather-africa-bounds.png)


------

### 在資料集結構描述中包含地理位置


使用主控台或 [CreateDataset](API_CreateDataset.md) 操作，在目標時間序列和任何相關時間序列的 JSON 結構描述中，將位置屬性類型定義為「地理位置」。結構描述中的屬性必須依照顯示在資料集中的屬性排序。

```
 { 
  "Attributes":[
    {
       "AttributeName": "timestamp",
       "AttributeType": "timestamp"
    },
    {
       "AttributeName": "target_value",
       "AttributeType": "float"
    },
    {
       "AttributeName": "item_id",
       "AttributeType": "string"
    },
    {
       "AttributeName": "location",
       "AttributeType": "geolocation"
    }
  ]
}
```

### 設定地理位置格式


地理位置屬性的格式可以是**郵遞區號**或**緯度和經度**格式。您可以使用預測主控台或預測軟體開發套件 (SDK) 來設定地理位置格式。

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

**將地理位置屬性新增至時間序列資料集**

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

1. 選擇 **Create dataset group (建立資料集群組)**。

1. 在**結構描述建置器**中，將您的地理位置**屬性類型**設定為 `geolocation`。

1. 在**地理位置格式**下拉式清單中，選擇您的位置格式。

![\[Dataset details form with name, frequency, and schema builder for attribute specification.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/schema-builder-geolocation.png)


您也可以以 JSON 格式定義屬性，並從**地理位置格式下拉式清單中選取位置格式**。

------
#### [ SDK ]

**將地理位置屬性新增至時間序列資料集**

使用 [ CreateDatasetImportJob](API_CreateDatasetImportJob.md) 操作，將 的值`GeolocationFormat`設定為下列其中一項：
+ **經緯度 **（所有區域）： `"LAT_LONG"`
+ **郵遞區號 **（僅限美國）： `"CC_POSTALCODE"`

例如，若要指定緯度和經度格式，請在`CreateDatasetImportJob`請求中包含下列項目：

```
{
    ...
    "GeolocationFormat": "LAT_LONG"
}
```

------

## 指定時區


您可以讓 Amazon Forecast 自動同步時區資訊與地理位置屬性，也可以手動將單一時區指派給整個資料集。

**Topics**
+ [

### 自動同步時區與地理位置
](#timezones-automatic)
+ [

### 手動選取單一時區
](#timezones-manual)

### 自動同步時區與地理位置


此選項適用於在多個時區包含時間戳記的資料集，這些時間戳記以本機時間表示。預測會根據項目的地理位置屬性，為目標時間序列資料集中的每個項目指派時區。

您可以使用 Forecast 主控台或 Forecast SDK，自動同步時間戳記與地理位置屬性。

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

**使用地理位置屬性同步時區**

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

1. 在導覽窗格中，選擇**建立資料集群組**。

1. 在**資料集匯入詳細資訊**中，選擇**同步時區與位置**。

![\[Dataset import form with fields for name, time zone, S3 data location, and IAM role.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/sync-timezone-with-geolocation.PNG)


------
#### [ SDK ]

**使用地理位置屬性同步時區**

使用 [ CreateDatasetImportJob](API_CreateDatasetImportJob.md) 操作，將 `"UseGeolocationForTimeZone"`設定為 `"true"`。

```
{
    ...
    "UseGeolocationForTimeZone": "true"
}
```

------

### 手動選取單一時區


**注意**  
您可以手動選取*美國區域*、*加拿大區域*、*南美洲區域*、*中南美洲區域*、*亞太區域*、*歐洲區域*，以及*非洲和中東區域*以外的時區。不過，所有地理位置值仍必須位於其中一個區域內。

此選項非常適合具有單一時區內所有時間戳記的資料集，或將所有時間戳記標準化為單一時區。使用此選項會將相同的時區套用至資料集中的每個項目。

天氣索引接受下列時區：

 **美國區域** 
+  America/Los\$1Angeles 
+  美洲/鳳凰城 
+  美洲/丹佛 
+  美洲/芝加哥 
+  America/New\$1York 

 **加拿大區域** 
+ 美洲/丹佛
+ 美洲/愛德蒙頓
+ 美洲/區域 
+ 美洲/溫尼伯 
+ 美洲/多倫多
+ 美洲/哈里法克斯
+ America/St\$1Johns

 **歐洲區域** 
+ 歐洲/倫敦 
+ 歐洲/巴黎 
+ 歐洲/赫爾辛基 

 **南美洲區域** 
+ 美洲/布宜諾斯\$1Aires
+ 美洲/諾朗哈
+ 美洲/卡拉卡斯 

 **亞太區域** 
+ 亞洲/喀布爾 
+ 亞洲/喀拉蚩 
+ 亞洲/加爾各答 
+ 亞洲/加德滿都 
+ 亞洲/達卡 
+ Asia/Rangoon 
+ 亞洲/曼谷 
+ 亞洲/新加坡 
+ 亞洲/首爾 
+ 澳洲/阿德雷德 
+ 澳洲/墨爾本 
+ 澳洲/Lord\$1Howe 
+ 澳洲/尤加拉 
+ 太平洋/北部 
+ 太平洋/奧克蘭 

 **中南美洲** 
+ 美洲/波多黎各

 **非洲和中東** 
+ 非洲/奈洛比 
+ 亞洲/德黑蘭 
+ 亞洲/杜拜

 **Other (其他)** 
+ 太平洋/中途 
+ 太平洋/檀香山 
+ 太平洋/馬克沙 
+ 美洲/安克拉治 
+ Atlantic/Cape\$1Verde 
+ 亞洲/安多爾 
+ 太平洋/查坦 
+ Pacific/Enderbury 
+ Pacific/Kiritimati 

如果資料集中的項目位於其中一個接受區域內，但您的時間戳記標準化為該區域外的時區，請從**其他**清單中選取時區。

如需有效時區名稱的完整清單，請參閱 [Joda-Time 程式庫](http://joda-time.sourceforge.net/timezones.html)。

您可以使用預測主控台或預測 SDK，手動設定資料集的時區。

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

**為您的資料集選取單一時區**

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

1. 在導覽窗格中，選擇**建立資料集群組**。

1. 在**資料集匯入詳細資訊**中，選擇**選取時區**。

例如，使用下列項目將洛杉磯時間 （太平洋標準時間） 套用至您的資料集。

![\[Dataset import form with fields for name, time zone, data location, and IAM role.\]](http://docs.aws.amazon.com/zh_tw/forecast/latest/dg/images/select-timezone.PNG)


------
#### [ SDK ]

**為您的資料集選取單一時區**

使用 [ CreateDatasetImportJob](API_CreateDatasetImportJob.md) 操作，`"TimeZone"`將 設定為有效的時區。

例如，使用下列項目將洛杉磯時間 （太平洋標準時間） 套用至您的資料集。

```
{
    ...
    "TimeZone": "America/Los_Angeles"
}
```

------

## 條件與限制


使用 天氣索引時，適用下列條件和限制：
+ **可用的演算法**：如果使用舊版預測器，則可以在使用 CNN-QR、DeepAR\$1 和 Prophet 演算法訓練預測器時啟用天氣索引。天氣索引不會套用至 ARIMA、ETS 和 NPTS。
+ **預測頻率**：有效的預測頻率為 `Minutely`、 `Hourly`和 `Daily`。
+ **預測期間**：預測期間不能超過未來 14 天。如需每個預測頻率的預測期間限制，請參閱下列清單：
  + `1 minute` - 500
  + `5 minutes` - 500
  + `10 minutes` - 500
  + `15 minutes` - 500
  + `Hourly` - 330
  + `Daily` - 14
+ **時間序列長度**：使用天氣索引訓練模型時，預測會在預測天氣資料集特徵化的開始日期之前截斷具有時間戳記的所有時間序列資料集。預測天氣資料集功能包含下列開始日期：
  + **美國區域**：2018 年 7 月 2 日
  + **歐洲區域**：2018 年 7 月 2 日
  + **亞太區域**：2018 年 7 月 2 日
  + **加拿大區域**：2019 年 7 月 2 日
  + **南美洲區域**：2020 年 1 月 2 日
  + **中南美洲區域**：2020 年 9 月 2 日
  + **非洲和中東區域**：2021 年 3 月 25 日

  啟用天氣索引後，在預測器訓練期間將不會使用開始日期之前具有時間戳記的資料點。
+ **位置數量**：目標時間序列資料集不能超過 2000 個唯一位置。
+ **區域界限**：資料集中的所有項目都必須位於單一區域內。
+ **時間序列長度下限**：由於測試天氣索引時的額外資料需求，時間序列資料集的長度下限為：

  `3 × ForecastHorizon + (BacktestWindows + 1) × BacktestWindowOffset`

  如果您的時間序列資料集不符合此要求，請考慮減少下列項目：
  + `ForecastHorizon` - 縮短預測期間。
  + `BacktestWindowOffset` - 在回溯測試期間縮短測試集的長度。
  + `BacktestWindows` - 減少回溯測試的數量。