Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
機械学習プラットフォーム でのDocker利用事例 / DevSumiAbeja
toshitanian
February 15, 2018
Technology
1
420
機械学習プラットフォーム でのDocker利用事例 / DevSumiAbeja
toshitanian
February 15, 2018
Tweet
Share
More Decks by toshitanian
See All by toshitanian
エッジデバイスでディープラーニング! AWSを活用したエッジデバイスマネジメントの紹介/ aws-edge-device-deeplearning
toshitanian
1
1.6k
nvidia-jetson-x-deep-learning
toshitanian
0
1.2k
Amazon Kinesis Video Streams × Deep Learning
toshitanian
1
6.1k
急成長スタートアップのシステムの裏側 / ABEJA Innovation Meetup
toshitanian
0
1.1k
Docker入門 - Ruby on RailsアプリケーションをDockerで動かしてみる - / Introduction to Docker
toshitanian
7
2.6k
Other Decks in Technology
See All in Technology
Exploring MapStore Release 2022.02: improved 3DTiles support and more
simboss
PRO
0
390
OVN-Kubernetes-Introduction-ja-2023-01-27.pdf
orimanabu
1
440
創業1年目のスタートアップでAWSコストを抑えるために取り組んでいること / How to Keep AWS Costs Down at a Startup
yuj1osm
3
2.2k
OCI技術資料 : ロード・バランサー 詳細 / Load Balancer 200
ocise
2
7.2k
ラズパイとGASで加湿器の消し忘れをLINEでリマインド&操作
minako__ph
0
150
インフラ技術基礎勉強会 開催概要
toru_kubota
0
180
Dockerに疲れた人のためのLXDではじめるシステムコンテナ入門
devops_vtj
0
120
IoT から見る AWS re:invent 2022 ― AWSのIoTの歴史を添えて/Point of view the AWS re:invent 2022 with IoT - with a history of IoT in AWS
ma2shita
0
280
金属加工屋の営業マンがSTマイクロで・・・
usashirou
0
170
NGINXENG JP#2 - 3-NGINX Plus・プロダクトのアップデート
hiropo20
0
250
Google Cloud Workflows: API automation, patterns and best practices
glaforge
0
100
CUEとKubernetesカスタムオペレータを用いた新しいネットワークコントローラをつくってみた
hrk091
1
290
Featured
See All Featured
Teambox: Starting and Learning
jrom
124
7.9k
The Web Native Designer (August 2011)
paulrobertlloyd
76
2.2k
Testing 201, or: Great Expectations
jmmastey
25
5.7k
Designing on Purpose - Digital PM Summit 2013
jponch
108
5.9k
Raft: Consensus for Rubyists
vanstee
130
5.7k
How to train your dragon (web standard)
notwaldorf
66
4.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
24
4.6k
How GitHub (no longer) Works
holman
298
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
56
2.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
22
43k
Pencils Down: Stop Designing & Start Developing
hursman
114
10k
Art Directing for the Web. Five minutes with CSS Template Areas
malarkey
197
10k
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 "