Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Amazon Forecast Getting Start
Search
貞松政史
November 02, 2019
Technology
1.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Amazon Forecast Getting Start
2019.11.02 DevelopersIO 2019 in Okayama
貞松政史
November 02, 2019
More Decks by 貞松政史
See All by 貞松政史
Amazon Forecast亡き今、我々がマネージドサービスに頼らず時系列予測を実行する方法
sadynitro
0
1.5k
今日のハイライトをシステマティックに
sadynitro
1
99
はじめてのレコメンド〜Amazon Personalizeを使った推薦システム超超超入門〜
sadynitro
2
2.8k
予知保全利用を目指した外観検査AIの開発 〜画像処理AIを用いた外観画像に対する異常検知〜
sadynitro
0
1.4k
20230904_GoogleCloudNext23_Recap_AI_ML
sadynitro
0
1.1k
Foundation Model全盛時代を生きるAI/MLエンジニアの生存戦略
sadynitro
0
1.2k
Amazon SageMakerが存在しない世界線 のAWS上で実現する機械学習基盤
sadynitro
0
330
Amazon SageMakerが存在しない世界線のAWS上で実現する機械学習基盤
sadynitro
0
2.3k
みんな大好き強化学習
sadynitro
0
1.4k
Other Decks in Technology
See All in Technology
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
100
すぐできる衛星通信対応 あとは山奥に行くだけ
tatetate55
0
110
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
220
DEFCON34-Write-up_HYCu-MYCu
daikiokazaki
0
150
KPIだけでは評価できないプロダクトが考えるべき Evalsという第二の評価系 / Beyond KPIs: Evals as a Second Evaluation Framework for Products #PdEConf
aki_iinuma
4
3.9k
OpenTelemetryのメトリクスをCloudWatchに送ってPromQLで見てみた
ota1022
0
120
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
110
Claude Code本って、 読む必要あるの?
oikon48
2
420
Redmine 7.0で私が開発した新機能の狙いと背景
vividtone
1
160
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
1
240
AIで仕事のやり方を変える
matsu7874
3
1.1k
ペアプロの価値はコードを書くことだけじゃない
codmoninc
PRO
0
200
Featured
See All Featured
Between Models and Reality
mayunak
4
450
Code Review Best Practice
trishagee
74
20k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
590
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Skip the Path - Find Your Career Trail
mkilby
1
230
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
AI: The stuff that nobody shows you
jnunemaker
PRO
9
990
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
190
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Transcript
みんな⼤好き時系列予測 〜Amazon Forecastで時系列予測やってみた〜 データアナリティクス事業本部 インテグレーション部 貞松 政史
スライドは後で⼊⼿することが出来ますので 発表中の内容をメモする必要はありません。 写真撮影をする場合は フラッシュ・シャッター⾳が出ないようにご配慮ください Attention
#cmdevio
4 ⾃⼰紹介 • ⽒名 • 貞松 政史 (サダマツ マサシ) •
所属 • データアナリティクス事業本部 • インテグレーション部 開発チーム • 岡⼭オフィス勤務 •好きなAWSサービス • SageMaker • Lambda • Forecast ← new!
5 本セッションのゴール Amazon Forecast だいたいわかった ü Amazon Forecastの概要 ü コンソール上での操作⼿順
ü なんとなくの活⽤イメージ
6 本セッションで話さないこと 時系列予測の理論的な(深い)話 がっつりシステムに組み込む話
7 おしながき 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順 4.
オープンデータを使った使⽤例
8 Amazon Forecastとは 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順
4. オープンデータを使った使⽤例
9 Amazon Forecast とは 機械学習の経験なしで使⽤できる Amazon.comと同じテクノロジーに 基づいた正確な時系列予測サービス
10 で、何ができるの︖ ü 予測したい数値を含む時系列データをインポート ü 時系列予測のアルゴリズムを選択して学習を実⾏ (AutoMLを利⽤すればアルゴリズムの選択も不要︕) ü 学習済みモデル(予測⼦)を⽤いて予測を作成 これだけで時系列予測ができちゃう
11 Forecastのメリット データの収集 データの前処理 学習アルゴリズムの実装 学習済みモデルの性能検証 予測の可視化 通常の時系列予測のプロセス ⾃前で準備・実装
12 Forecastのメリット データの収集 データの前処理 学習アルゴリズムの実装 学習済みモデルの性能検証 予測の可視化 Forecastを利⽤した時系列予測のプロセス ⾃前で準備 Forecastの機能
13 Forecastの活⽤領域 • ⼩売の需要予測 • 在庫予測 • 収益・売上・キャッシュフローの予測 • 従業員・労働⼒の計画
• ウェブトラフィックの⾒積 • Amazon EC2のキャパシティ予測 etc…
14 Forecastの利⽤⽅法 • コンソール上で使⽤ ← 今回はこれ • AWS CLIで使⽤ •
Jupyter Notebookで使⽤ • AWS SDKで使⽤ (for Python, for Java など)
15 時系列予測の基礎 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順 4.
オープンデータを使った使⽤例
16 時系列予測とは
時間的な連続性を持つ過去の実績データから未来の数値・傾向を予測する ? ? ?
17 どうやって予測するのか 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 予測対象データ⾃体の傾向 季節変動・トレンド →その他外部要因(周辺環境の変化、世界情勢)など 古典的な統計⼿法や機械学習を適⽤することで予測
18 コンソール上でのForecastの操作⼿順 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順 4.
オープンデータを使った使⽤例
19 Forecastの構成要素 データセットグループ データセット(必須) TARGET_TIME_SERIES データセット(任意) RELATED_TIME_SERIES データセット(任意) ITEM_METADATA 予測⼦(予測⽤の学習済みモデル)
予測
20 コンソール上でのForecastの操作⼿順 データセットグループ作成 データセット作成 データインポート 予測⼦の作成 予測の作成 予測の可視化
21 サンプルデータ http://archive.ics.uci.edu/ml UCI Machine Learning で公開されている電⼒利⽤量データ
22 データセットグループの作成 トップページ → Create dataset group
23 データセットグループの作成 データセットグループ名とドメインを⼊⼒
24 Forecast domain • RETAIL : ⼩売の需要予測 • INVENTORY_PLANNING :
サプライチェーンと在庫の計画 • EC2 CAPACITY : Amazon EC2 キャパシティの予測 • WORK_FORCE : 従業員の計画 • WEB_TRAFFIC : 今後のウェブトラフィックの⾒積もり • METRICS : 収益およびキャッシュフローなどの予測メトリクス • CUSTOM : その他すべての時系列予測のタイプ
25 データセットの作成 • データセット名 • データの時間刻み • スキーマ定義 • 必須のスキーマ
⁻ item_id ⁻ timestamp ⁻ target_value • 任意のスキーマ
26 時系列データの時間刻み 選択可能な時間刻みの単位 • minutes : 分 • hour :
時間 • day : ⽇ • week : 週 • month : ⽉ • year : 年
27 データインポート • データセットインポート名 • タイムスタンプフォーマット ⁻ yyyy-MM-dd HH:mm:ss ⁻
yyyy-MM-dd • IAMロール(S3のRead) • インポートするデータの場所 ⁻ S3バケット上のパス
28 予測⼦の作成
29 予測⼦の作成 • 予測⼦名 • 予測範囲(期間) • 予測の時間刻み • 予測アルゴリズムの選択
⁻ AutoML(⾃動選択) ⁻ Manual(⼿動選択)
30 予測⼦の作成 Forecastで使⽤可能な時系列予測アルゴリズム • ARIMA : ⾃⼰回帰和分移動平均 • DeepAR+ :
再帰型ニューラルネットワーク (RNN) を使⽤してスカ ラー (1次元) 時系列を予測するための、教師あり学習アルゴリズム • ETS : 指数平滑法 • NPTS : ノンパラメトリック時系列 • Prophet : 局所的なベイズ構造時系列モデル
31 予測⼦の作成 • Forecast dimensions • Backtest window ⁻ Number
of windows ⁻ Offset • Advanced configutations ⁻ ハイパーパラメータ設定など
32 作成した予測⼦の確認
33 作成した予測⼦の確認
34 作成した予測⼦の確認 平均平⽅⼆乗誤差 (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 値が⼩さいほど良い
35 作成した予測⼦の確認 重み付けされた分位損失 (weighted Quantile Loss) 値が⼩さいほど良い
36 予測の作成
37 予測の作成 予測名と予測⼦を⼊⼒
38 予測の可視化 27
39 予測の可視化 27
40 予測のエクスポート
41 予測のエクスポート • 予測エクスポート名 • 出⼒する予測結果 • IAM(S3 Write) •
出⼒先のS3バケットのパス
42 予測のエクスポート 指定したS3バケットのパスにファイル出⼒ ←予測結果データが ⼊ったCSVファイル
43 予測のエクスポート 以下の列項⽬を含む • item_id • date • p10, p50,
p90
44 ユースケース 1. Amazon Forecastとは 2. 時系列予測の基礎 3. コンソール上でのForecastの操作⼿順 4.
オープンデータを使った使⽤例
45 福岡市のインフルエンザ報告数 https://ckan.open-governmentdata.org/dataset/influenza401307fukuoka
46 データ仕様 データ期間︓2015年7⽉〜2019年8⽉(1週間刻み)
47 データの前処理 組み合わせて item_idに 年と週番号を週頭の 年⽉⽇に変換して timestampに そのまま target_valueに
48 データの前処理結果 item_id, timestamp, target_valueを持つデータに変換完了 item_idが⽇本語の値 → 問題なし ※但しファイルの⽂字コードがUTF-8になっていること
49 ここからはForcastの出番 あとは Forecast におまかせ︕
50 予測の可視化 ↑⽇本語のitem_id
51 予測の可視化
52 Bless you. インフルエンザには気をつけましょう
53 One more thing Quicksightに接続してみる
54 Quicksightで可視化
55 Quicksightで可視化
56 Quicksightで可視化
57 Quicksightで可視化
58 Quicksightで可視化
59 Quicksightで可視化
60 Quicksightで可視化 Go to demonstration.
まとめ
62 まとめ Amazon Forecastは機械学習の経験が無くても 使⽤可能な時系列予測サービス データの収集・前処理さえしておけばGUI上で ポチポチするだけで時系列予測ができる 幾つかの制限・課題はあるものの既に時系列データを 蓄積している幅広い分野で活⽤できる可能性がある
63 結論 Amazon Forecast はいいぞ
64