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 SageMakerが存在しない世界線 のAWS上で実現する機械学習基盤
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
貞松政史
June 08, 2023
Technology
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Amazon SageMakerが存在しない世界線 のAWS上で実現する機械学習基盤
2023/06/03 JAWS-UG Okayama 2023のピンチヒッターセッション
※内容はAKIBA.AWS ONLINE #9の再演です
貞松政史
June 08, 2023
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
2.3k
みんな大好き強化学習
sadynitro
0
1.4k
機械学習エンジニアはMLOpsの夢を見るか?
sadynitro
1
1.5k
Other Decks in Technology
See All in Technology
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
1
1.5k
OpenTelemetry eBPF Instrumentationの舞台裏 / Behind the Scenes of OpenTelemetry eBPF Instrumentation
ymotongpoo
4
1.1k
株式会社シーエーシー エンジニア向け会社紹介資料
cac
0
57k
2026/09/10 Spring Bootから Jakarta EE/MicroProfileへの移行
megascus
0
340
enechainの内製セルフサービスプラットフォーム
hiyosi
0
160
Oracle Cloud Infrastructure IaaS 新機能アップデート 2026/6 - 2026/8
oracle4engineer
PRO
0
170
AI 駆動 Terraform 開発/SRE_BizReach_MIXI_2
visional_engineering_and_design
4
2.1k
#jawssonic2026 あの時代が悪かった ~動かなかったSageMakerと共に迎えたイベント当日~
ktkn1129
0
150
AI時代、データエンジニアが一番おもろい
genshun9
0
180
AI時代に顧客へ最速で価値を 届けるための試行錯誤 〜「AI × マネジメント」領域におけるmentoのケース〜
posterkeisuke
0
110
GoCon2026 - Open Source, Open World
sanposhiho
4
3.4k
アリアドネの糸と、20年ごとの建て替え ── 長尾真『電子図書館』を、伊勢で読み直す / Rereading Makoto Nagao’s "Electronic Library" in Ise
ykiyota
0
160
Featured
See All Featured
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
720
Skip the Path - Find Your Career Trail
mkilby
1
230
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
270
For a Future-Friendly Web
brad_frost
183
10k
Faster Mobile Websites
deanohume
310
32k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Darren the Foodie - Storyboard
khoart
PRO
3
3.9k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Transcript
Amazon SageMakerが存在しない世界線 のAWS上で実現する機械学習基盤 2023.06.03 JAWS-UG Okayama 2023 1
2 ⾃⼰紹介 info award ˞.BDIJOF-FBSOJOHΧςΰϦ • ఃদ ࢙ʢαμϚπ Ϛαγʣ •
5XJUUFSJE!TBEZ@OJUSP • Ϋϥεϝιουגࣜձࣾ %"ࣄۀຊ෦ ػցֶशνʔϜ Ϛωʔδϟʔ • ΦΧϠϚίϯϐϡʔλαΠΤϯεϥϘओ࠵
3 AWSで… AWSで機械学習と⾔えば Amazon SageMaker︕
4 本当に…︖ 本当にそれだけ︖
5 状況は様々 • 現在の環境をそのまま流⽤したい • 部分的に⼩さく始めたい • サービスのお作法を気にしたくない • コストが気になる
• 他の環境への移植も考慮したい
6 ご紹介します Amazon SageMakerを使⽤しない アーキテクチャをご紹介
7 おしながき • 機械学習基盤に必要な要素 • 仮想マシンを使うアーキテクチャ • コンテナを活⽤したアーキテクチャ • サーバーレスアーキテクチャ
• パイプライン処理やCI/CDを考える • 実験管理やモニタリングはどうする︖
8 機械学習基盤に必要な要素 • 機械学習基盤に必要な要素 • 仮想マシンを使うアーキテクチャ • コンテナを活⽤したアーキテクチャ • サーバーレスアーキテクチャ
• パイプライン処理やCI/CDを考える • 実験管理やモニタリングはどうする︖
9 MLOpsを考慮した機械学習基盤 MLOps: 機械学習における継続的デリバリーと⾃動化のパイプライン https://cloud.google.com/architecture/mlops-continuous-delivery-and-automation-pipelines-in-machine-learning Google Cloudが定義するMLOps (レベル別) • MLOpsレベル
0 : ⼿動プロセス • MLOpsレベル 1 : MLパイプラインの⾃動化 • MLOpsレベル 2 : CI/CDパイプラインの⾃動化
10 機械学習基盤に必要な要素 データ蓄積 デプロイ 推論実⾏ 学習パイプライン 評価 検証 推論 学習
前処理 データ 抽出 再学習 トリガー ロギング モニタリング 実験管理 特徴量ストア
11 仮想マシンを使うアーキテクチャ • 機械学習基盤に必要な要素 • 仮想マシンを使うアーキテクチャ • コンテナを活⽤したアーキテクチャ • サーバーレスアーキテクチャ
• パイプライン処理やCI/CDを考える • 実験管理やモニタリングはどうする︖
12 Amazon EC2を利⽤ (⾮推奨) • 如何ようにでもできる • データ抽出、前処理、学習、 推論、デプロイまで1台でも 完結できる
(⾮推奨) • とはいえ実装コスト、管理 コストが爆増 • 少なくとも各処理フェーズ ごとにコンテナで管理する べき Amazon EC2 Database Amazon S3
13 コンテナを活⽤したアーキテクチャ • 機械学習基盤に必要な要素 • 仮想マシンを使うアーキテクチャ • コンテナを活⽤したアーキテクチャ • サーバーレスアーキテクチャ
• パイプライン処理やCI/CDを考える • 実験管理やモニタリングはどうする︖
14 コンテナを利⽤したコンピューティング • Amazon ECS • フルマネージドなコンテナオーケストレーション • AWS Fargateをコンピューティング環境とするサーバー
レスなコンテナ実⾏ • AWS Batch • ジョブキューやコンピューティング環境、実⾏パラメー タ等を定義したバッチジョブのパッケージ • 実際に実⾏されるのはECSタスク • 実⾏環境はAWS Batchによって制御される
15 Amazon ECSを利⽤した学習・推論環境 • Amazon ECRからコンテナ イメージを取得して実⾏ • 定義されたタスクを呼び出し •
コンピューティング環境と してEC2とFargateが選択 できる Amazon S3 Amazon ECS AWS Fargate Amazon EC2 Database OR Amazon ECR Amazon API Gateway AWS Lambda
16 Amazon ECSを利⽤するメリット・デメリット • メリット • 実⾏環境や処理をコンテナに押し込めているのでポータ ビリティが⾼い • コンピューティング環境のスケーラビリティが⾼い
• Fargateを利⽤したサーバーレスなコンテナ実⾏ • デメリット • EC2利⽤(主にGPU利⽤想定)の場合はコスト⾼め • コールドスタート含めオーバーヘッドがある
17 AWS Batchを利⽤した学習・推論環境 • ジョブキュー、コン ピューティング環境、 ジョブ定義等を設定 • 定義されたジョブを呼 び出し
• 裏側でECSタスクが実 ⾏される Amazon S3 Amazon ECS AWS Fargate Amazon EC2 Database OR Amazon ECR Amazon API Gateway AWS Lambda AWS Batch Amazon EventBridge
18 AWS Batchを利⽤するメリット・デメリット • メリット • ECSのメリットをそのまま享受できる • EC2利⽤でもプロビジョニングから停⽌まで実⾏制御してくれる 為コスト低め
• スポットインスタンス利⽤でコストを下げる選択肢もある • ジョブキューを搭載しているので、⼤量の同時実⾏制御に向いて いる • デメリット • オーバーヘッドがかなりかかる為、⼩さな処理をたくさん実⾏す るようなワークロードには向かない
19 サーバーレスアーキテクチャ • 機械学習基盤に必要な要素 • 仮想マシンを使うアーキテクチャ • コンテナを活⽤したアーキテクチャ • サーバーレスアーキテクチャ
• パイプライン処理やCI/CDを考える • 実験管理やモニタリングはどうする︖
20 AWS Lambda (コンテナデプロイ)を利⽤ ;JQ ίϯςφ ετϨʔδॴ S3 ECR ετϨʔδαΠζ্ݶ
Ϧʔδϣϯ୯Ґ 75GB (上限緩和可能) ECRのクォータに準拠 ΞʔςΟϑΝΫταΠζ্ݶ 250 MB (展開後) 10 GB -BZFSରԠ あり なし ίʔυॺ໊ あり なし Lambda Functionのデプロイ形式の違いによる制限の違い https://aws.amazon.com/jp/builders-flash/202103/new-lambda-container-development/
21 AWS Lambdaを利⽤する場合の注意事項 • アーティファクトサイズ上限10GB • 同時実⾏数上限1000(同⼀アカウント同⼀リージョン内) • タイムアウト時間上限15分 •
メモリ割り当て上限10GB • Lambda Functionから「ファイル書き込み」ができる領域 は「/tmp」のみ (かつストレージ上限10GB) • Lambda⽤のコンテナイメージ作成時に幾つかお作法が存 在する(Dockerfileの書き⽅など)
22 AWS Lambdaを利⽤した推論エンドポイント • Lambda Functionで学習済みモデルを読み 込んで推論処理を実⾏する • コンテナ⾃体に学習済みモデルファイルを 詰め込むとファイルサイズが膨らむので、
S3に配置して実⾏時に読み込む⽅式 を推奨 • API Gatewayのタイムアウトが最 ⼤29秒なので、実際にはLambda Functionの処理を呼び出した段階でレスポ ンスを返して⾮同期に処理することを想定 Amazon S3 Amazon ECR Amazon API Gateway AWS Lambda
23 パイプライン処理やCI/CDを考える • 機械学習基盤に必要な要素 • 仮想マシンを使うアーキテクチャ • コンテナを活⽤したアーキテクチャ • サーバーレスアーキテクチャ
• パイプライン処理やCI/CDを考える • 実験管理やモニタリングはどうする︖
24 AWS CodePipeline・AWS CodeBuildを利⽤ • コードリポジトリに対するプッシュをトリガー • 最新のコードで再学習を実⾏ • 学習済みモデルをデプロイ
開発者 AWS CodeBuild AWS CodePipeline Amazon EventBridge AWS CodeCommit GitHub OR Event AWS CodeDeploy AWS Cloud 推論実⾏ 環境 学習実⾏ 環境
25 実験管理やモニタリングはどうする︖ • 機械学習基盤に必要な要素 • 仮想マシンを使うアーキテクチャ • コンテナを活⽤したアーキテクチャ • サーバーレスアーキテクチャ
• パイプライン処理やCI/CDを考える • 実験管理やモニタリングはどうする︖
26 Amazon AthenaやAmazon DynamoDBを利⽤ • 管理したいデータ • 学習データセット本体 (保存先) •
特徴量 • ハイパーパラメータ • コスト重視 (サーバーレスでストレージコストが安価) • SageMaker Feature Storeも裏側はAthena Amazon Athena Amazon DynamoDB
27 Amazon CloudWatchやAmazon EventBridgeを利⽤ • CloudWatchのカスタムメトリクスを使⽤して必要なデータを送信 • メトリクス値を利⽤してCloudWatch Alarmを設定 •
EventBridge経由で再学習をトリガー • SNS経由で通知を送信 開発者 AWS CodeBuild AWS CodePipeline Amazon EventBridge Event AWS CodeDeploy AWS Cloud 推論実⾏ 環境 学習実⾏ 環境 Amazon CloudWatch カスタムメトリクス送信 Amazon SNS
28 まとめ
29 まとめ • 機械学習基盤の要件は様々 • 幾つかの選択肢として、Amazon SageMakerを 利⽤しないアーキテクチャについてご紹介 • AWSのサービスを組み合わせることで要件を満たす
環境を柔軟に構築 • ポータビリティを重視して、主要な処理をコンテナ に押し込める⽅針が筋としては良さそう
30