【勉強会メモ】Mix Leap Study#12-TensorFlow Dev Summit 2018 Recap
- 日時:2018/04/25(水) 19:00 〜 22:00
- 場所:ヤフー株式会社 富国生命オフィス
3月にアメリカで行われたTensorFlow Dev Summit 2018の振り返り会がヤフーさんとGDG神戸さん共同で開催されました。軽く触ったことがある程度であまり詳しくありませんが、アプリ側から間接的に利用するケースは増えてきそうで技術的に無視できないので参加してきました。
ニューラルネットの構造自動決定というのは、プログラミングで例えると自動でリファクタリングするアルゴリズムみたいなものなんでしょうか?わかるようでわからん感じです。
TensorFlow.jsによってこの分野にもJSが浸透していきそうな雰囲気を感じました。もはやJSが書ければなんでもできる時代になりつつあります。TensorFlow Hubのような形で学習モデルだけを切り出して共有する流れが広まれば、Deep Learningの知識がなくても学習モデルだけ持ってきてアプリに組み込むことができそうなので、JSで手軽に扱えるのはアプリ側にとってもDeep Learningの活用を身近にするきっかけにもなりそうだと感じました。
Recap of TensorFlow DevSummit 2018
藤原様 (Google Developers Experts、TFUGオーガナイザー)
Tensor Flow Dev Summitとは
- 日本からGoogle Developer Expertの3人が参加
- 年に一度のTech Conference
- 去年から開催
- 会場:Computer History Museum
- 1トラック19セッション
- 15分/セッション
面白そうだった話題
多言語対応:TensorFLow.js
- 20%ルールから発生
- deeplearn.jsがTensorFlow.jsと名前を変えて正式にTensorFlowのプロジェクトに取り込まれた
- JSで学習から推論まで可能
- GPUにも対応
- Python版とも互換性があってモデルを読み込める
Demo
- ブラウザ上で絵文字に対応した物体を探して写真を撮ると判定してくれる
emojiscavengerhunt.withgoogle.com
今年のエイプリルフールネタ
- 手書きタイプのキーボード
- TensorFlow.jsが使われている
- 約45,000の学習
TensorFlow Hub
- 学習済のモデルを簡単に共有するための仕組み
- 決められた形式でモデルをWeb上においておけば統一的な方法で読み込むことができる
- 論文のモデル公開
Distributed TensorFlow
- 分散学習の新しい機能
- 今回はsingle node + multi GPUで使える機能
All Reduce
- Parameter server的な役割なし
- ワーカー同士が通信し合う
- Chainerでも採用されている
- Distribution strategyをEstimatorに渡すだけで使用可能
Eager Execution
- 従来:グラフを構築⇒計算を実行
- デバッグが難しい
- Eagerモード:逐一必要なものから実行されていく
- 計算は即時実行される
Define and Run(Graph)とDefine by Run(今回対応したEagerモード)
- 試行錯誤段階はEagerモードが良さそう
- 速度もそこまで遅くない
TFX(TensorFlow Extended)
- MLシステムの中でMLコードはごく一部
- 汎用的な機械学習プラットフォーム
- TensorFlow Model Analysis
- Apache Beam + Jupyter Notebookで可視化
Tensor Board Plugin + Debugger
- Deep Learningはデバッグが難しい
- TensorBoard上でデバッグ
ニューラルネットの構造自動決定
Googleがかなり力を入れている研究分野
- 学習が上手くいく層の積み方を自動で探索
- 職人芸的な知識が無くてもできるように
- Cloud Auto ML Visionでも既に活用されている
[1707.07012] Learning Transferable Architectures for Scalable Image Recognition
まとめ
※補足
Swift for Tensor Flowは4月中に出るらしい
TensorFlow, AI and Mobile Models!
Laurence Moroney様(Google)
全編英語だったためあまりメモが取れていません。。
以下の従来のプログラミングとMLの違いを「パラダイムシフト」として強調されていました。
Classical Programming
- Rules & Data : input
- Answers : output
Machine Learning
- Answer & Data : input
- Rule : output
Machine Learning for Tic-Tac-Toe
3x3マスの○×ゲーム(英語ではTic-Tac-Toeと言うらしい)の例でルールベースの従来型プログラミングとMLの違いを説明。論文にもなっている有名な事例らしい。
Multi PlatformでのTensor Flowの活用についての説明。
- TensorFlow Lite Size
- Mobileアプリのデモ
LT:医療分野のAI化
NakaHiroさん
医療分野における
- AI化に向けた現場の状況
- AI化が進まない背景
- AI化に向けた動向
- Appleの試み
などについて