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
540
機械学習プラットフォーム でのDocker利用事例 / DevSumiAbeja
toshitanian
February 15, 2018
Tweet
Share
More Decks by toshitanian
See All by toshitanian
エッジデバイスでディープラーニング! AWSを活用したエッジデバイスマネジメントの紹介/ aws-edge-device-deeplearning
toshitanian
1
2.1k
nvidia-jetson-x-deep-learning
toshitanian
0
1.5k
Amazon Kinesis Video Streams × Deep Learning
toshitanian
1
6.8k
急成長スタートアップのシステムの裏側 / ABEJA Innovation Meetup
toshitanian
0
1.3k
Docker入門 - Ruby on RailsアプリケーションをDockerで動かしてみる - / Introduction to Docker
toshitanian
7
2.9k
Other Decks in Technology
See All in Technology
データマネジメントのトレードオフに立ち向かう
ikkimiyazaki
6
1.2k
わたしのOSS活動
kazupon
2
310
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
2
860
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
240
Classmethod AI Talks(CATs) #17 司会進行スライド(2025.02.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol17_2025-02-19
shinyaa31
0
160
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
150
Reading Code Is Harder Than Writing It
trishagee
2
110
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
4
490
2.5Dモデルのすべて
yu4u
2
950
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
120
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
140
分解して理解する Aspire
nenonaninu
2
500
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
980
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Faster Mobile Websites
deanohume
306
31k
Navigating Team Friction
lara
183
15k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How GitHub (no longer) Works
holman
314
140k
Agile that works and the tools we love
rasmusluckow
328
21k
We Have a Design System, Now What?
morganepeng
51
7.4k
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 "