TensorFlowとGCPの簡単な紹介

 TensorFlowとGCPの簡単な紹介

B5e4cea01a88ca6e79a962b3e0004405?s=128

Norihiro Shimoda

April 01, 2017
Tweet

Transcript

  1. TensorFlowとGCPの話 By  Norihiro Shimoda 1

  2. ⾃自⼰己紹介 • 下⽥田倫倫⼤大(@rindai87) • データ分析専業の企業のエンジニアマネージャー • TensorFlow User  Group(TFUG)主催者 •

    最近GDE(Google  Developer  Expert)のML   Expertになりました
  3. 本⽇日のAgenda • TFUG(TensorFlow User  Group)のご紹介 • TensorFlowのご紹介 • GCPでのデータ分析/機械学習環境のご紹介 3

  4. TFUGのご紹介 by  Norhiro Shimoda 4

  5. What  is  TFUG  ? • 分散機械学習フレームワークであるTensorFlow のコミュニティです。 • 2016年年10⽉月に⽴立立ち上がりました。 公開⽤用では顔写真が⼊入ってるので割愛

  6. Meetup • ⽉月に⼀一度度程度度のペースでミートアップイベント を開催しています。 公開⽤用では顔写真が⼊入ってるの で割愛

  7. #  of  our  members 7

  8. 地域TFUGも • TFUG  AIZU(2016年年末に始動) • TFUG  KANSAI(5⽉月始動) • その他も増えるかも。。。? 8

    公開⽤用では顔写真が⼊入ってるので割愛
  9. How  to  join? グループ名:TensorFlow User  Group  Tokyo イベント情報を管理理しています。 https://tfug-‐‑‒tokyo.connpass.com/ グループ名:TensorFlow

    User  Group 各種情報交換の場として利利⽤用されています。 https://www.facebook.com/groups/17855923 5921208/
  10. TensorFlow概要 by  Norhiro Shimoda 10

  11. TensorFlowとは? • Googleによって2015年年11⽉月に公開されたオー プンソース – Google内部で多数の使⽤用実績があるらしい Google  Photo 画像の⾃自動分類 Google

     翻訳 翻訳の⾃自動学習 Gmail スパムフィルタ OK  Google ⾳音声認識識 11
  12. TensorFlowの歴史

  13. Googleトレンドで⽐比較 13

  14. TensorFlowのモデル 1. 学習モデルをグラフと して定義する 2. 学習を実際にどう⾏行行う かも定義する – 学習の評価⽅方法 –

    最適化の⽅方法 – CPU  or  GPU – スタンドアロン or  分散 3. 定義に従って計算処理理 をデバイス上で実⾏行行さ せる
  15. いろんなデバイスで動きます 15 CPU GPU Android iOS RasberryPi etc…

  16. ⽉月刊Interfaceでも特集されてます 16 https://www.amazon.co.jp/dp/B01MQT4OS8

  17. TensorBoardなどのツール

  18. 18 きゅうりの規格の⾃自動仕分け From:  http://workpiles.com/2016/02/tensorflow-­‐cnn-­‐cucumber/

  19. 空撮写真からの⾞車車両カウント 19 From:  http://www.brainpad.co.jp/news/2016/09/02/3454

  20. 技術的な部分も もっと知りたいという⽅方は 20 From:  https://goo.gl/7cgzwR

  21. ここまでのまとめ • TensorFlowは全世界的に⼤大⼈人気 – Googleが使ってるものが使える! – AlphaGOのインパクト! • TensorFlowに関わる⼈人もいろいろ –

    研究で使ってる学⽣生、先⽣生 – 趣味の延⻑⾧長で触っているWeb系開発者 – ディープラーニングを案件として扱う分析外⾞車車 – Android/iOS等のモバイルアプリの開発者 – 組み込み系のハードウェア寄りの開発者 – etc… 21
  22. GCP上の機械学習環境 22

  23. GCPのコンポーネントのアイコン 23 https://goo.gl/WOR5ej

  24. VisionAPIデモ 24 VisionAPIのお試しができます https://goo.gl/HpyrUH

  25. 機械学習いけそう!というイメージ 出典:https://cloud.google.com/products/ 超すごいGoogleの ⼈人⼯工知能の要素技術である 機械学習をクラウドで 簡単に使えそうな雰囲気! 25

  26. 結果、こういう流流れが できつつあります 26

  27. クラウドで 機械学習のAPI あるじゃない ↓ APIを使ってみる ↓ ビジネスニーズに 微妙にフィットしない ↓ スクラッチでやるしか

    ↓ 機械学習むずい \(^o^)/ 27
  28. 焦ってもすぐに機械学習⾃自体は 理理解できるようなりませんので、 かわりにデータ分析(機械学習 含む)の環境としてのGCPにつ い⾒見見てみましょう 28

  29. データ分析環境の前提 世の中には⾊色んな考え⽅方がありますが、、、 • 分析者が複数⼈人(それなりの数)いる • 分析するテーマがある程度度多岐に及んでいる – 当然、複数⼈人で1つのテーマの分析作業を⾏行行ったりする • 計算リソースが必要な分析も⾏行行う

    – ディープラーニングとか ディープラーニング登場以前/以後でも考え⽅方が少 し変わります 29
  30. 30 分析環境第1世代 • 各⼈人が⼿手元にそれぞ れの環境を構築する • データもそれぞれが 勝⼿手にとってきて⼿手 元のマシンに置いて いる状態

  31. 31 分析環境第2世代 • データソースは⼀一元 化しましょう、とい う流流れ • データを加⼯工するた めのDWHも導⼊入しま しょう、となりがち

  32. 32 分析環境第3世代 • そろそろ開発環境も 揃えたい、となって くる – 皆で作業分担するには 同じ環境じゃないとね 的な

    • ⼿手順書⽤用意したり、 VM配ったり、 Dockerを導⼊入したり
  33. ディープラーニング登場以後 ここまではディープラーニング登場以前の話でした。 ディープラーニングにはGPUが⽋欠かせませんので、 1. クラウドのGPU環境を使う – まだ黎黎明期のため、少々お⾼高い印象 – もちろんこっちでも良良い 2.

    オンプレでGPU環境を使う – 実験的に導⼊入するのであれば、ビデオカード分への投 資(⾼高々数万〜~⼗十数万円規模)でトライできる サービスに使う前のお試しの場合は2を選んでいる ⼈人(会社)が多い印象 33
  34. 34 分析環境第4世代 GPUのリソースは 限られているので 共⽤用の環境となる

  35. 問題1:クソクエリ問題 • みんなが同時にDWHを叩くと⼤大抵クソクエリが 発⽣生して、DWH管理理者と、作業しようとしてい た⼈人が影響を受けてしまいます 35 DWH管理理者 作業したかった⼈人 クソクエリに やられたDWH

  36. 問題点2:GPU借りまーす問題 • GPUを共⽤用で使うので、「借りまーす」「返し まーす」というやり取りが始まる • ⼀一度度借りるとなかなか返せない • 使いたい時はだいたい重なる 36

  37. つまり分析環境には何が必要か? • 無尽蔵で可⽤用性がある安価なストレージ • 前処理理のための⾼高性能かつ⼿手がかからないDWH • 計算リソース – 特にディープラーニングならGPUインスタンス •

    共通の作業環境を提供できる仕組み – AMIとか、コンテナとか、デプロイの⾃自動化とか 37
  38. 進⾏行行の都合上 おもむろにコマンドを 叩きます 38 $  jupyter notebook $  datalab create

     datalab-‐‑‒test
  39. 揃ってますよ、GCPならね 対応するものがちゃんと揃ってます。 • ストレージ:Google  Cloud  Storage(GCS) • DWH:BigQuery • 計算リソース:Google

     Compute  Engine(GCE) 39 この中で他のクラウドと⽐比較して特筆すべきは BigQueryですが、本⽇日の本論論ではないので 別の資料料などを参照してください
  40. Cloud  Datalab • JupyterをベースとしたGCP特化の分析環境 – Jupyterはデータサイエンティストに⼈人気のある notebookという形態のブラウザで作業できる分析環境 • Dockerイメージと周辺便便利利ツールの集合体 –

    Githubで公開されている(https://goo.gl/aEefim) • 発表から⻑⾧長らくBetaだったが、最近GAになった 40 From:  https://cloud.google.com/datalab/
  41. Cloud  Datalabの仕組み 41 GCE (instance) GCE (disk) ①GCEにインスタンスを⽴立立てる 永続化⽤用にディスクも付ける ネットワーク周りも設定

  42. Cloud  Datalabの仕組み 42 GCE (instance) GCE (disk) datalab (docker) ②DatalabのDocker

    imageを 起動させる
  43. Cloud  Datalabの仕組み 43 GCE (instance) GCE (disk) GCS datalab (docker)

    ③GCSにバックアップも作られる
  44. Cloud  Datalabの仕組み 44 GCE (instance) GCE (disk) GCS datalab (docker)

    BigQuery ④datalabからBigQueryが使える
  45. Cloud  Datalabの仕組み 45 GCE (instance) GCE (disk) GCS datalab (docker)

    BigQuery ⑤GCEのインスタンスのスペックは上げ下げできる
  46. 46

  47. 47 ???

  48. Cloud  Datalabの仕組み 48 GCE (instance) GCE (disk) GCS datalab (docker)

    BigQuery CloudML Engine ⑥CloudML Engineも使える
  49. Cloud  ML  Engineとは? • マネージドでスケーラブルな機械学習サービス – ??? • TensorFlowの動作環境をオンデマンドで提供 –

    distributedなTensorFlowも動かせる – GPUでのTensorFlowも動かせる • ⼤大規模にTensorFlowを使いたい時は⾮非常にあり がたいサービス – 逆に⼩小規模に試したいよってレベルだとあまり必要 ないかも。。。 49
  50. Cloud  Datalabで全てうまく いきそう!いい感じ! とうまくいかないのが 世の常でして。。。 50

  51. 惜しいよDatalab! • DatalabはGPUインスタンスに対応していませ ん。。。 • Pythonは2系のみ。。。 引き続き注⽬目です 51

  52. 詳しい話はQiitaにあげてます 52 From:  https://goo.gl/VncKTa

  53. とはいえGCPは⾯面⽩白い • 時間の都合で話しきれませんが、Google内部で 使われているテクノロジーがクラウドサービス として使えるようにしたものが多いので、⼤大変 ⾯面⽩白いサービスが多いです。 • データ分析周りで⾔言うと、、、 – Cloud

     DataFlow – Cloud  BigTable – Cloud  Spanner – Cloud  Dataprep などが個⼈人的には⾮非常に⾯面⽩白そうです。 53
  54. 本⽇日のまとめ • TensorFlowは世界中で注⽬目されています – 気になったらTFUGにジョインしましょう! • GCPもここ最近で⼀一気に⾯面⽩白くなっています – 気になったらGCPUGにジョインしましょう! 54

  55. 55 Thank  You!