Upgrade to Pro — share decks privately, control downloads, hide ads and more …

受託分析屋がKubeflowを使って思うこと_KubeflowMeetup_1.pdf

7a3a196960a5ecc428d6b995bdbcf598?s=47 Kazusa
September 26, 2018

 受託分析屋がKubeflowを使って思うこと_KubeflowMeetup_1.pdf

Kubeflowでモデルをデプロイする時に必要になってくる、学習(実験)の管理やモデル管理について話しました

7a3a196960a5ecc428d6b995bdbcf598?s=128

Kazusa

September 26, 2018
Tweet

Transcript

  1. 受託分析屋がKubeflow を使って思うこと 2018/9/26 Kubeflow Meetup #1 (Cloud Native Meetup Tokyo

    #5) Taketoshi Kazusa @tkazusa
  2. 自己紹介 • 上総 虎智 Taketoshi Kazusa • Github: tkazusa /

    Twitter: @tkazusa • BrainPad Inc. 分析官 • 最近のおもちゃ Kubeflow 0.1
  3. 自己紹介 • 上総 虎智 Taketoshi Kazusa • Github: tkazusa /

    Twitter: @tkazusa • BrainPad Inc. 分析官 • 最近のおもちゃ
  4. 今日のお題 KubeCon CloudNativeCon Europe 2018

  5. 今日のお題

  6. 今日のお題

  7. Continuous integration & deployment of models • Every night my

    model is automatically retrained on my latest logs • If the new model is better it is automatically pushed into production
  8. MLシステム継続的デプロイこんな感じ? アプリケーション エンジニア データサイエンティスト MLエンジニア Experiment Jobs (Training) ML Service

    Services App image ML Training image ユーザー ・data ・model ・config Storage k8a k8a Container Repository
  9. MLシステム継続的デプロイこんな感じ? Experiment Jobs (Training) ML Service Services App image ML

    Training image ・data ・model ・config Storage k8a k8a Container Repository アプリケーション エンジニア データサイエンティスト MLエンジニア ユーザー
  10. MLシステム継続的デプロイこんな感じ? Experiment Jobs (Training) ML Service Services App image ML

    Training image ・data ・model ・config Storage k8a k8a Container Repository アプリケーション エンジニア データサイエンティスト MLエンジニア ユーザー
  11. なんか良さげ けど、これで全部いける?

  12. Serving自動でいいんでしたっけ? Experiment Jobs (Training) ML Service Services App image ML

    Training image ・data ・model ・config Storage k8a k8a Container Repository アプリケーション エンジニア データサイエンティスト MLエンジニア ユーザー
  13. ワンクッション挟みたくなる Experiment Jobs (Training) ML Service Services App image ML

    Training image ・data Storage k8a k8a ・メトリクスひとつじゃない ・セグメントごとの指標 ・機械学習の公平性 ・学習(実験)時の試行錯誤の 結果を一覧で見たい ・model ・config Serving model ・model ・config ・model ・config Container Repository アプリケーション エンジニア データサイエンティスト MLエンジニア ユーザー
  14. ワンクッション挟みたくなる アプリケーション エンジニア データサイエンティスト MLエンジニア Experiment Jobs (Training) ML Service

    Services App image ML Training image ユーザー ・data Storage k8a k8a ・メトリクスひとつじゃない ・セグメントごとの指標 ・機械学習の公平性 ・Train時の試行錯誤の結果を 一覧で見たい ・model ・config Serving model ・model ・config ・model ・config Experiment Management
  15. ワンクッション挟みたくなる アプリケーション エンジニア データサイエンティスト MLエンジニア Experiment Jobs (Training) ML Service

    Services App image ML Training image ユーザー ・data Storage k8a k8a ・メトリクスひとつじゃない ・セグメントごとの指標 ・機械学習の公平性 ・Train時の試行錯誤の結果を 一覧で見たい ・model ・config Serving model ・model ・config ・model ・config IntegrateされるTFMA 一瞬、話題になったCometML 話題にすらならいmlflow
  16. TensorFlow Model Analysis (TFMA) • モデルをデプロイする場合に必要な評価を探索的にも行える • ああ

  17. Experiment management tools • いつ、だれが、どのスクリプト、どんなハイパラで学習させて、ど んな評価になったのか?が一覧性を持って管理したい • なんなら、必要に応じて検索できて欲しい

  18. Experiment management tools • いつ、だれが、どのスクリプト、どんなハイパラで学習させて、ど んな評価になったのか?が一覧性を持って管理できる • 必要に応じて検索ができる

  19. Experiment management tools • いつ、だれが、どのスクリプト、どんなハイパラで学習させて、ど んな評価になったのか?が一覧性を持って管理できる • 必要に応じて検索ができる Katibでいける? 大嶋さんに聞き

    たくなった。
  20. Experiment management tools • いつ、だれが、どのスクリプト、どんなハイパラで学習させて、ど んな評価になったのか?が一覧性を持って管理できる • 必要に応じて検索ができる デ、データ。。。

  21. Experiment management tools • いつ、だれが、どのスクリプト、どんなハイパラで学習させて、ど んな評価になったのか?が一覧性を持って管理できる • 必要に応じて検索ができる

  22. 欲しくない? 僕は欲しい。

  23. 人間挟んでServingで終わり? アプリケーション エンジニア データサイエンティスト MLエンジニア Experiment Jobs (Training) ML Service

    Services App image ML Training image ユーザー ・data Storage k8a k8a ・model ・config Serving model ・model ・config ・model ・config Container Repository
  24. Serveし終わったモデルってどうしてる? アプリケーション エンジニア データサイエンティスト MLエンジニア Experiment Jobs (Training) ML Service

    Services App image ML Training image ユーザー ・data Storage k8a k8a ・model ・config Serving model ・model ・config ・model ・config Serving model Serving model Serving model ・モデルの挙動に対する説明責任 ・機械学習の公平性 ・再現性の担保 ・過去のモデル/データ/コ ンフィグの版管理 Container Repository
  25. 過去に作ってServeしたモデルってどうしてる? アプリケーション エンジニア データサイエンティスト MLエンジニア Experiment Jobs (Training) ML Service

    Services App image ML Training image ユーザー ・data Storage k8a k8a ・model ・config Serving model ・model ・config ・model ・config Serving model Serving model Serving model ・モデルの挙動に対する説明責任 ・機械学習の公平性 ・再現性の担保 ・過去のモデル/データ/コ ンフィグの版管理 Model Management
  26. 過去に作ってServeしたモデルってどうしてる? アプリケーション エンジニア データサイエンティスト MLエンジニア Experiment Jobs (Training) ML Service

    Services App image ML Training image ユーザー ・data Storage k8a k8a ・model ・config Serving model ・model ・config ・model ・config Serving model Serving model Serving model ・モデルの挙動に対する説明責任 ・機械学習の公平性 ・再現性の担保 ・過去のモデル/データ/コ ンフィグの版管理 まだない?
  27. 試行錯誤中。

  28. まとめ • “Continuous integration & deployment of models“をシンプルに実 装できるならまじ良さげ •

    けど、毎日再学習&良ければPushが最適解じゃ無い場合もある • Experiment ManagementやModel Management、Model Analysis に期待しているけど、まだもうちょっと先になるのかな • もしくは他のツールとの組み合わせ?試行錯誤中
  29. ありがとうございました http://www.brainpad.co.jp/recruit/ 株式会社ブレインパッドの採用情報見て下さい

  30. 参考情報 • https://schd.ws/hosted_files/kccnceu18/d4/Kubeflow_Deep_Dive.pdf • https://medium.com/tensorflow/introducing-tensorflow-model- analysis-scaleable-sliced-and-full-pass-metrics-5cde7baf0b7b • https://www.mlflow.org/docs/latest/tracking.html#tracking-ui