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
モバイルアプリで機械学習入門/introduction-to-machine-learning...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
marchin
December 09, 2021
Programming
540
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
モバイルアプリで機械学習入門/introduction-to-machine-learning-in-mobile-app
marchin
December 09, 2021
More Decks by marchin
See All by marchin
ブラックフライデーで購入したPixel9で、Gemini Nanoを動かしてみた
marchin1989
1
830
Amazon Athenaで気軽に始める データ分析/athena-data-analytics
marchin1989
0
630
WebAPI開発のためのOpenAPI入門/entry-open-api
marchin1989
1
1.4k
AWS Glueではじめるデータレイク
marchin1989
0
740
やさしく入門するOAuth2.0/easy-entry-oauth
marchin1989
8
2.8k
1時間半で克服するJavaScriptの非同期処理/async_javascript_kokufuku
marchin1989
2
1.6k
自動テストでモックするって、なにそれ?おいしいの?/what_is_mocking
marchin1989
1
1.3k
たぶんもう怖くないGit/maybe-not-afraid-of-git-anymore
marchin1989
2
2.8k
Other Decks in Programming
See All in Programming
数百円から始めるRuby電子工作
tarosay
0
140
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
120
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
460
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
140
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
150
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
180
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
320
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
160
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
200
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.9k
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
230
Featured
See All Featured
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
460
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
480
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
240
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
500
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
410
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
GraphQLとの向き合い方2022年版
quramy
50
15k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
420
Darren the Foodie - Storyboard
khoart
PRO
3
3.6k
Transcript
モバイルアプリで機械学習入門 ML Kitを使ったカメラアプリ実装
自己紹介 - 名前: 阿部 - 仕事: 主にAndroidエンジニア - 最近はサーバサイド Kotlinの仕事も始めました
- 趣味 - コーヒー、ビール、アニメ、ゲーム、読書、 etc... - Twitter: @marchin_1989
アジェンダ - on-device machine learning とは - MLKitの紹介 - MLKit
Face Detectionの機能の説明とデモンストレーション
on-device machine learning(on-device ML)とは - サーバ側ではなく、モバイルといったクライアントサイドで機械学習を行うこと
- 要件によるが以下のようなことを検討して決める。 クライアント(on-device)、サーバ、どちらでMLするか クライアント (on-device ML) リアルタイムに処理したい (ネットワーク通信の遅延がない ) データをサーバにあげたくない
ネットワークに繋げられない サーバ マシンパワーが必要 常に最新のモデルを使う必要がある 学習済みモデルを守りたい
on-device MLの例(スマホアプリ) - Google翻訳 - YouTube(AR Beauty Try-On) 出典: ITmedia
NEWS https://www.itmedia.co.jp/news/articles/1906/20/news069.html 出典: Google Play https://play.google.com/store/apps/details?id=com.google.android.apps.translate
on-device MLの機能を実装するためのフレームワーク - モバイル端末上で推論するためのフレー ムワーク。 - tensor flowで作ったモデルをtensor flow liteのモデルに変換できる
- Android, iOS, IoTデバイスで利用可能 - TensorFLow hubに学習済みのモデルが 提供されていたりする - よくある機械学習のユースケースと学習済み モデルをラップして、使いやすくしたもの。 - 機能によってはカスタムの TensorFlow Lite のモデルが使える。 - Android, iOSで利用可能
on-device MLをスクラッチで作成すると... 出典: Google I/O 2021 TensorFlowセッション ML Kit: Turnkey
APIs to use on-device ML in mobile apps | Session https://www.youtube.com/watch?v=CQ8iEqblWtY
ML Kitを使うと... 出典: Google I/O 2021 TensorFlowセッション ML Kit: Turnkey
APIs to use on-device ML in mobile apps | Session https://www.youtube.com/watch?v=CQ8iEqblWtY
ML Kitの機能 出典: Google Developers blog https://developers.googleblog.com/2021/03/ml-kit-is-now-in-ga-introducing-selfie.html
ML Kitの機能 出典: Google Developers blog https://developers.googleblog.com/2021/03/ml-kit-is-now-in-ga-introducing-selfie.html
Face detectionの機能 - 顔認識 - 画像内のどこに顔があるのか認識(複数の顔も可能) - 顔のトラッキング - 一度認識した顔を、流れてくる画像に対してトラッキングしてくれる。
- ランドマーク - 顔の輪郭や、左目、右目、眉毛、口、鼻の位置などが画像内のどこにあるか - 分類 - 目が開いているのか、閉じているのか - 笑っているのか 出典: ML Kit Guides https://developers.google.com/ml-kit/vision/face-detection/face-detection-concepts
Face detectionの実装 - 依存モジュールを組み込む - 推論対象のイメージを渡す - 推論結果を処理する
Face detectionの実装
作ってみた(デモ) - 笑顔を認識して、自動で写真を撮ってくれるカメラアプリ(Android) - セルフィーでボタンが押しづらい - 全員笑ってる写真を撮りたい etc - Face
detectionを使う - https://developers.google.com/ml-kit/vision/face-detection
サンプルアプリの実装の概略 - CameraXを利用 - FaceDetectorがMLKitのクラス
TensorFlow Lite or MLKit? - まずはMLKitがおすすめ - 認識精度、パフォーマンスが悪いなど要件が合わなければ TensorFlow Liteを検討
- 自前でモデルを作ったとしても、推論結果をアプリで使いやすいように実装する必要がある - MLKitが認識できない例 - どの国の国旗か - どの会社のロゴか - その人が誰なのか - どのブランドの製品なのか - どの昆虫の種類なのか
on-device ML向けのモデルを作るには? - TensorFlowでモデルを作り、TensorFlow Liteに変換 - AutoML - TensorFlow Lite
Model Maker - 転移学習を用いて、 on-device向けにモデルを作成できるライブラリ。
on-device MLを組み込むときに迷ったら - On-Device Machine Learning - https://developers.google.com/learn/topics/on-device-ml - プラットフォームやユースケースを選ぶと、適切な方法を提示してくれる。
まとめ - まずはMLKitがおすすめ - やりたいことに応じて、自分でモデルを作るか検討しましょう