Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Kubernetesによる機械学習基盤への挑戦

1,532 views

Published on

2018年12月4日 Japan Container Days 講演資料
谷脇大輔

Preferred Networksでは1000個以上のGPUとInfiniBandからなるオンプレミスのクラスターを自社で構築しており、研究者が様々な目的、リソース量、実行時間の機械学習ジョブをKubernetes上で実行して研究成果を出しています。
KubernetesはKubeflowの登場など、機械学習基盤としても非常に注目されている一方で、現実的には未だ発展途上です。
講演では機械学習基盤としてのKubernetesの導入理由、その実用性と将来性、Preferred Networksの挑戦についてお話ししました。

Published in: Technology
  • Be the first to comment

Kubernetesによる機械学習基盤への挑戦

  1. 1. Daisuke Taniwaki, Engineer Preferred Networks, Inc. Kubernetesによる 機械学習基盤への挑戦 1 2018/12/4 Japan Container Days v18.12
  2. 2. 自己紹介 谷脇 大輔 (Daisuke Taniwaki) 職歴 2008~2012 Trend Micro - 未知の脅威を発見するWebクローラ 2012~2014 Kakaku.com - Tabelog USの立ち上げ 2014~2017 Kaizen Platform - Kaizen Optimization Platform 2017~現在 Preferred Networks - ジョブスケジューラやクラスター向けツール 技術領域 2 dtaniwaki dtaniwaki
  3. 3. Preferred Networksについて - 通称: PFN - ミッション - 設立: 2014年3月 - 所在地: - 東京都千代田区大手町(日本) - カリフォルニア州バークレー(米国) - 従業員数: 約200人 (技術者約90%、外国人約15%) 3 IoT時代に向けた新しいコンピュータを創造する あらゆるモノに知能をもたせ分散知能を実現する
  4. 4. PFNの事業 - IoT x 機械学習 - 交通システム - 産業用ロボット - バイオヘルスケア - パーソナルロボット 4
  5. 5. PFNのOSS - Chainer (Deep Learning) - Cupy (NumPy-like library for Cuda) - Menoh (DNN Inference) - ChainerX (C++ Implementation of low layers) - Optuna (Hyper parameter tuning) 5 New! New!
  6. 6. 本日の流れ - PFNの研究開発環境 - なぜKubernetesか - PFNの機械学習基盤の要件と実現方法 - 今後の機械学習基盤としてのKubernetes 6
  7. 7. PFNの研究開発環境 7 多種多様なデータ多種多様な研究 大量の機械学習ジョブ オンプレのGPUクラスター 自社開発した技術 Icon pack by Icons8 - https://icons8.com クラウドサービス との連携 Tesla P100 x 1024 Tesla V100 x 512
  8. 8. なぜKubernetesか - セキュリティ・プライバシー機能が充実 - Namespace, Pod Security Policy (PSP), RBAC, Virtual Networking, Network Policy - スケジューリングの機能が充実 - Label, Taint, Affinity, PriorityClass - 柔軟かつ容易な拡張 - Device/Volume plugin, Operator/CRD, Custom scheduler, Admission Controller - OSSかつエコシステムが充実 - 各種コマンドラインツール、オンラインドキュメント、サンプル、ナレッジベース 8 PFNの機械学習基盤の要件をカバー
  9. 9. PFNの機械学習基盤の要件と実現方法 - 多種多様な実験環境 - 効率的なスケジューリング - マルチテナント - 自由度の担保 - グランドチャレンジ 9
  10. 10. Container 多種多様な実験環境 10 Icon pack by Icons8 - https://icons8.com Icons by iconspng - https://www.iconspng.com NFS 大規模データ 小規模データ InfiniBand Device pluginでリソース化 Node Selectorで CPU/GPUの選択 Pod Affinityでできるだけホッ プ数が近い物理サーバに配置 k8s-host-device-plugin - https://github.com/everpeace/k8s-host- device-plugin - 静止画、動画、音声、テキスト - 深層学習、分散深層学習、強化学習 プライベート Dockerレジストリ
  11. 11. 効率的なスケジューリング 11Icon pack by Icons8 - https://icons8.com kube- throttler PriorityClass毎にユーザが実行できるPod数を制御 (例) 優先度毎に高:1、中:5、低:無限 Operator/CRD Custom Scheduler webhook Node PriorityClassによる プリエンプション - 分散深層学習向けのスケジューリング - 待ち時間による優先度の重みづけ スケジュール kube-throttler - https://github.com/everpeace/kube-throttler - 毎日、数百〜数千件のジョブ - 試行錯誤の実験 - ハイパーパラメータチューニング
  12. 12. Namespace User A マルチテナント 12Icon pack by Icons8 - https://icons8.com Namespace User B User B User A Namespace Project X Network Policy による通信制御 NFS Kerberos認証,LDAPの ユーザIDによるアクセス Namespace毎の メトリックス PSP, Admission Webhookに よりLDAPのユーザIDをセット RBACによるNamespace へのアクセス制御 - ユーザ毎、プロジェクト毎の環境 - コンフィデンシャルな案件
  13. 13. 自由度の担保 13Icon pack by Icons8 - https://icons8.com 自社製 実験ツール Kubectl NFS Homeにマウントして 物理サーバのように使う GPUを手軽に使いたい 様々なツールからの利用 kubectl exec 実行中のPodに 入ってデバッグ - 様々なリテラシの研究者 - 特定のツールでロックインしない - 実験環境の自由なカスタマイズ - 実行環境に直接入ってデバッグ
  14. 14. グランドチャレンジ - 全リソースを使った実験 - ImageNet in 15 minutes (Tesla P100 x 1024) - PFDet in the Kaggle 2018 Google AI Open Images (Tesla V100 x 512) - 日常のジョブはプリエンプションされる前提で使う - グランドチャレンジのジョブは最大の優先度 - 任意のタイミングで全GPUを使った実験が可能 14Icon pack by Icons8 - https://icons8.com
  15. 15. 今後の機械学習基盤としての Kubernetes 15
  16. 16. Kubernetesの機械学習基盤としてのトレンド 16 Ref: Kubeflow: Cloud-native machine learning with Kubernetes https://opensource.com/article/18/6/kubeflow - GoogleはAI-HubとKubeflow pipelinesを発表 - MicrosoftはKubeflow-labsを公開 - AWS, IBMは自社サービスでの利用方法をブログで公開 Kubernetes上で機械学習を行うための仕組み
  17. 17. PFNのKubernetesに対する取り組み - 機械学習基盤としてのKubernetesの改善に貢献 - OSSコントリビュート - ツールやプラグインの公開 - オンプレの機械学習基盤としてのKubernetes利用をリード - 民間企業の計算環境として国内最大級のGPUクラスター - Chainer等の自社開発した技術とKubernetesの親和性向上 - Chainer Operator for kubeflow 17
  18. 18. 18 Thank you!

×