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
Google Colabを転移学習・モデル変換に使ったりAPIサーバーで使おうとした話 / Y...
Search
you(@youtoy)
PRO
April 08, 2021
Technology
1
5.7k
Google Colabを転移学習・モデル変換に使ったりAPIサーバーで使おうとした話 / YurufuwaML vol.6
you(@youtoy)
PRO
April 08, 2021
Tweet
Share
More Decks by you(@youtoy)
See All by you(@youtoy)
"かわいい" がテーマのハッカソンでWebの技術を使って魔法の世界を作った話など / HTML5 10th Anniversary
you
PRO
0
56
ブラウザで AI・機械学習が扱える TensorFlow.js が使われているライブラリなどの話 / #さくらのAI Meetup vol.4「ブラウザ」
you
PRO
0
130
Blynk と Raspberry Pi Pico W で IoT 〜 MQTT・HTTPリクエストの組み合わせも 〜 / IoTLT vol.114
you
PRO
0
270
AIを活用したWebアプリのプロトタイプを作ってコンテストや展示に出してみた話 / 大阪工業大学 ネットワークデザイン学科 LT大会 2024v2
you
PRO
0
64
Babylon.jsと色々なものを組み合わせる:ブラウザのAPIやガジェットや2D描画ライブラリなど / Babylon.js 勉強会 vol.3
you
PRO
0
490
WebHID API で Joy-Con・DUALSHOCK 4 のセンサーをブラウザから利用する / IoTLT vol.109
you
PRO
0
230
UIFlow 2.0 で MQTT をやってみた! / IoTLT vol.108
you
PRO
0
2.5k
UIFlow 2.0 と ATOMS3 の組み合わせで LINE通知を試す / ビジュアルプログラミングIoTLT vol.16
you
PRO
0
450
技術コミュニティの中での生成AI(自身の観測範囲での事例について) / 23 Xmas Talk / 20231209
you
PRO
0
1.5k
Other Decks in Technology
See All in Technology
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
220
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
310
OCI Security サービス 概要
oracle4engineer
PRO
0
6.4k
Can We Measure Developer Productivity?
ewolff
1
120
元旅行会社の情シス部員が教えるおすすめなre:Inventへの行き方 / What is the most efficient way to re:Invent
naospon
2
310
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
140
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
380
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
150
Amazon CloudWatch Network Monitor のススメ
yuki_ink
0
170
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
110
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
280
[FOSS4G 2024 Japan LT] LLMを使ってGISデータ解析を自動化したい!
nssv
1
190
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
A designer walks into a library…
pauljervisheath
202
24k
KATA
mclloyd
29
14k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
GraphQLとの向き合い方2022年版
quramy
43
13k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
It's Worth the Effort
3n
183
27k
Building Adaptive Systems
keathley
38
2.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Designing the Hi-DPI Web
ddemaree
280
34k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Transcript
Google Colabを転移学習・モデル変換に 使ったりAPIサーバーで使おうとした話 2021年4月8日 (木) ゆるふわマシンラーニング vol.6 豊田 陽介 (
@youtoy )
豊田陽介(@youtoy) 自己紹介 普段は、某通信会社の研究所勤務 話題のものを たくさん購入 してる気がする ビジュアルプログラミング・IoT 関連など主催、運営・登壇も ガジェット好き その他
IT系イベント主催・登壇・運営、多数参加 子ども向けの活動いろいろ(IT系以外も) プライベートでの活動
過去のコミュニティ活動中 での機械学習関連の話 (学習を含むもの)
Maker Faire出展で使った音の機械学習 https://www.youtube.com/watch?v=Ve6TyzzmXck Googleさんの Teachable Machine の音を対象にした機械学習を利用 (+Web Bluetooth API
)
「小さい子でも分かる・ 楽しめる」を機械学習で実現
機械学習が使われた仕組み を活用した話
ブラウザ上で両手を認識(+矩形描画) Googleさんの MediaPipe Hands のサンプルに少し矩形の描画処理 を追加してみたもの
ブラウザ上で両手を認識(+3D描画など) Googleさんの MediaPipe Hands と p5.js による 3D描画や画像の 透過表示
某アニメの悪役の「とっておきの手品」 Googleさんの MediaPipe Hands と p5.js による画像の透過表示
学習に関しては主に Teachable Machine 後の活用事例のほうは TensorFlow.js
一方、今回の主役は Google Colab や TensorFlow Lite など
タイトルに書いていた 「転移学習・モデル変換・ APIサーバー」の話へ
None
「TensorFlow Lite Model Maker」が便利! 1)Google Colabでの転移学習 モバイル向けなどの「TensorFlow Lite」の転移学習を簡単に 行える仕組み(コードもすごくシンプル)
簡単に転移学習!(画像分類の例) 1)公式チュートリアルを Google Colab で開く 2)Google Colab にデータセットをアップ 3)データ読み込み処理の記載を少し変更 4)Google
Colab上でボタンをポチポチ ※ 公式のデータセットを使うなら 2・3 は不要
TensorFlow Lite はスマホ用公式サンプルがある 機械学習モデルを作った後は
【余談】 TensorFlow Lite の 公式サンプルを 流用してみた事例
Teachable Machineとの組み合わせ 機械学習モデルを「TensorFlow Lite(量子化済み)」で出力 画面の下に認識結果や確信度の 表示が出てくる(動的に変化)
モデルの出力の部分 TensorFlow Lite > 量子化済み を選択
転移学習がクラウド上 での処理のみで完了!
次は「モデル変換:Core ML Tools(Lobe)」の話
とある事情により、初心者向けの「機械学習による 画像分類 + 独自データセットによる転移学習 + iPhone上での推論実行」をあれこれ探してた 先ほどの話をやり始めた背景 そんな中、Microsoftさんの Lobe のスタータープロジェクト
の話を(ニュースレターより)
とりあえず、 iPhoneで実機ビルド
ふと思った ⇒ Lobe のサンプルのモデルを Lobe 以外で作ったものにできるかな? 2)Core ML Toolsでモデル変換 【確認したり調べたり】
・Lobe のスタータープロジェクトのモデルは Core MLっぽい ・Core ML Tools という機械学習モデルをCore ML の形式に 変換する Pythonパッケージがあるっぽい ・Python ってことは、Colab上で使えたりするかも?
ちなみに、Core ML Tools の ページはこれ
再度Teachable Machineとの組み合わせ 画面の下の結果表示は、 TensorFlow Lite のサンプル とは違ってる
機械学習モデルの変換関連で行ったこと 1)Teachable Machine のサイト上での学習 2)モデルを TensorFlow > Keras で出力 3)Google
Colab上にモデルをアップロード 4)Google Colab上に Core ML Tools を インストールし変換プログラムを書く 5)変換後のモデルをゲット!
モデルの出力・変換処理の一部
転移学習・モデル変換が クラウド上での処理のみで!
最後は「APIサーバ」の話 ※ 道半ばの部分
ふと思った ⇒ Google Colab を APIサーバー的に 使う方法はないか? 3)Google ColabでAPIサーバー 結果:
▲▲ 73% ... 結果: •• 85% ... 画像を受け取り、 推論結果を返す
ngrok + Webフレームワーク(Flask/FastAPI) で外部からのアクセス等ができた! 外部からアクセス可能なサーバーにできる?
【余談】Colab上でNode.jsも動いた
外部から画像を受け取るところまではできた 外部から POST で送った画像を Colab側で保存・表示 あとは推論の処理をうまく 組み込めれば!?
長期間の連続稼働は仕組み的に ダメですが、ちょっとしたテスト・ デモ用にあると面白そうかな
終わり!