Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
機械学習どこから手をつけよう? Google DevFest 2018 Tokyo
Search
Kazusa
September 01, 2018
Technology
1.4k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
機械学習どこから手をつけよう? Google DevFest 2018 Tokyo
Google DevFest 2018 Tokyo (
https://tokyo2018.gdgjapan.org/ml
)
Kazusa
September 01, 2018
More Decks by Kazusa
See All by Kazusa
20190208_MLSE_NeurIPS2018_tkazusa.pdf
tkazusa
1
830
受託分析屋がKubeflowを使って思うこと_KubeflowMeetup_1.pdf
tkazusa
2
2.6k
機械学習システム開発及び運用にかかる 不確実を考慮した要件定義の考察および提案
tkazusa
0
380
【論文読み】GCVAE-GAN Fine-Grained Image Generation through Asymmetric Training
tkazusa
0
160
【論文読み】Graph Convolutional Networks for Classification with a Structured
tkazusa
0
80
Other Decks in Technology
See All in Technology
現場を動かすAIエージェント#2_製造業現場でのAI活用から見た、ハマる罠と実践知
kintotechdev
2
180
re:Invent の去年のスケジュールを公開します!
miu_crescent
PRO
0
300
デザインレビューは自動化できるのか?─ Flutter × Figma で UI 品質保証を考える
techiro
2
800
試験勉強はGrokBotでやれ
maigo999
0
110
FinOpsを導入してマルチプロダクトのコスト最適化を実現する
kworkdev
PRO
0
140
Kiro 入門 (1 つのエージェントを、どの画面からでも) | 目指せ Kiro マスター 01
inariku
PRO
3
790
公共分野での生成AI活用
toru_kubota
1
230
ライフワーク「猫でもわかるDirectConnect」
kentapapa
0
180
ゼロから作るWebアプリの新定番!?Amplify Gen 2 × AWS Blocksで実現する「開発速度とRDBの柔軟性のいいとこ取り」
amixedcolor
1
160
攻撃 3 時間 vs 復旧 10 時間。アクセスキー流出の非対称性を体感するために CTF を作った話
kazzpapa3
1
150
Flutter Widget Previewerで始めるUIプレビューとVRTの自動化
sakusaku3939
0
210
Consistency for mere mortals - A gentle guide to consistency
ufried
0
120
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.9k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
570
A Modern Web Designer's Workflow
chriscoyier
699
190k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
610
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
580
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
470
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
680
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
900
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Unsuck your backbone
ammeep
672
58k
Transcript
機械学習どこから 手をつけよう? 2018/9/1 Google DevFest 2018 Tokyo
自己紹介 • 上総 虎智 Taketoshi Kazusa • Github: tkazusa /
Twitter: @tkazusa • BrainPad Inc. 分析官 • 最近の興味範囲 機械学習システムの継続的デプロイ
このセッションで話すこと ✕:機械学習とはなにか ✕:アルゴリズムそのものの話 ✕:機械学習のフレームワークについて ✕:機械学習サービスの使い方について ◯:機械学習使った「手元で動く何か」を作るまでの考え方 ◯:機械学習アプリのプロトタイプを作るために便利なものの整理 ◯:プロトタイプを作った後の話を少し
Agenda • 機械学習で今何ができるんだっけ • 実際どこから手をつければいいんだろう • ちゃんとプロダクトに仕上げるために • まとめ
機械学習で今何ができるんだっけ
Solving problems with AI for everyone
自動運転での活用:Waymo
目をスキャンして心疾患を予測
Google Glassでスマートファクトリー AI on Google Glass Drives the Factory to
the Future (Cloud Next '18) https://www.youtube.com/watch?v=yL-LXKrpcvE&feature=
機械学習どこから手を付けよう
さっさと プロトタイプ つくっちゃおう
プロトタイプから作っちゃいましょう • 機械学習はどこまでも“やってみないとわからない”がつきまとう • プロトタイプを作る難易度は圧倒的に下がってきている • 実際に使えるプロダクトにするのは結構距離がある プロトタイプ作ってみて、取り組む価値のあるものだと思ったら プロダクトに仕上げて行くので良いのでは?!
プロトタイピングするときに考えること • 機械学習モデルの学習・実装 「どれだけ楽できるか」、「どれだけシンプルにできるか」 • 学習済モデルのデプロイ先 どこにあるリソースとデータで推論を実行するか? まずは「いったん動くものを作ってみる」という観点では下記を検 討すれば良いと思います。
プロトタイピングするときに考えること よく言われる「機械学習は技術的負債になりやすい」は実感としてあり、 なるべく使わない、使うにしてもシンプルにする意識が必要そうです。 機械学習が 本当に必要? 新たなデータの 学習が必要? 手元にモデルが 必要? 新たにモデル作る
必要がある? 論文などから モデルを実装 既存モデルへ 独自データを学習 APIサービス 既存モデルの 推論活用 転移学習 既存モデルの 微調整じゃ無理? ルールベースで対応 データ可視化&人の判断 No Yes
プロトタイピングするときに考えること 今まで一般的だったのはPythonやRでモデルを作ってWebアプリとして デプロイだったが、様々なサービスの発展でデプロイ先の選択肢も増え てきました
プロトタイピングするときに考えること 今まで一般的だったのはPythonやRでモデルを作ってWebアプリとして デプロイだったが、様々なサービスの発展でデプロイ先の選択肢も増え てきました • 遅延が少ない • オフライン環境でも動く • データがデバイス上に留まる
• 電力効率が良い • センサーデータを直接扱える
プロトタイピングするときに考えること 今まで一般的だったのはPythonやRでモデルを作ってWebアプリとして デプロイだったが、様々なサービスの発展でデプロイ先の選択肢も増え てきました • 遅延が少ない • オフライン環境でも動く • データがデバイス上に留まる
• 電力効率が良い • センサーデータを直接扱える
プロトタイピングするときに考えること 今まで一般的だったのはPythonやRでモデルを作ってWebアプリとして デプロイだったが、様々なサービスの発展でデプロイ先の選択肢も増え てきました
どうやってモデルを実装する? どこにデプロイする? を整理したら あとはアイデアを 形にしていく
統計や数学について、 学ばなくて良いんですか?
プロトタイプを作る中で、 必要になったタイミングで 学べば良いのでは?
機械学習モデル開発に便利なサービス
プロトタイピングするときに考えること よく言われる「機械学習は技術的負債になりやすい」は実感としてあり、 なるべく使わない、使うにしてもシンプルにする意識が必要そうです。 機械学習が 本当に必要? 新たなデータの 学習が必要? 手元にモデルが 必要? 新たにモデル作る
必要がある? 論文などから モデルを実装 既存モデルへ 独自データを学習 APIサービス 既存モデルの 推論活用 転移学習 既存モデルの 微調整じゃ無理? ルールベースで対応 データ可視化&人の判断 No Yes
プロトタイピングするときに考えること よく言われる「機械学習は技術的負債になりやすい」は実感としてあり、 なるべく使わない、使うにしてもシンプルにする意識が必要そうです。 機械学習が 本当に必要? 新たなデータの 学習が必要? 手元にモデルが 必要? 新たにモデル作る
必要がある? 論文などから モデルを実装 既存モデルへ 独自データを学習 APIサービス 既存モデルの 推論活用 転移学習 既存モデルの 微調整じゃ無理? ルールベースで対応 データ可視化&人の判断 No Yes • まずは特定のタスクに対応したAPIサービ スを探す • 機械学習を適用したいデータを入力する と結果が帰ってくる • 手元にモデルはない状態、モデルの変更 もできない
プロトタイピングするときに考えること よく言われる「機械学習は技術的負債になりやすい」は実感としてあり、 なるべく使わない、使うにしてもシンプルにする意識が必要そうです。 機械学習が 本当に必要? 新たなデータの 学習が必要? 手元にモデルが 必要? 新たにモデル作る
必要がある? 論文などから モデルを実装 既存モデルへ 独自データを学習 APIサービス 既存モデルの 推論活用 転移学習 既存モデルの 微調整じゃ無理? ルールベースで対応 データ可視化&人の判断 No Yes • 世界中の研究者やエンジニアが開発した 学習済機械学習モデルを借りてきて使う • 「(タスク名) 有名なモデル」とかでググ ると大体出てくる • 最近はTensorFlow Hubにまとめられつつ ある
プロトタイピングするときに考えること よく言われる「機械学習は技術的負債になりやすい」は実感としてあり、 なるべく使わない、使うにしてもシンプルにする意識が必要そうです。 機械学習が 本当に必要? 新たなデータの 学習が必要? 手元にモデルが 必要? 新たにモデル作る
必要がある? 論文などから モデルを実装 既存モデルへ 独自データを学習 APIサービス 既存モデルの 推論活用 転移学習 既存モデルの 微調整じゃ無理? ルールベースで対応 データ可視化&人の判断 No Yes • 学習済モデルだと作者が想定したタスク& 対象しかしか対応できない • 似たタスクだけど独自の対象に適応したい ような場合は既存モデルに独自のデータ セットを学習させるのが良い • 手元の環境で学習させたり、マネージドな 環境を使うなどから選択する
プロトタイピングするときに考えること よく言われる「機械学習は技術的負債になりやすい」は実感としてあり、 なるべく使わない、使うにしてもシンプルにする意識が必要そうです。 機械学習が 本当に必要? 新たなデータの 学習が必要? 手元にモデルが 必要? 新たにモデル作る
必要がある? 論文などから モデルを実装 既存モデルへ 独自データを学習 APIサービス 既存モデルの 推論活用 転移学習 既存モデルの 微調整じゃ無理? ルールベースで対応 データ可視化&人の判断 No Yes • 解決したいタスクに対して独自のアイデアで 挑む場合 • 学習については既存モデルと同様手元の環境 で学習させたり、マネージドな環境を使うな どから選択する • データに併せて独自のモデルを構築してくれ るAutoMLの登場でここも自動化の波が
機械学習モデルのデバイスへの デプロイに便利なサービス
None
TensorFlow Lite デバイス上でTensorFlowのモデルを動かすために、モデルを軽量化して保存し、 デバイス上で動かすためのランタイムを提供する仕組み。アプリからのインタ フェースはJava/C/C++/Pythonなどで実装可能。 https://www.youtube.com/watch?v=ByJnpbDd-zc
None
ML Kit for Firebase Firebaseでのアプリ開発に機械学習モデルを便利に組み込むためのの仕 組み。 • iOSとAndroidのSDKがある • Base
APIsとカスタムモデルの両方をサポート • On-DeviceとCloud AI inference APIsを使い分けられる
None
TensorFlow.js JavascriptでTensorflowが取り扱えるようになりました。 • JavascriptでTensorflowのモデルを書いたり学習させたりできる • 既存の学習済モデルを簡単にインポートしてくることができる • インポートしたモデルを再学習させることもできる Machine Learning
in JavaScript (TensorFlow Dev Summit 2018) https://www.youtube.com/watch?v=YB-kfeNIPCE
None
None
自作TFモデルを色んなところにデプロイしたい toco TensorFlow.js converter Bonnet Compiler モデル構築 フォーマット 変換 モデルの実行
自作TFモデルを色んなところにデプロイしたい toco TensorFlow.js converter Bonnet Compiler モデル構築 フォーマット 変換 モデルの実行
Demo
Observableとは
Observableとは Jupyter notebookのJavascript版みたいなもの
Observableとは
物体検出をブラウザ上で動かしてみる https://goo.gl/vF2oV4
物体検出をブラウザ上で動かしてみる https://goo.gl/vF2oV4
プロダクトに仕上げるために
プロダクトに仕上げるために • 機械学習モデルは使い続けてこそ価値がある しかし、機械学習モデル(というかデータ)は水物 開発し終わった瞬間からメンテし続けないとだめ • その機械学習モデルは本当に使って良いモデル? 機械学習モデルの公平性 機械学習アプリのプロトタイプを作ることはかなりハードル下がっ て来ましたが、あくまでもプロトタイプ。機械学習モデルを使うと
いう観点から考えなければいけないことがたくさんあります。
機械学習システムの継続的デプロイ 機械学習は1回学習させて「モデルができました!」となるような ものは少なく、データの傾向の変遷などから定期的に学習をさせて モデルを刷新させなければいけないような場合があります。 • 製品の需要予測、季節の変化や新製品の投入、プロモーションの 変化をモデルに取り込まなければ • ニュース記事についての分析、時代とともに「やばい」の意味が 変わってきているのに対応しなければ
機械学習システムの継続的デプロイ • モデルの再学習は定期的?それとも精度の劣化がトリガー? • 再学習させるデータの質はどの程度変化しているのか? • 新しいデータを学習させたモデルは以前のモデルとどのように挙 動が変化しているのか? • データ、機械学習モデル、コンフィグ、学習スクリプトのバー
ジョン管理は? • その再学習後のモデル、本番にデプロイしていい?テストどうす る? 機械学習は1回学習させて「モデルができました!」となるような ものは少なく、データの傾向の変遷などから定期的に学習をさせて モデルを刷新させなければいけないような場合があります。
機械学習モデルの公平性 機械学習モデルを使うことによって差別を生み出してしまうかもしれない ことに注意を払って置く必要があるのではないでしょうか。 https://developers.google.com/machine-learning/fairness-overview https://www.propublica.org/article/machine-bias-risk-assessments-in-criminal-sentencing
まとめ
まとめ • 「機械学習モデルの開発が簡単」はもちろん、機械学習アプリのプ ロトタイプ開発のハードルも下がってきた • 重要な課題を解決するのに、必ずしも難しい手法を使う必要はない 機械学習の応用ではシンプルな方法が継続活用には良いかもしれ ない • 今ある技術で解決できる/すべき課題はなにかを考えて実際に手を
動かすのが大事になってきているのでは
ありがとうございました http://www.brainpad.co.jp/recruit/ 株式会社ブレインパッドの採用情報見て下さい