omuronの備忘録

個人的な備忘録

「AWSの基礎を学ぼう 第五十回 Amazon Forecast」 #awsbasics 受講メモ

awsbasics.connpass.com

先週の第四十九回は、ワクチン接種と重なったため受講できませんでしたので、2週間ぶりです。

セッション

Amazon Forecast

講師:アマゾン ウェブ サービス ジャパン、シニアエバンジェリスト 亀田氏

Amazon Forecast

時系列データの予測の問題

  • パターン化したものを機械学習で予測
  • 機械学習を使ってコンピュートリソースを下げる
  • パターンマッチを探して計算量を減らす

時系列予測の従来の課題

  • 季節性
  • 商品の特徴、メタデータの扱いできない
  • 価格、祝日、プロモーションなどの関連データを組み込めない
  • 過去データがないもの

Forecast のワークフロー概要

  1. S3 に CSV 準備
    必要ならGlueなどで正規化
  2. データセットグループの作成
  3. Schemaの定義
  4. データセットの作成
  5. 各種データのインポート
  6. 予測子の作成
    レーニングが実行されモデルが作成される
  7. 予測子の評価
    1年分のデータのうち、10ヶ月を学習して、2ヶ月を評価に使ったり
  8. 予測の作成

データセットドメイン

  • TARGET_TIME_SERIES
    • すべてのドメインで必須
    • 予測フィールドは最大10個指定することができる
  • RELATED_TIME_SERIES
    • 時間を補足するデータ
      • 天気とか、キャンペーンをしてたとか
    • 最大13個指定することができる
      • 増やす場合は、データ量もたくさんいる
    • 予測したい期間も含めて、未来の時系列も入れる
      • 1ヶ月後の天気とか、わかりにくいのを使うとブレる
      • キャンペーンとかは精度が高くなる
  • ITEM_METADATA

予測子の作成 トレーニン

  • 予測頻度
    • 分、時間、日、週、月、年
  • 予測期間
    • 予測する期間、ステップ数
    • 投入データの1/3か500の小さい方になる
  • アルゴリズム
    • ARIMA, CNN-QR, ETS, NPTS, Proghet, DeepAR+
      • コレ以外は SageMaker で
      • SageMaker のほうがなんでもできるけど時間はかかる

アルゴリズム

  • ARIMA : 自己回帰和文移動平均
    • 定常性がある波打つ動きを平均化する
    • キャンペーンとかのスパイクはノイズ
  • ETS : 指数平滑法
    • ARIMA と逆に変動性に重きを置く
    • 加重平均で計算
  • NPTS : ノンパラメトリック時系列
    • サンプリングで動作
    • すべてのデータではなく定点観測して動く(GAとかも定点観測)
  • Prophet : ベイズ構造時系列モデル
    • 詳細なデータの取扱が得意
  • CNN-QR : 畳み込みニューラルネットワーク-分位回帰
    • What-if 分析に利用可能
  • DeepAR+ : 再帰ニュートラルネットワーク
    • DeepLearning
    • What-if 分析に利用可能

AutoML

所感

機械学習全然わからん...
という私のような状況でも、時系列予測ができそうということはわかりました。