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.jsに保存機能が実装された件
Search
NIIKURA Ryota
May 23, 2018
Technology
1
280
TensorFlow.jsに保存機能が実装された件
最近話題のTensorFlow.jsですが、ついに待ちに待ったモデルの保存機能が実装されました。これでWebGLを使ったGPU計算が捗りますね!ということで、とりあえず使ってみました。
NIIKURA Ryota
May 23, 2018
Tweet
Share
More Decks by NIIKURA Ryota
See All by NIIKURA Ryota
SwooleでLaravelを高速化してみる
niisantokyo
0
4.5k
新人さんでもテストを書くべきだっていう話
niisantokyo
1
810
一次元畳み込みフィルターによる音声データのオートエンコーダ
niisantokyo
1
3.1k
タグ付けデプロイの話
niisantokyo
1
980
PHP-FPMのコンテナログ2重出力問題
niisantokyo
0
220
Laradockの紹介
niisantokyo
0
960
deeplearnjsの紹介
niisantokyo
1
220
ひたすら楽して、PHPアプリをコンテナ運用の縮小版
niisantokyo
0
780
PHPでニューラルネットを作った話
niisantokyo
2
3.8k
Other Decks in Technology
See All in Technology
実践的なバグバウンティ入門
scgajge12
4
2.4k
Eventual Detection Engineering
ken5scal
0
1.3k
ロリポップ! for Gamersを支えるインフラ/lolipop for gamers infrastructure
takumakume
0
120
Evolving DevOps Teams and Flexible Organizational Culture
kakehashi
1
250
LLVM/ASMを使った有限体の高速実装
herumi
0
110
なぜクラウドサービスで Web コンソールを提供するのか
shuta13
4
2k
Optuna: a Black-Box Optimization Framework
pfn
PRO
1
100
Functional TypeScript
naoya
10
4.5k
Privacy Sandbox on Android / DroidKaigi 2024
7pairs
1
160
バックログを導入し やっぱやめた話
ota42y
0
200
スーパーマリオRPGのリメイク版の変更点からみるUX
nishiharatsubasa
1
320
App Router を実プロダクトで採用して見えてきた勘所をちょっとだけ紹介
marokanatani
0
760
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
85
5.6k
No one is an island. Learnings from fostering a developers community.
thoeni
18
2.9k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Bootstrapping a Software Product
garrettdimon
PRO
304
110k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
Unsuck your backbone
ammeep
667
57k
The Mythical Team-Month
searls
218
43k
It's Worth the Effort
3n
182
27k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
103
48k
Code Reviewing Like a Champion
maltzj
518
39k
Web Components: a chance to create the future
zenorocha
308
41k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
28
1.6k
Transcript
TensorFlow.jsにモデルの保 存機能が実装された件 Meguro.es #15 @ Drecom 2018/5/22 @niisan-tokyo
ワタシ • 右の写真の顔をしたおっさん • エンジニア歴 6年くらい • PHPer歴 ≒ エンジニア歴
• 現在の所属会社、ニジボックス歴は2.5年くら い • 最近のブームは機械学習で音楽生成するって いうテーマ • PCを買い替えてしまった
PHPerだけど、ちゃんとJavaScript の話ししますね
TensorFlow.js
TensorFlow.jsとは • WebGLを使って、間接的にGPUを使えるようにした、ブラウザで動かすための機 械学習ライブラリ • 記法がTensorFlowに寄せられているため、TensorFlowに慣れている人だったら、 簡単に習熟できる ( かもしれない )
• Kerasのレイヤーも取り込んでいるので、Kerasに慣れている人でも簡単に習熟で きる ( かもしれない ) • 元deeplearn.js
改名してTensorFlowのファミリーになりました https://speakerdeck.com/niisantokyo/deeplearnjsfalseshao-jie 発表後1ヶ月程度でout of dateと なったワタシの発表
余波 https://github.com/wan2land/php-tensorflow ( 意訳 )このプロジェクトはWebでTensorflowするためのものだったんだけど、 tensorflow.jsっていうもっと良いものができたんで、そっちつかうといいよ!このプロジェク トはここまでだぜ! マジかよ。。。
TensorFlow.jsになってできるようになったこと • TensorFlow ( python )で出力された学習済みモデルを直接イ ンポートできるようになった ( pip instal
tensorflojs ) • Kerasの出力したモデルもインポートできるようになった • モデルを保存することができるようになった ( 現時点から4日 ほど前 )
やったぜ! セーブ機能が入りました!! セーブ先は • local storage • indexedDB • download
• HTTP/HTTPS request
使ってみる
save_test.js 今回はlocal storageに データをしまってみる
load_test.js modelをその ままロードし ている図
JSで機械学習のナニモカもができてしまう 時代が来てしまった!!
ちょっとあれな点 • model.fit 中はプログレスバーのような途中経過を出す機能が まだ実装されていない ( not implement?) • KerasやTensorFlowの学習済みモデルを一旦別のライブラリ
で変換する必要がある ( これは仕方ない ) • local storage には容量制限がある • Conv1D でsave and loadしたら、バグった
エラー 時系列データを1次元畳み込みフィルターをかけて解析しようとしているやつ 生成した時は普通に動く
エラー 普通にモデルを呼んで学習を再開しようとしているシーン
エラー んー? 最後の層の形状が [1600, 1] になるべきって書いてある? これ以外にもエラーが発生している箇所があるらしい。 まだ畳み込みは早かったかも
まとめ • deeplearn.jsがTensorFlow.jsになってました。 • TensorFlow.jsになったら、Kerasの書き方が使えるようになり ました。 • TensorFlow, Kerasの学習済みモデルをロードすることができ るようになりました
( convertの必要あり ) • モデルのセーブ機能が実装されました。 • セーブ機能はまだ発展途上に思います
以上、お疲れ様でした