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
Airflow+SageMakerで安定稼動する機械学習バッチインフラへ
Search
Tech Leverages
June 30, 2023
Technology
0
4.2k
Airflow+SageMakerで安定稼動する機械学習バッチインフラへ
Airflow+SageMakerで安定稼動する機械学習バッチインフラへ
Tech Leverages
June 30, 2023
Tweet
Share
More Decks by Tech Leverages
See All by Tech Leverages
今日から始める技術的負債の解消
leveragestech
2
64
ドキュメントとの付き合い方を考える
leveragestech
2
160
開発者体験を向上させる ボトムアップな組織改善
leveragestech
1
150
市場価値の高いエンジニアを 目指そう!!
leveragestech
2
40
より快適なエラーログ監視を目指して
leveragestech
5
1.6k
絶賛設計中!参画者のエンゲージメントを最大化する体験重視のオンボーディング
leveragestech
1
95
SREが強化するべき組織のケイパビリティ
leveragestech
0
77
DevOps実現のための私たちのSREのあり方
leveragestech
1
63
アウトプット=アウトカムではない世界で開発生産性を考える
leveragestech
4
740
Other Decks in Technology
See All in Technology
受託開発でもアジャイル開発できました / Agile in Contract Development
takaking22
10
4.7k
Slackbot × RAG で実現する社内情報検索の最適化
howdy39
2
350
入社半年(合計1年)でGoogle Cloud 認定を全冠した秘訣🤫
risatube
1
250
DenoでもViteしたい!インポートパスのエイリアスを指定してラクラクアプリ開発
bengo4com
2
2k
トークナイザー入門
payanotty
2
1k
塩野義製薬様のAWS統合管理戦略:Organizations設計と運用の具体例
tkikuchi
0
220
New Relicを活用したシステム監視の強化とオブザーバビリティ向上
sugoto911
1
110
I tried the newly introduced certification "Applied Skills" on Microsoft Learn
mappie_kochi
0
270
Product Utilization of Large Language Models Starting Today
ymatsuwitter
3
1.6k
Oracle Database 23ai 新機能#4 Application Continuity
oracle4engineer
PRO
0
130
Oracle Database 23ai 新機能#4 Real Application Clusters
oracle4engineer
PRO
0
170
クレジットカードを製造する技術
yutadayo
83
49k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.5k
Building Applications with DynamoDB
mza
90
6k
Embracing the Ebb and Flow
colly
84
4.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
43
6.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2k
Music & Morning Musume
bryan
46
6.1k
Automating Front-end Workflow
addyosmani
1365
200k
How to Ace a Technical Interview
jacobian
275
23k
Facilitating Awesome Meetings
lara
49
6k
Debugging Ruby Performance
tmm1
73
12k
Transcript
Airflow+SageMakerで安定稼動す る機械学習バッチインフラへ テク戦MLOpsチーム 古賀
自己紹介 古賀悠太(4年目)、テクノロジー戦略室 MLOpsチーム 機械学習周辺のシステムの開発 /運用 - レコメンドAPIの実装 - 機械学習パイプラインの実装 ほんと時間ないので、プロフィール貼っときます
https://lvgs.docbase.io/posts/1267498
話すこと - 機械学習バッチが増えても、安定して動き、運用工数がなるべくかからないシステ ム構成
旧システムでのデータサイエンティスト開発/運用状況
旧システムでのデータサイエンティスト開発/運用状況 怪しい匂い ・開発環境と本番環境を兼ねてる ・なるべく被らないように、定期実行設定 (機械学習はメモリ食うので)
何が辛いの? - バッチ数が増えると、実行時間を被らせないのが大変に - 可用性の懸念 - 実行時間が被ると、共倒れする - 機械学習はリソース食うので、共倒れ発生しやすい -
運用工数の懸念 - そもそも何がいつ実行されているのか管理必要 - 一度書いて終わりじゃない サーバー使用表の抜粋
解決策 - 各バッチのインフラを分離 - 死んでも他へは影響しない →共倒れしない - 実行時間が被っても良いので、好きなタイミングで実行できる →他のバッチを考えなくて良い
導入技術 Airflow - スケジューラー - Pythonで実行タイミングと処理を記述 - 今回は順次ワーカーを起動するだけ AWS SageMaker
Processing Job - ワーカー - ECSタスクみたいなもの - Dockerイメージをpullして実行 - CPU / GPU / メモリを指定可能
システム構成とデプロイフロー ※開発はまだGCE。許して。
Airflowの他のメリット - 依存関係定義が楽 - コストカット - 必要なリソースだけ稼動するので - リトライ設定簡単 -
通知設定簡単 - 実行履歴やログ見れる などなど Pythonでの定義 taskA >> [taskB, taskC] >> taskD
まとめ - 機械学習バッチが増えても、安定して動き、運用工数がなるべくかからないシステ ム構成にできた - 役割で分割して、負荷面のスケーラビリティを担保する手法はよくある - Message QueueとかDBのWriter /
Readerとか - イケテナイシステムにも敬意を持ちたい