メルカリにおけるEdgeAIを用いた新たなUXの開発CCSE2020大嶋悠司
View Slide
自己紹介大嶋 悠司2019/12 ~ Tech Lead of EdgeAI team in Mercari● EgeAI機能開発/研究・モデル作成・プラットフォーム構築● OSS活動:○ Kubeflow katib (owner)○ Docker infrakit (maintainer)● Github: YujiOshima● Twitter: @overs_5121
発表の流れ● EdgeAIとは・EdgeAIチームの取り組み● 機能開発(要件定義)● 機能開発(POC開発)● 機能開発(技術課題洗い出し)
EdgeAIとはMLモデルの推論を端末上で行う1 sec 〜〜 50msインタラクティブなUXを実現
EdgeAIチームの取り組み画像分類:アイテムを撮影すると即座にカテゴリを推定MLの推論を端末上で行うことでインタラクティブなUXを実現リリース済み
EdgeAIチームの取り組み自然言語(IME):入力に基づき動的に表示を調整トライアル中MLの推論を端末上で行うことでインタラクティブなUXを実現
EdgeAIチームの取り組み物体検出・追跡:カメラに映る物体をリアルタイムに追跡この機能の開発を例に開発中MLの推論を端末上で行うことでインタラクティブなUXを実現
開発の流れ要件定義社内ユーザテストPOC作成技術課題洗い出し
要件定義
10売れるかチェックアイテムを撮影すると● 売れている価格平均● 売り切れ率がわかるUXを改善し利用率を上げたい
11利用率を向上のために結果表示タップ領域検出類似商品検索写真撮影カメラ画面売れるかチェックのステップを分解
12ボトルネックの調査結果表示タップ領域検出類似商品検索写真撮影カメラ画面ここでやめてしまうお客様が多い写真の撮影は想定以上にハードルが高いのでは?写真撮影のステップをなくせないか
13ボトルネックの調査結果表示タップ領域検出類似商品検索写真撮影カメラ画面
14ボトルネックの調査結果表示タップ領域検出類似商品検索写真撮影カメラ画面
15領域検出を端末上で行う結果表示タップ類似商品検索領域検出カメラ画面
16POC作成+ユーザテスト
17領域検出を端末上で行う
18● 物体検出の精度は十分● タップすればいいことが伝わりにくい社内ユーザテスト物体検出とともに売れやすい価格などの情報提示もリアルタイムに行いたい
19領域検出を端末上で行う結果表示タップ類似商品検索領域検出カメラ画面
20情報提示までリアルタイムに結果表示類似商品検索領域検出カメラ画面
21情報提示までリアルタイムに結果表示類似商品検索領域検出カメラ画面画像転送に時間がかかる
22特徴量抽出情報提示までリアルタイムに結果表示類似商品検索領域検出カメラ画面011010010101011...
23特徴量抽出情報提示までリアルタイムに結果表示類似商品検索領域検出カメラ画面011010010101011...転送量を大幅に軽減
24
25技術課題洗い出し
26リリースのために解決すべき課題● モデルサイズと精度のトレードオフ● 端末の熱・電池消費の問題
27モデルサイズと精度のバランスアーキテクチャ Precision/mAP Recall/[email protected] モデルサイズSSD-mobilenetv2 0.56 0.66 18MBSSDLite-mobilenetv2 0.56 0.67 12MBSSDLite-mobilenetv3-small 0.38 0.5 3.7MBSSDLite-mobiledet 0.59 0.71 13.8MBモデルの精度だけを追求することはできない実行デバイスで推論速度も違う
28Edgeモデル検証用プラットフォームモデル学習参考:MLSE モバイル向け機械学習モデル管理基盤
29Edgeモデル検証用プラットフォームモデル学習参考:MLSE モバイル向け機械学習モデル管理基盤精度・モデルサイズや実デバイス上の推論速度を可視化
30デバイスごとのベンチマークiPhone 11 iPhone 8CoreMLGPUCPUXNNPack
31端末の熱・電池消費の問題30 FPS・・・
32端末の熱・電池消費の問題参考: Mediapipeを活用したストリーミング推論の事例紹介-カメラをかざして家の中から売れるアイテムを探そう 端末上での処理をパイプラインで表現● 並列化● 重い処理の計算頻度を下げる
33端末の熱・電池消費の問題
34まとめ● どこまでを端末上で行うか,どれくらいの精度が必要か○ ユーザテストとPOCを繰り返す● 端末上での処理能力や熱の問題○ MLの精度の追求は難しい○ サイズ検証や実機ベンチマークを自動化○ UXを損なわないレベルで計算コストを下げるチューニング課題● リリース後のログの設計● モデルの更新基盤