【Amazon Forecastで時系列予測】Amazon Forecastとは

【Amazon Forecastで時系列予測】Amazon Forecastとは

AWSでAI・データ活用

機械学習に関する深い経験や知識がなくても、GUI操作のみで予測のための機械学習モデルを開発することができる、Amazon Forecastというサービスがあります。

これから全5回のコラムを通して、Amazon Forecastの概要、そして時系列予測を実際にAmazon Forecastでどのように実施していくのかを操作手順ベースでご紹介していきます。
Amazon Forecastを使った時系列予測の利用イメージを、なんとなくでも掴んでいただければ幸いです。

1. はじめに

Amazon Forecastは、Amazon.comの機械学習予測技術に基づいて、統計アルゴリズムと機械学習アルゴリズムを使用し、高い精度の時系列予測を提供する完全マネージド型サービスです。
Forecastにあらかじめ用意されたアルゴリズムを利用することで、過去の時系列データから未来の予測を行うことができます。

今回の検証で使用したデータとAWSサービスの構成は以下のとおりです。
予測に使うデータはAmazon S3に格納し、これらのデータをAmazon Forecastに取り込んで時系列予測を行います。
また、学習した結果を直接クエリを投げてデータを抽出したり、Amazon S3にエクスポートして確認します。

※画像をクリックすると新しいタブで開きます。

adwmb06_01.png

2. 時系列予測とは

時系列予測とは、時間的な連続性がある過去の実績データから、未来の数値・傾向を予測することです。
この先、数値が上がるのか、下がるのか、横這いになるかといったものを予測します。
商品需要予測や、財務計画、リソース計画などユースケースは多岐に渡ります。

実際にどうやって予測するのかというと、以下のような特徴・要因を考慮して行います。

  • 予測するデータ自体の傾向(季節性や一定の周期性、トレンド性など)
  • 価格、色、祝日、イベントといった関連データ
  • 地域性、世界情勢などの外部要因

当然ですが、予測において重要なのは「精度」です。
例えば、小売りにおける商品販売数の予測を考えた場合、過剰な予測は、店舗に無駄な在庫を抱えさせる無駄なコストを発生させますし、逆に過小な予測は、販売が見込める機会を逃す機会損失を発生させてしまいます。

機械学習を利用すると、認識が難しい複雑なパターンやわずかな差異に対応できます。
精度の高い予測を行えると無駄のない計画が行えるので、ビジネスにおいて時系列予測が果たす役割は非常に大きいと言えるでしょう。

3. Amazon Forecastの概要

Amazon Forecastの機能

  • 予測したい数値を含む時系列データのインポート
  • 欠落値の補完
  • 6種類のビルトインの予測アルゴリズム
  • 一般的に使用される統計手法から複雑なニューラルネットワークまで、幅広いトレーニングアルゴリズムを提供
  • AutoML(自動機械学習)
  • アルゴリズムの選択、ハイパーパラメータの調整、反復モデリング、モデル評価などの複雑な機械学習タスクを自動化
  • 一般的な評価指標を用いた予測メトリクス
  • 学習済モデル(予測子)を用いた予測の作成
  • 予測結果のクエリ/エクスポート  など

時系列予測の一連の流れ

Amazon Forecastで取り込める形のデータさえ準備すれば、後はAmazon Forecastの機能だけで時系列予測が簡単に作成できます。

adwmb06_02.png

Amazon Forecastの構成要素

以下のように、一番大きな要素としてデータセットグループというものがあり、ここに各種データセットや予測子などの要素が含まれます。
Amazon Forecastは、データセットグループに各種データセットを取り込んで予測を作成していきます。

adwmb06_03.png

データセットグループには、データセットタイプごとに1つ、最大3つのデータセットを含めることができます。
データセットを使用して学習した予測モデルをPredictor、Predictorを使用して生成した予測(推論)をForecastと呼びます。

Amazon Forecastには 以下3つのデータセットタイプが用意されています。

adwmb06_04.png

Amazon Forecastの利用方法

Amazon Forecastの利用方法には以下3種類があり、用途やフェーズによって選択できます。

  • AWSマネジメントコンソール
  • AWS CLI
  • AWS SDK(for Python、for Javaなど)

コンソールは検証利用やチューニング等の試行錯誤を行うのに、CLIやSDKなどはシステムへの組み込みを考える時に向いているかと思います。

4. おわりに

次回より、主にマネジメントコンソールからの操作をベースに、以下の流れに沿って順番に時系列予測の作業を行っていきます。

adwmb06_05.png


■商標について
Amazon Web Services、および、かかる資料で使用されるその他のAWS商標は、米国その他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。


【Amazon Forecastで時系列予測】シリーズ コラム一覧(全5回)
第2回:①データセットの準備
第3回:②予測モデルの作成(AutoML)
第4回:③予測モデルの作成(CNN-QR)
第5回:④予測実行(推論)

BI_banner01.png