最近、効率よくスマホ上で推論したくてTensorFlowLiteとかMediaPipeとかとずっと戯れているんだけど、そのあたりの周辺技術をもう少し調べようとしてまとめたやつです。
どれもデモ動画を見ないと全然わからないと思うんだけど、公式のgifとかどこまで使っていいかわからないので載せれない。リンク飛んで見てみてください。
王道なやつ
- TensorFlowLite
- モデルの軽量化とかするのに使ってる。プロダクションに入れることを考えると、一番安定してるんじゃないか。
- CoreML (Apple)
- iOSしか使えないので試したことない。
- どれくらい良いのか教えてほしい。
- ML Kit (Firebase, Google)
- 試してみた感じまたストリーミングデータとかはカクカクな感じだった
- 導入は簡単だった
- PyTorch Mobile
- まだプロダクションで使われている事例を自分は聞いたことがない
- 一度ちゃんと使ってみようと思う
- Mediapipe (Google)
- TensorFlowLiteベースでストリーミングデータを推論するのに効率いいやつ
- Googleがイケイケで作ってるけど、他社がプロダクションに入れるにはまだメンテが必要だなぁという感じ
- iosとかframeworkとして提供してくれてないところが辛い
面白そうなので試してみたいやつ
- Snap Kit + SnapML in Lens Studio
- SnapChat, SnapCameraでおなじみのSnap Inc.さんが作ってるプラットフォーム。
画像とか動画を見ないとわからないと思うのでサイトを見てほしい。
Lens Studioという総合開発環境があって、その中の機能としてSnapMLが使えるみたい。 - iOS, Android両対応
- 以下のテンプレートがある
- PyTorch, TensorFlow, ONNXのカスタムモデルが使える
- 動画・カメラなどのストリーミングデータに対応。というかそれが強みのARプラットフォーム。
- SnapChat, SnapCameraでおなじみのSnap Inc.さんが作ってるプラットフォーム。
- MNN (Alibaba)
- Alibabaの作ってるモバイルでの推論のための軽量フレームワーク
- Tensorflow, Caffe, ONNXのモデル利用可能
- iOS, Android両対応
- ストリーミングデータに対応してるか気になる
- TensorFlowLiteより早いらしいので試したい
- 論文
- Fritz AI | Machine Learning for iOS, Android, SnapML
- 機械学習プラットフォーム
- iOS, Android, SnapML(Lens Studio)に対応
- ブログがめちゃくちゃおもしろい
Mobile + ML ってジャンルがあって、トレンド追うのにすごい良さそう。気に入った - Githubでもモバイルの機械学習の情報まとめてくれてて良い
GitHub - fritzlabs/Awesome-Mobile-Machine-Learning: A curated list of awesome mobile machine learning resources for iOS, Android, and edge devices.
モバイルじゃないけど調べてたら気になったやつ
- OctoML
- TensorFlow, PyTorch, ONNX, etc. のモデルを最適化してTVMのモデルにしてくれる? 気になる。
- Octomizer Early Access is now available
- Detectron2
- Facebook Reserachが作ってる物体検出のシステム
- Detectron2 is Facebook AI Research’s next generation software system
- PyTorchベース
- デモ見た感じすごい精度良さそうだから気になる
- Facebook Reserachが作ってる物体検出のシステム