予測子のトレーニング - Amazon Forecast

Amazon Forecast は、新規のお客様は利用できなくなりました。Amazon Forecast の既存のお客様は、通常どおりサービスを引き続き使用できます。詳細はこちら

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

予測子のトレーニング

予測子は、ターゲットの時系列、関連する時系列、アイテムメタデータ、および含める追加のデータセットを使用してトレーニングされた Amazon Forecast のモデルです。予測子を使用して、時系列データに基づいて予測を生成できます。

デフォルトでは、Amazon Forecast は を作成し AutoPredictor、Forecast はデータセット内の各時系列にアルゴリズムの最適な組み合わせを適用します。

予測子の作成

Amazon Forecast は、予測子をトレーニングするために次の入力を必要とします。

  • データセットグループ – ターゲット時系列データセットを含める必要があるデータセットグループ。ターゲット時系列データセットには、ターゲット属性 (item_id) とタイムスタンプ属性、および任意のディメンションが含まれます。関連する時系列とアイテムメタデータはオプションです。詳細については、「データセットのインポート」を参照してください。

  • 予測頻度 – 予測の粒度 (毎時、毎日、毎週など)。Amazon Forecast では、頻度の単位と値を指定することで、予想の正確な粒度を判断できます。整数値のみ指定できます。

    頻度の単位 許可される値
    1-59
    毎時 1-23
    1 日 1 回 1-6
    毎週 1-4
    月別 1-11
    年次 1

    例えば、隔週の予想が必要な場合、頻度の単位は週に、値は 2 です。または、四半期ごとの予想が必要な場合は、頻度の単位は 1 か月で、値は 3 です。

    予想頻度よりも高い頻度でデータが収集されると、そのデータは予想頻度に集約されます。これには、直近の時系列と関連する時系列データが含まれます。集計詳細については、「さまざまな予想頻度のデータ集計」を参照してください。

  • 予測期間 – 予測されるタイムステップの数。

次のオプション入力の値を設定することもできます。

  • 時間調整境界 — Forecast がデータを集約し、指定した予想頻度に合わせた予想を生成するために使用する時間境界です。集計詳細については、「さまざまな予想頻度のデータ集計」を参照してください。時間境界の指定について詳しくは、「時間境界」を参照してください。

  • 予測ディメンション – ディメンションは、ターゲット時系列データセットのオプションの属性であり、ターゲット値 (item_id) と組み合わせて使用して個別の時系列を作成できます。

  • 予測タイプ – 予測子の評価に使用される分位数。

  • 最適化メトリクス – 予測子を最適化するために使用される精度メトリクス。

  • 追加のデータセット – Weather Index や Holidays などのビルトインの Amazon Forecast データセット。

ソフトウェア開発キット (SDK) または Amazon Forecast コンソールを使用して、予測子を作成できます。

Console

予測子を作成するには

  1. AWS Management Console にサインインして、Amazon Forecast コンソール (https://console.aws.amazon.com/forecast/) を開きます。

  2. [Dataset groups] (データセットグループ) から、データセットグループを選択します。

  3. ナビゲーションペインで、[Predictors] (予測子) を選択します。

  4. [Train new predictor] (新しい予測子のトレーニング) を選択します。

  5. 以下の必須フィールドに値を入力します。

    • 名前 - 一意の予測子名。

    • 予測頻度 - 予測の粒度。

    • [Forecast horizon] (予測期間) - 予測するタイムステップの数。

  6. [開始] を選択します。

追加のデータセットについては、 Weather Index および Holidays の特徴量化 を参照してください。予測タイプと最適化メトリクスのカスタマイズの詳細については、「予測精度の評価」を参照してください。

AWS CLI

AWS CLI を使用してauto 予測子を作成するには、create-predictor コマンドを使用します。次のコードでは、今後 14 日 の予測を行う自動予測子を作成します。

予測子の名前と、トレーニングデータを含むデータセットグループの Amazon リソースネーム (ARN) を指定します。必要に応じて、予測期間と予想頻度を変更します。必要に応じて、予測子に任意のタグを追加します。詳細については、Amazon Forecast のリソースのタグ付けを参照してください。

必須とオプションのパラメータの詳細については、「CreateAutoPredictor」を参照してください。

aws forecast create-predictor \ --predictor-name predictor_name \ --data-config DatasetGroupArn="arn:aws:forecast:region:account:dataset-group/datasetGroupName" \ --forecast-horizon 14 \ --forecast-frequency D \ --tags Key=key1,Value=value1 Key=key2,Value=value2

予想タイプと最適化メトリクスのカスタマイズの詳細については、「予測精度の評価」を参照してください。DataConfig データ型内で Weather Index および Holidays の追加のデータセットが定義されています。追加のデータセットについては、 Weather Index および Holidays の特徴量化 を参照してください。

Python

SDK for Python (Boto3) を使用して自動予測子を作成するには、create_auto_predictor メソッドを使用します。次のコードでは、今後 14 日 の予測を行う自動予測子を作成します。

予測子の名前と、トレーニングデータを含むデータセットグループの Amazon リソースネーム (ARN) を指定します。必要に応じて、予測期間と予想頻度を変更します。必要に応じて、予測子に任意のタグを追加します。詳細については、Amazon Forecast のリソースのタグ付けを参照してください。

必須とオプションのパラメータの詳細については、「CreateAutoPredictor」を参照してください。

import boto3 forecast = boto3.client('forecast') create_predictor_response = forecast.create_auto_predictor( PredictorName = 'predictor_name', ForecastHorizon = 14, ForecastFrequency = 'D', DataConfig = { "DatasetGroupArn": "arn:aws:forecast:region:account:dataset-group/datasetGroupName" }, Tags = [ { "Key": "key1", "Value": "value1" }, { "Key": "key2", "Value": "value2" } ] ) print(create_predictor_response['PredictorArn'])

予想タイプと最適化メトリクスのカスタマイズの詳細については、「予測精度の評価」を参照してください。DataConfig データ型内で Weather Index および Holidays の追加のデータセットが定義されています。追加のデータセットについては、 Weather Index および Holidays の特徴量化 を参照してください。

へのアップグレード AutoPredictor

Python ノートブック

予測子を にアップグレードする step-by-step ガイドについては AutoPredictor、「予測子を にアップグレードする AutoPredictor」を参照してください。

AutoML または手動選択 (CreatePredictor) で作成された予測子は、 にアップグレードできます AutoPredictor。既存の を にアップグレードすると、関連するすべての予測子構成設定が転送 AutoPredictor されます。

にアップグレードした後 AutoPredictor、元の予測子はアクティブなままになり、アップグレードされた予測子には個別の予測子 ARN があります。これにより、2 つの予測子間の精度メトリクスを比較でき、元の予測子を使用して予測を生成できます。

ソフトウェア開発キット (SDK) または Amazon Forecast コンソールを使用して、予測子をアップグレードできます。

Console

予測子をアップグレードするには

  1. AWS Management Console にサインインして、Amazon Forecast コンソール (https://console.aws.amazon.com/forecast/) を開きます。

  2. ナビゲーションペインで、[Predictors] (予測子) を選択します。

  3. アップグレードする予測子を選択し、[Upgrade] (アップグレード) を選択します。

  4. アップグレードされた予測子の一意の名前を設定します。

  5. にアップグレード AutoPredictorを選択します。

CLI

AWS CLI を使用して予測子をアップグレードするには、create-predictor メソッドを使用します。ただし、予測子の名前と reference-predictor-arn の値 (アップグレードする予測子の ARN) のみを指定します。

aws forecast create-predictor \ --predictor-name predictor_name \ --reference-predictor-arn arn:aws:forecast:region:account:predictor/predictorName
Python

SDK for Python (Boto3) を使用して予測子をアップグレードするには、create_auto_predictor メソッドを使用します。ただし、予測子の名前と ReferencePredictorArn の値 (アップグレードする予測子の ARN) のみを指定します。

import boto3 forecast = boto3.client('forecast') create_predictor_response = forecast.create_auto_predictor( PredictorName = 'predictor_name', ReferencePredictorArn = 'arn:aws:forecast:region:account:predictor/predictorName' ) print(create_predictor_response['PredictorArn'])

追加のデータセットの使用

Amazon Forecast には、予測子を作成するときに Weather Index と Holidays を含めることができます。Weather Index は気象情報をモデルに組み込み、Holidays は祝祭日に関する情報を組み込みます。

Weather Index には、ターゲット時系列データセットの「geolocation」属性と、タイムスタンプのタイムゾーンに関する情報が必要です。詳細については、「 Weather Index」を参照してください。

Holidays には、250 か国を超える祝祭日情報が含まれています。詳細については、「Holidays の特徴量化」を参照してください。

レガシー予測子の使用

注記

既存の予測子を にアップグレードするには AutoPredictor、「」を参照してください。 へのアップグレード AutoPredictor

AutoPredictor は、Amazon Forecast を使用して予測子を作成するデフォルトの推奨方法です。 は、データセット内の各時系列に最適なアルゴリズムの組み合わせを適用することで予測子 AutoPredictor を作成します。

で作成された予測子 AutoPredictor は、AutoML または手動選択で作成された予測子よりも一般的に正確です。Forecast Explainability および予測子の再トレーニング機能は、 で作成された予測子でのみ使用できます AutoPredictor。

Amazon Forecast は、次の方法でレガシー予測子を作成することもできます。

  1. AutoML - Forecast は、最もパフォーマンスの高いアルゴリズムを見つけて、それをデータセット全体に適用します。

  2. 手動選択 - データセット全体に適用される単一のアルゴリズムを手動で選択します。

Software Development Kit (SDK) を使用して、レガシー予測子を作成できる場合があります。

SDK

AutoML を使用するには

CreatePredictor オペレーションを使用して、PerformAutoML の値を "true" に設定します。

{ ... "PerformAutoML": "true", }

AutoML を使用する場合、、 CreatePredictorAlgorithmArn、 のパラメータに値を設定することはできませんHPOConfigTrainingParameters