Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TensorFlow on Mobile
Search
Arata Furukawa
September 11, 2016
Technology
0
130
TensorFlow on Mobile
「9/11 Deep Learning 学生無料勉強会@GMO Yours」
http://jagsc.connpass.com/event/36393/
上記イベントで発表したスライドです。
Arata Furukawa
September 11, 2016
Tweet
Share
More Decks by Arata Furukawa
See All by Arata Furukawa
TensorFlow Liteで機械学習Androidアプリを超簡単に作る
ornew
4
7k
みんなラズパイでTensorFlow Liteしよう?
ornew
2
2.3k
TensorFlowで作ったAIをAndroidアプリで実行する
ornew
0
1.7k
The Future of Mobile × ML
ornew
0
590
Let's use TensorFlow on Android!
ornew
0
450
TensorFlow on Android
ornew
1
2.2k
The motion recognition from the sensor values for wearable terminal
ornew
0
60
Other Decks in Technology
See All in Technology
AWS認定資格を取得したので、初めてマネコンを触った時を振り返ってみた。
ainatsuptr
2
100
推しは推せるときに推せ! プロダクトにフィードバックしていこう
nakasho
0
260
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
190
プラットフォームってつくることより計測することが重要なんじゃないかという話 / Platform Engineering Meetup #8
taishin
0
330
ServiceNow Knowledge 24の歩き方 EYストラテジー・アンド・コンサルティング
manarobot
0
180
アクセス制御にまつわる改善 / Improving access control
itkq
0
500
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
190
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
870
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
3
500
ユーザーストーリーのレビューを自動化したみたの
bun913
1
400
LLM とプロンプトエンジニアリング/チューターをビルドする / LLM and Prompt Engineering and Building Tutors
ks91
PRO
0
250
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
689
190k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
A designer walks into a library…
pauljervisheath
199
23k
Music & Morning Musume
bryan
41
5.6k
Embracing the Ebb and Flow
colly
79
4.1k
Rebuilding a faster, lazier Slack
samanthasiow
72
8.2k
The Power of CSS Pseudo Elements
geoffreycrofte
59
5k
Why Our Code Smells
bkeepers
PRO
331
56k
Being A Developer After 40
akosma
56
580k
Raft: Consensus for Rubyists
vanstee
132
6.3k
The Language of Interfaces
destraynor
151
23k
Fantastic passwords and where to find them - at NoRuKo
philnash
36
2.5k
Transcript
Tensorflow on Mobile 東海大学 理学部 日本Androidの会 学生部 古川新
古川 新 Arata Furukawa • 東海大学 理学部 ピカピカの1年生 • プログラミング、イラスト、デザインが趣味
• なんでもします!
Tensorflowとは
人工知能ライブラリでしょ、 そのくらい知ってるよ
厳密には 「人工知能(機械学習)のライブラリ」 は正しくない。
確かにTensorflowは、機械学習の研究を行って いたGoogleのエンジニアや研究者によって開発 されました。 しかし、Tensorflow自体は機械学習に限定され た用途で使用されるものではありません。
“ TensorFlow™ is an open source software library for numerical
computation using data flow graphs.
データフローグラフ型 汎用数値演算ライブラリ Deep Learningは莫大な計算資源を要求します。 その要求に応えるためには、抽象的でスケーラビリティかつ ポータビリティな、非同期並列で実行可能な数値演算の仕組 みが必要でした。 Tensorflowはまさにそれを実現するライブラリです。 機械学習に限らず、このライブラリ自体はどんな計算であって も応用可能です。
(オープンソース・ソフトウェア)
Tensorflow Graph Tensorflowはあらゆる数学演算をノードとエッジの有向グラ フで表現します。 また、TensorflowグラフはProtocol Buffers形式で シリアライズできます。 シリアライズされた抽象グラフは他のプラットフォーム・アーキ テクチャ・デバイスでも扱えます。
Deep Neural Networks ディープニューラルネットワーク(DNN)は巨大な行列演算のグ ラフで表現できます。 よって、DNNも同様にTensorflowグラフとして表現すること ができます。
Distributed TensorFlow Tensorflowの真価は分散処理にあります。Tensorflowでは データ並列が透過的に行なえます。 コードにほとんど手を加えることなく、マシンリソースにスケー ルした適切なスケジューリングの最適化などを全て自動で行 い、演算をスケールアウトします。 高度な分散処理数値演算ライブラリ、それがTensorflowの真 の姿です。
「Large Scale Distributed Systems for Training Neural Networks (Jeff Dean
& Oriol Vinyals Google)」より引用
学習と実行の 非対称性
一般的な演算コスト 学習コスト > 実行コスト
学習の演算コスト 1. 規模にも依るが、膨大な回数の 反復学習が必要←ほぼこれ 2. 誤差の逆伝搬など学習用の 計算量が多い 一般的に知られているように、訓練には 莫大な計算資源が必要となる。 「AlphaGo
の試合に用いられた Google のディープラーニング専用サーバ」 Google Cloud Platform Japan Blogより
実行の演算コスト 1. 反復実行 →要らない 2. 誤差逆伝搬したりする分の計算量 →要らない
学習に莫大なコストがかかるニューラルネットワークも、 モバイルで動きます
“ TensorFlow Android Camera Demo https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/android
GitHubのTensorflowリポジトリに AndroidでTensorflowを 実行するサンプルが公開されている。
http://goo.gl/ CtLXYm ※使用は自己責任でお願いします ※他の場所にアップロードしたり しないでください
サンプルビルドについて 何か話すことがあれば話す (未定)
モバイルアプリに 組み込んでみた
None
Tensorflowによる リバーシAI Androidアプリ
Android Firebase プレイデータを自動送信 AIが定期的に自動更新される Tensorflo w
Data Server Run Tensorflow Firebase Realtime Database C++ Java Protocol
Buffers JNI Reversi OSUSHIの構成:Androidアプリ側 HTTPS Android App
True Portability Tensorflowグラフは非常にポータビリティが高い。 配布されたモデルを利用したり、更にそれを学習させたりする ことが容易です。
「モデルさえあれば…」 Tensorflow学習済みモデルの配布/利用は容易です。 抽象化されたグラフを表現したProtocol Buffers形式のテキ ストorバイナリデータでしかないからです。 実際に配布されているモデルも出始めており、今後増加する と思われます。 もしかしたら、モデルリポジトリなんてものが今後出てくるか も?
新しいアプリ開発の形? ニューラルネットワークは処理能力に乏しいモバイルプラット フォームでも利用できます。 人工知能はモデルさえあれば一般的なアプリに組み込むこと が可能な段階にあるのです。
ご清聴ありがとうございました。