Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Forecast Getting Start
Search
貞松政史
October 11, 2019
Technology
0
1.4k
Amazon Forecast Getting Start
2019.10.11 DevelopersIO 2019 in Osaka
貞松政史
October 11, 2019
Tweet
Share
More Decks by 貞松政史
See All by 貞松政史
予知保全利用を目指した外観検査AIの開発 〜画像処理AIを用いた外観画像に対する異常検知〜
sadynitro
0
280
20230904_GoogleCloudNext23_Recap_AI_ML
sadynitro
0
650
Foundation Model全盛時代を生きるAI/MLエンジニアの生存戦略
sadynitro
0
750
Amazon SageMakerが存在しない世界線 のAWS上で実現する機械学習基盤
sadynitro
0
130
Amazon SageMakerが存在しない世界線のAWS上で実現する機械学習基盤
sadynitro
0
1.3k
みんな大好き強化学習
sadynitro
0
900
機械学習エンジニアはMLOpsの夢を見るか?
sadynitro
0
1.1k
AWSのAIサービスインテグレーション - AIの仕組みを活用した課題解決
sadynitro
0
930
実践Amazon SageMaker - 全体像からユースケースまで
sadynitro
0
2.3k
Other Decks in Technology
See All in Technology
大規模ドラレコデータ収集・機械学習基盤を支える AWS CDK 〜導入・運用事例紹介〜
pemugi
0
110
初中級者用如何使用backlog -VALE TUDOEDITION-
in0u
0
140
AWSでRAGを作る法方
sonoda_mj
1
140
サービスの持続的な成長と技術負債について
siva_official
PRO
10
4.4k
ACRiルーム最新情報とAMD GPUサーバーのご紹介
anjn
0
160
セキュリティ研修 Day1【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
Azure AI ことはじめ
tsubakimoto_s
0
130
スレットハンティングについて知っておきたいこと
hacket
0
130
CEL(Common Expression Language)で書いた条件にマッチしたIAM Policyを見つける / iam-policy-finder
fujiwara3
0
710
たくさん本を読んだけど 1年後には綺麗サッパリ!を乗り越えて 学習の鬼になるぞ👹
yum3
0
160
What is DRE? - Road to SRE NEXT@広島
chanyou0311
3
630
[I/O Extended Android 2024] What`s new in Android 2024
kyeongwan
0
220
Featured
See All Featured
Leading Effective Engineering Teams 2024
addyosmani
3
300
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
17
1.5k
Testing 201, or: Great Expectations
jmmastey
33
6.9k
Done Done
chrislema
179
15k
Pencils Down: Stop Designing & Start Developing
hursman
118
11k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
35
6.3k
How GitHub (no longer) Works
holman
305
140k
Six Lessons from altMBA
skipperchong
24
3.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
2.9k
StorybookのUI Testing Handbookを読んだ
zakiyama
15
4.9k
Designing for Performance
lara
604
67k
The Pragmatic Product Professional
lauravandoore
29
6.1k
Transcript
みんな⼤好き時系列予測 〜Amazon Forecastで時系列予測やってみた〜 データアナリティクス事業本部 インテグレーション部 貞松 政史
スライドは後で⼊⼿することが出来ますので 発表中の内容をメモする必要はありません。 写真撮影をする場合は フラッシュ・シャッター⾳が出ないようにご配慮ください Attention
3 ⾃⼰紹介 • ⽒名 • 貞松 政史 (サダマツ マサシ) •
所属 • データアナリティクス事業本部 • インテグレーション部 開発チーム • 岡⼭オフィス勤務 •好きなAWSサービス • SageMaker • Lambda • Forecast ← new!
4 本セッションのゴール Amazon Forecast だいたいわかった ü Amazon Forecastの概要 ü コンソール上での操作⼿順
ü なんとなくの活⽤イメージ
5 本セッションで話さないこと 時系列予測の理論的な(深い)話 がっつりシステムに組み込む話
6 おしながき 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順 4.
オープンデータを使った使⽤例
7 Amazon Forecastとは 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順
4. オープンデータを使った使⽤例
8 Amazon Forecast とは 機械学習の経験なしで使⽤できる Amazon.comと同じテクノロジーに 基づいた正確な時系列予測サービス
9 で、何ができるの︖ ü 予測したい数値を含む時系列データをインポート ü 時系列予測のアルゴリズムを選択して学習を実⾏ (AutoMLを利⽤すればアルゴリズムの選択も不要︕) ü 学習済みモデル(予測⼦)を⽤いて予測を作成 これだけで時系列予測ができちゃう
10 Forecastのメリット データの収集 データの前処理 学習アルゴリズムの実装 学習済みモデルの性能検証 予測の可視化 通常の時系列予測のプロセス ⾃前で準備・実装
11 Forecastのメリット データの収集 データの前処理 学習アルゴリズムの実装 学習済みモデルの性能検証 予測の可視化 Forecastを利⽤した時系列予測のプロセス ⾃前で準備 Forecastの機能
12 Forecastの活⽤領域 • ⼩売の需要予測 • 在庫予測 • 収益・売上・キャッシュフローの予測 • 従業員・労働⼒の計画
• ウェブトラフィックの⾒積 • Amazon EC2のキャパシティ予測 etc…
13 Forecastの利⽤⽅法 • コンソール上で使⽤ ← 今回はこれ • AWS CLIで使⽤ •
Jupyter Notebookで使⽤ • AWS SDKで使⽤ (for Python, for Java など)
14 時系列予測の基礎 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順 4.
オープンデータを使った使⽤例
15 時系列予測とは
時間的な連続性を持つ過去の実績データから未来の数値・傾向を予測する ? ? ?
16 どうやって予測するのか 0 2 4 6 8 10 12 1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 value 0 10 20 30 40 50 60 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 value temp 予測対象データ⾃体の傾向 季節変動・トレンド →その他外部要因(周辺環境の変化、世界情勢)など 古典的な統計⼿法や機械学習を適⽤することで予測
17 コンソール上でのForecastの操作⼿順 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順 4.
オープンデータを使った使⽤例
18 Forecastの構成要素 データセットグループ データセット(必須) TARGET_TIME_SERIES データセット(任意) RELATED_TIME_SERIES データセット(任意) ITEM_METADATA 予測⼦(予測⽤の学習済みモデル)
予測
19 コンソール上でのForecastの操作⼿順 データセットグループ作成 データセット作成 データインポート 予測⼦の作成 予測の作成 予測の可視化
20 サンプルデータ http://archive.ics.uci.edu/ml UCI Machine Learning で公開されている電⼒利⽤量データ
21 データセットグループの作成 トップページ → Create dataset group
22 データセットグループの作成 データセットグループ名とドメインを⼊⼒
23 Forecast domain • RETAIL : ⼩売の需要予測 • INVENTORY_PLANNING :
サプライチェーンと在庫の計画 • EC2 CAPACITY : Amazon EC2 キャパシティの予測 • WORK_FORCE : 従業員の計画 • WEB_TRAFFIC : 今後のウェブトラフィックの⾒積もり • METRICS : 収益およびキャッシュフローなどの予測メトリクス • CUSTOM : その他すべての時系列予測のタイプ
24 データセットの作成 • データセット名 • データの時間刻み • スキーマ定義 • 必須のスキーマ
⁻ item_id ⁻ timestamp ⁻ target_value • 任意のスキーマ
25 時系列データの時間刻み 選択可能な時間刻みの単位 • minutes : 分 • hour :
時間 • day : ⽇ • week : 週 • month : ⽉ • year : 年
26 データインポート • データセットインポート名 • タイムスタンプフォーマット ⁻ yyyy-MM-dd HH:mm:ss ⁻
yyyy-MM-dd • IAMロール(S3のRead) • インポートするデータの場所 ⁻ S3バケット上のパス
27 予測⼦の作成
28 予測⼦の作成 • 予測⼦名 • 予測範囲(期間) • 予測の時間刻み • 予測アルゴリズムの選択
⁻ AutoML(⾃動選択) ⁻ Manual(⼿動選択)
29 予測⼦の作成 Forecastで使⽤可能な時系列予測アルゴリズム • ARIMA : ⾃⼰回帰和分移動平均 • DeepAR+ :
再帰型ニューラルネットワーク (RNN) を使⽤してスカ ラー (1次元) 時系列を予測するための、教師あり学習アルゴリズム • ETS : 指数平滑法 • NPTS : ノンパラメトリック時系列 • Prophet : 局所的なベイズ構造時系列モデル
30 予測⼦の作成 • Forecast dimensions • Backtest window ⁻ Number
of windows ⁻ Offset • Advanced configutations ⁻ ハイパーパラメータ設定など
31 作成した予測⼦の確認
32 作成した予測⼦の確認
33 作成した予測⼦の確認 平均平⽅⼆乗誤差 (Root Mean Squared Error, RMSE) 外れ値 (⼤きなズレ)
を より⼤きな誤差として扱う -0.2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 値が⼩さいほど良い
34 作成した予測⼦の確認 重み付けされた分位損失 (weighted Quantile Loss) 値が⼩さいほど良い
35 予測の作成
36 予測の作成 予測名と予測⼦を⼊⼒
37 予測の可視化 27
38 予測の可視化 27
39 予測のエクスポート
40 予測のエクスポート • 予測エクスポート名 • 出⼒する予測結果 • IAM(S3 Write) •
出⼒先のS3バケットのパス
41 予測のエクスポート 指定したS3バケットのパスにファイル出⼒ ←予測結果データが ⼊ったCSVファイル
42 予測のエクスポート 以下の列項⽬を含む • item_id • date • p10, p50,
p90
43 ユースケース 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順 4.
オープンデータを使った使⽤例
44 福岡市のインフルエンザ報告数 https://ckan.open-governmentdata.org/dataset/influenza401307fukuoka
45 データ仕様 データ期間︓2015年7⽉〜2019年8⽉(1週間刻み)
46 データの前処理 組み合わせて item_idに 年と週番号を週頭の 年⽉⽇に変換して timestampに そのまま target_valueに
47 データの前処理結果 item_id, timestamp, target_valueを持つデータに変換完了 item_idが⽇本語の値 → 問題なし ※但しファイルの⽂字コードがUTF-8になっていること
48 ここからはForcastの出番 あとは Forecast におまかせ︕
49 予測の可視化 ↑⽇本語のitem_id
50 予測の可視化
51 Bless you. インフルエンザには気をつけましょう
まとめ
53 まとめ Amazon Forecastは機械学習の経験が無くても 使⽤可能な時系列予測サービス データの収集・前処理さえしておけばGUI上で ポチポチするだけで時系列予測ができる 幾つかの制限・課題はあるものの既に時系列データを 蓄積している幅広い分野で活⽤できる可能性がある
54 結論 Amazon Forecast はいいぞ
55