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
機械学習プラットフォーム でのDocker利用事例 / DevSumiAbeja
Search
toshitanian
February 15, 2018
Technology
1
520
機械学習プラットフォーム でのDocker利用事例 / DevSumiAbeja
toshitanian
February 15, 2018
Tweet
Share
More Decks by toshitanian
See All by toshitanian
エッジデバイスでディープラーニング! AWSを活用したエッジデバイスマネジメントの紹介/ aws-edge-device-deeplearning
toshitanian
1
2k
nvidia-jetson-x-deep-learning
toshitanian
0
1.5k
Amazon Kinesis Video Streams × Deep Learning
toshitanian
1
6.7k
急成長スタートアップのシステムの裏側 / ABEJA Innovation Meetup
toshitanian
0
1.2k
Docker入門 - Ruby on RailsアプリケーションをDockerで動かしてみる - / Introduction to Docker
toshitanian
7
2.8k
Other Decks in Technology
See All in Technology
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
370
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
290
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
5
580
Terraform Stacks入門 #HashiTalks
msato
0
350
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
Can We Measure Developer Productivity?
ewolff
1
150
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
強いチームと開発生産性
onk
PRO
33
11k
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
Featured
See All Featured
Navigating Team Friction
lara
183
14k
A designer walks into a library…
pauljervisheath
203
24k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Building Applications with DynamoDB
mza
90
6.1k
BBQ
matthewcrist
85
9.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
The Pragmatic Product Professional
lauravandoore
31
6.3k
GraphQLとの向き合い方2022年版
quramy
43
13k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Speed Design
sergeychernyshev
24
610
Transcript
機械学習プラットフォーム でのDocker利用事例 スタートアップなエンジニアLT! 〜スタートアップはどんな技術を駆使して開発を行っているのか?〜 ABEJA, Inc Toshiya Kawasaki 15-E-7 #devsumiE
2018/02/15
河崎 敏弥 @toshitanian ABEJA, Inc. Platform Division Lead Engineer •創業1年の時にABEJAに参画
•バックエンドエンジニア •クラウド上でシステム構築 •IoTデバイスとのシステム連携 •コンテナ •エッジコンピューティング
None
機械学習のプロセス 4 入力データ 学習 推論 教師データ モデル モデル 入力 入力
学習 推論結果 推論 デプロイ
機械学習のプロセス + 周辺システム 5 入力データ 学習 推論 教師データ モデル モデル
入力 入力 学習 推論結果 推論 デプロイ データ蓄積/データセット管理/ジョブの管理 /コードの管理/ログ・メトリクス/デバイス管理/etc… 周辺システム
•学習フェーズ •推論フェーズ •クラウドサーバでの推論 •エッジデバイス上での推論 •マイクロサービス Dockerの使い所 6
•特徴 •ジョブの起動時間が長い(数時間〜数週間) •GPUを使って学習する •現在の構成 •Kubernetesのクラスタを作っている •GPUのノードをたくさんぶら下げている •nvidia-docker2経由でコンテナがGPUを使える 学習フェーズ 7
•特徴 •アプリケーションによってCPUで処理するか、GPUで処理するか変わる •HTTPでモデルをサーブする・バッチ処理でデータを処理するの大きく2種類の使い方 •現状の構成 •モデルの利用形式によりECSとAWS Batchを使い分けている •HTTPでモデルをサーブする場合: ECS •クラスタを分けてCPU/GPUノードへのスケジュールをしている •バッジ処理で利用する場合:
AWS Batch •全てスポットインスタンス 推論フェーズ - クラウドサーバ上 - 8
•特徴 •リソース制約がある(CPU/メモリ/etc…) •ネットワーク制約がある。 •常時インターネット接続があるとは限らない •NAT超え •現状の構成 •AWS IoTをベースに、デバイスへDockerコンテナをデプロイ •ARMアーキテクチャ向けのDocker Imageを利用している
•基本的にDockerを動かす事によるオーバーヘッドは無い 推論フェーズ - エッジデバイス上 - 9
•特徴 •学習⇔推論プロセスをユーザが運用するための周辺システム •データ管理/ジョブ管理/デプロイ管理/コード管理/デバイス管理/etc… •現状の構成 •基本的に全てのAPIサーバはDockerでデプロイ •ECSのひとつのクラスタで全てのAPIサーバを同居させている •ちなみに、マイクロサービスの前段に独自のAPIゲートウェイ マイクロサービス 10
•基本的に全てのアプリケーションはDockerコンテナとして動かしている •AWSのサービスやKubernetesを用途に合わせて使い分けている •7分では話しきれないので、詳細は別の機会で… ! まとめ 11 "