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
IoTデバイスでMLモデルを動かす技術
Search
Hirofumi Nakagawa/中河 宏文
March 08, 2022
Technology
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
IoTデバイスでMLモデルを動かす技術
Hirofumi Nakagawa/中河 宏文
March 08, 2022
More Decks by Hirofumi Nakagawa/中河 宏文
See All by Hirofumi Nakagawa/中河 宏文
Kanazawa_AI.pdf
hnakagawa
0
230
メルカリ写真検索における Amazon EKS の活用事例と プロダクトにおけるEdgeAI technologyの展望
hnakagawa
5
9.2k
メルカリの写真検索を支えるバックエンド CCSE 2019 version
hnakagawa
0
380
メルカリ写真検索における Amazon EKS の活用事例
hnakagawa
6
29k
メルカリの写真検索を支えるバックエンド
hnakagawa
1
1.2k
Mercari ML Platform
hnakagawa
1
17k
mlct.pdf
hnakagawa
2
2.1k
機械学習によるマーケット健全化施策を支える技術
hnakagawa
0
280
メルカリのマーケット健全化施策を支えるML基盤
hnakagawa
10
9.2k
Other Decks in Technology
See All in Technology
【NRUG vol.18】KubernetesにおけるNew Relicデータ取得量削減の考え方
nrug_member
0
110
RSA暗号を手計算したくなること、ありますよね?? (20260615_orestudy6_rsa)
thousanda
0
360
【Cyber-sec+】経営層を"動かす"ための考え方
hssh2_bin
0
170
LLMにもCAP定理があるという話
harukasakihara
0
330
チームで進めるAI駆動アジャイル×ウォーターフォール
kumaiu
0
160
AIソロプレナー時代に2ヶ月で20人増員した事業創造会社の開発組織の話
miyatakoji
0
640
Bucharest Tech Week 2026 - Reinventing testing practices in the AI era
edeandrea
PRO
1
150
FinOps × AIエージェントで実現する コストインシデントの自動調査
oasis1994liveforever
0
130
中期計画、2回作ってみた ~業務委託と正社員、両方の視点から~
demaecan
1
730
protovalidate-es を導入してみた
bengo4com
0
180
データサイエンスを価値につなげるプロジェクト設計 〜 DS一年目が現場で得た気づき 〜
ysd113
1
230
エラーバジェットのアラートのタイミングを考える.pdf
kairim0
0
140
Featured
See All Featured
Odyssey Design
rkendrick25
PRO
2
700
Are puppies a ranking factor?
jonoalderson
1
3.5k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
140
Visualization
eitanlees
152
17k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
22k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Transcript
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
1 Update to a Sustainable Food Industry.
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
自己紹介 中河 宏文 • スパイスコード株式会社CEO • 会社代表としては珍しく?現役でコードも書 いている • エンジニアとしてはデバイスドライバ開発か ら、フロントエンド開発までやる何でも屋 Twitter: hnakagawa14 GitHub: hnakagawa ※写真は10年前
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
会社紹介 2019年08月15日 東京都中央区銀座に当社設立 2019年10月15日 0.2億円の資金調達 2020年02月30日 0.6億円の資金調達 2020年03月15日 調達・購買管理システムリリース 会社名 代表取締役 中河 宏文 所在地 東京都中央区銀座 6丁目13番16号銀座 Wallビル UCF5階 スパイスコード株式会社 事業内容 飲食店向けのプラットフォーム事業 2021年02月08日 2.0億円の資金調達 資本金 2億7,600万円 従業員 11名 2021年08月20日 農林水産省の実証実験に採択(補助金 :0.3億円) 2021年09月01日 FC向けのプラットフォームリリース 2021年11月01日 東京都の実証実験に採択(補助金 :0.1億円) 株主 Coral Capital (500 Startups)、STRIVE (GREE Ventures)、食の未来ファンド (Kemuri Ventures)、他
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
私たちのミッション 美味しい料理は人を幸せにします。それは、言葉や文化の壁を簡単に超える力を持っています。それら を担い、支える産業がフード産業です。しかし、そのフード産業を取り巻く環境は現在、目紛しく変化して います。 外食業界は慢性的な人手不足の状況からコロナの影響によって、業界そのもの自体の存続性が問わ れる状況に陥り、その煽りを受けるように多くの卸売業や生産者たちは、多くの在庫を抱え新たな販路 を開拓する必要に迫られるなど、非常に苦しい状況に陥っています。 そんな中で、我々はテクノロジーの力を使って消費者起点のなめらかで、無駄のない食料生産・供給 ネットワークを社会実装し、飲食店様、強いては「食」の社会インフラを担っていらっしゃる皆様が、より 誇りと自信を持って価値を発揮できる環境を創出したいと考えています。 MISSION フード産業を持続可能な仕組みへアップデートする
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
IoTデバイスでMLモデルを動かす技術
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
IoTデバイスでMLモデルを動かす技術とは? • TensorFlow Lite • Pytorch Mobile • ONNX Runtime • etc… 現在、EdgeデバイスでDNNモデル(computation graph)を動かす為の様々な runtimeが存在します
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
しかし、本日はDNN Runtimeの話はしません
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
NAS(neural architecture search)と リアルタイム処理の話をします。
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
何故NASなのか? • IoT(Edge)デバイスでMLモデルを走らせ る上で様々なトレードオフ問題が存在し ます。 ◦ Accuracy ◦ Latency ◦ Energy consumpition ◦ Model size • 目的のUXを達成するためには、アルゴリ ズム、エンジニアリング両方でそれらの バランスを考慮する必要がある Image credit[1] Image credit[1] オペレーションによって計算コストが違う mobile deviceでサポートしている GPUインターフェースのシェア Image credit[2]
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
Landscape of execution environment ※Facebookのレポートからの引用 如何に目的のUXを実現できるデバイスのカバレッジを広げるか? Image credit[2] Image credit[2]
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
Designing efficient networks Mobile Nets V1, V2 and V3 - Depthwise separable conv を使用し計算量を 低減 - Inverted residual with linear bottleneckを使用 しメモリアクセス量を低減 - 活性化関数にh-swishを使用 - squeeze & excitationを使用した channelのattention - 軽量なfinal blockの採用 etc… Image credit: [4] Image credit: [5] Image credit: [6] Efficient Net - NASを使用して開発 - ネットワークの階層,ネットワークの幅,入力画像のサイズを説明変数とし、 FLOPS,メモリ使用量を制約 とした最適化問題として探索 Image credit: [7]
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
そこでNASを使いデバイスに 最適化されたモデルを生成します
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
Designing efficient networks: Automated ways - 通常のモデルトレーニング - アーキテクチャ・サーチで探索 &トレーニング デバイス向けでは、探索時にLossにlatency等のペナルティ項を追加するなどして、 ターゲットデバイスにfitしたモデル、acuraccyとlatencyのバランスが取れたモデルを 探索
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
NAS手法例 MnasNet[8] (RL-Based) Image credit: [8] Image credit: [9] FBNet[9] (Differentiable) - 探索空間から数千のmodelをsamplingする - 巨大な探索空間から探索できるが、巨大な 計算機リソースが必要になる - DARTSベースの探索手法 - differentiableベースの探索のため探索は軽量 だが、スーパーネットをGPUメモリに載せる 必要がある為、GPUメモリの使用量が問題と なりbatch sizeを上げられない - Binary Gateを挟むことによってGPUメモリ使用 量問題を解決 - Binary Gateはαパラメータを元にサンプリングを 行い決定 ProxylessNAS [10] (Differentiable)
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
前半まとめ • IoT(Edge)デバイス上ではlatencyなどaccuracy以外の要素も重要となる • 目的のUXを実現するために、accuracyやlatency等のバランスを取る必要が ある ◦ 必ずしもAccuracyが最優先ではない • 個々のデバイス特性に合わせてDNNモデルを作るのは大変 ◦ NASで探索を行うと良い
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
ここから後半
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
リアルタイム処理(MediaPipe)について
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
実践的にはNASよりよっぽど重要です(汗
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
MediaPipeとは • リアルタイム処理を行う為の cross platformなPipeline framework • PipelineをGraphとして記述 • 効率良くPipelineを動作させる為の様々な 仕組みをサポート Image credit: [10]
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
何が良いのか? カメラ入力 リサイズ等の 前処理 物体認識 画面描画 処理の流れ 33ms以上時間がかかる処理 30fpsで動作 • 通常カメラの入力スピード(例: 30fps)よりその後の処理 の方が時間がかかる • 愚直にシーケンシャル処理を行うとリアルタイム処理がで きない Image credit: [10]
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
パイプライン・並列処理 カメラ入力 リサイズ等の 前処理 物体認識 画面描画 処理の流れ • 各工程の処理をパイプライン制御 • 並列処理はパイプライン・スケジューラが管理 ◦ パイプラインが詰まらないように後段の処理優先度を高く制御 • 処理が間に合わない場合は適当にデータを捨てる処理をパイプラインに入れ る事ができる カメラ入力 リサイズ等の 前処理 物体認識 画面描画 カメラ入力 リサイズ等の 前処理 物体認識 画面描画
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
フレームワーク・アーキテクチャ パイプラインはGraphとして定義され以下の要素から構成さ れる • Nodes ◦ 処理が行われる所、入出力portを持つ ◦ 実装上はCalculatorと呼ばれる • Packet ◦ Graphを流れるデータを表す単位 ◦ Timestampによって順序が管理される • Streams ◦ Graphのedgeを表す ◦ PacketのTimestampを元にした 所謂priority queueな実装 • Side packets ◦ Timestampを考慮しないedge • Packet Ports ◦ Nodeの入出力port ◦ Nodeを結ぶ型情報が定義された物 Image credit: [11]
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
まとめ DNNモデル (再掲) • IoT(Edge)デバイス上ではlatencyなどaccuracy以外の要素も重要となる • 目的のUXを実現するために、accuracyやlatency等のバランスを取る必要が ある ◦ 必ずしもAccuracyが最優先ではない • 個々のデバイス特性に合わせてDNNモデルを作るのは大変 ◦ NASで探索を行うと良い リアルタイム処理 • MediaPipeが強力なフレームワーク • パイプライン並列処理を簡単に記述できる • 実践的にはNASなんかよりこっちが重要
© 2021 Spicescode All rights reserved. © 2021 Spicescode All rights reserved.
Thank you all for coming today