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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
NIIKURA Ryota
May 23, 2018
Technology
330
1
Share
TensorFlow.jsに保存機能が実装された件
最近話題のTensorFlow.jsですが、ついに待ちに待ったモデルの保存機能が実装されました。これでWebGLを使ったGPU計算が捗りますね!ということで、とりあえず使ってみました。
NIIKURA Ryota
May 23, 2018
More Decks by NIIKURA Ryota
See All by NIIKURA Ryota
SwooleでLaravelを高速化してみる
niisantokyo
0
5.2k
新人さんでもテストを書くべきだっていう話
niisantokyo
1
1k
一次元畳み込みフィルターによる音声データのオートエンコーダ
niisantokyo
1
3.8k
タグ付けデプロイの話
niisantokyo
1
1.2k
PHP-FPMのコンテナログ2重出力問題
niisantokyo
0
270
Laradockの紹介
niisantokyo
0
1k
deeplearnjsの紹介
niisantokyo
1
250
ひたすら楽して、PHPアプリをコンテナ運用の縮小版
niisantokyo
0
870
PHPでニューラルネットを作った話
niisantokyo
2
4k
Other Decks in Technology
See All in Technology
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
6
720
React、まだ楽しくて草
uhyo
7
3.7k
APIテストとは?
nagix
0
170
Dynamic Workersについて
yusukebe
2
560
「コーディング」しない人のための Claude Code 入門 ChatGPT の次の一歩 — 業務に組み込む 育成・共有・自動化
rfdnxbro
2
970
Spring AI × MCP 入門〜AIエージェントへのツール公開、境界設計から始める最小構成 〜
yuyamiyamoto
0
200
OpenID Connectによるサービス間連携
takesection
0
150
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
160
Javaコミュニティをもっと楽しむための9箇条
takasyou
0
940
サイバーセキュリティ概論 / Introduction to Cybersecurity
ks91
PRO
0
110
大規模災害時でも高い信頼性を維持するアプリケーション基盤の実現/nikkei-tech-talk46
nikkei_engineer_recruiting
0
130
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
310
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
Facilitating Awesome Meetings
lara
57
6.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
How to make the Groovebox
asonas
2
2.2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
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の必要あり ) • モデルのセーブ機能が実装されました。 • セーブ機能はまだ発展途上に思います
以上、お疲れ様でした