SlideShare a Scribd company logo
使われる機能目指して
測ったり試したり
2020-05-28
Yuji Oshima @overs_5121
whoami
大嶋 悠司
Tech Lead of EdgeAI team in Mercari
● OSS活動:
○ Kubeflow katib (owner)
○ Docker infrakit (maintainer)
● Github: YujiOshima
● Twitter: @overs_5121
whoami
大嶋 悠司
Tech Lead of EdgeAI team in Mercari
● OSS活動:
○ Kubeflow katib (owner)
○ Docker infrakit (maintainer)
● Github: YujiOshima
● Twitter: @overs_5121
今日はEdgeAI技術を使ったアプリについてお話します!
Edge AI?
お客様の近くのデバイス上でMLの推論を行う技術
何かしらリッチな
サーバ
何ができるのか
何かしらリッチな
サーバ
> 500m sec
< 50m sec
● モデルサイズ
● 消費電力
の制限
何のためにやるのか
制限は大きいが
● 低レイテンシ
● ネットを必要としない推論
によってUXを大きく改善
メルカリでは(少なくとも今の所)Edge = モバイル
Machine Learning on Mobile
やることはだいたいおんなじ
モデル軽量化
・量子化など
モデル形式を変
換
モデル学習
デバイス上で
実行
現状 (2020/05) もっとも成熟しているTFLiteを選択
何をつくったか
目的:バーコード出品をもっと認知してもらいたい!
手段:撮影した商品画像が本などだったら即座にバーコー
ド出品をサジェストしてみては?
実装:MobileNetなどのImage Classificationモデルででき
そう
参考:https://developers-jp.googleblog.com/2020/04/tensorflow-lite.html
モデル学習
モデル軽量化
・量子化など
モデル形式を変
換
モデル学習
デバイス上で
実行
モデル学習
基本的には普通に学習
 Quantization Aware Training[1]を行った
UINT8への量子化による
精度劣化を防ぐ
※ただし学習時の計算コストは上がる
[1] https://arxiv.org/abs/1712.05877
モデル学習
モデル軽量化
・量子化など
モデル形式を変
換
モデル学習
デバイス上で
実行
モデルサイズと推論速度
モデルサイズ >> 100MB
推論速度 >> 100m sec
推論速度 < 50 msec
モデルサイズ < 10MB
TF Liteの変換オプション
● FLOAT32
○ CPUやGPUでモデルを学習・推論するときと同じ
● FLOAT16
○ 重みを単精度で表現することで軽量化
● Weight only quantization (UINT8)
○ 重みをUINT8量子化
● Full quantization (UINT8)
○ 重みと活性化関数を量子化
変換オプションによるサイズと速度
weight onlyで目標のlatencyは達成できるためweight only quantを選択
File size latency
FLOAT32 ☓ △
FLOAT16 △ △
weight only quant ◎ △
full quant ◯ ◎
ランタイム
モデル軽量化
・量子化など
モデル形式を変
換
モデル学習
デバイス上で
実行
FT Lite + delegation
TF LiteはAndroid, iOSそれぞれにruntimeを用意
更にdelegationを用いてパフォーマンスを向上
● GPU
● CoreML
● Hexagon DSP
● XNNPack
今回はdelegationなしで十分なパフォーマンス
今後やってきます!
完成!!!
お疲れさまでした!!!!!
ほんとう?
モデル軽量化
・量子化など
モデル形式を
変換
モデル学習
デバイス上で
実行 ?
結果
● タップしてくれる人が想定以上に少ない...
● バーコード出品の増加率も高くない
計測改善
モデル軽量化
・量子化など
モデル形式を
変換
モデル学習
デバイス上で
実行
計測・改善
モデルの問題か?
● モデルの精度は?
○ メルカリの出品画像をテスト画像&Quantize後のモデルで検証
○ 90%近い Precision が出ている
○ 恐らくはモデルの精度頑張るフェーズではない
● モデルのlatencyは?
○ それなりに古い端末でも 30 msec前後で動いている
○ それほど体験を毀損しないのでは?
結果
User Interface
● 表示時間
○ あんまり長いと邪魔だろう...4秒くらいかなあ(感覚)
○ 短すぎたのでは?
各秒数でタップしたユーザ数
4 sec 表示
8 sec 表示
SEC
表示時間
各秒数でタップしたユーザ数
4 sec 表示
8 sec 表示
SEC
表示時間
延ばしたほうが良さそう
デザイン
仮説:お客様は文言をしっかり読んでいる(そして伝わってない)
お客様とのインタラクションは十分か
● 文言
○ そもそもバーコード出品が何かわからないのでは?
● デザイン
○ 使用するが押せると思わないのでは?
デザイン改善
デザイン改善
デザイン改善
改善の結果
Android, iOS共にバーコード出品数増加に貢献
デザイン改善後は改善前に比べて効果が倍!
改善版はぜひお手元の端末でご確認ください!
デザイン,モデルの精度,モデルのlatencyを総合的にモニタリング
MLをモバイル上で使う営み
UXを改善する営み
UXを考えていく
拡張:
● ユーザがタスクを楽しんでいる
● 責任を伴う
● タスクに対してvisionがある
自動化 vs 拡張
自動化が可能なタスクであっても,ユーザがそれを望まないことがある
その場合ユーザの能力を「拡張」するようなUIがよい
自動化:
● ユーザにタスクができない
● タスクが退屈で繰り返される
https://pair.withgoogle.com/
自動化の例:AI出品
商品名や詳細,カテゴリやブランドを画
像から自動で入力
何を書くか分からない場合に有効
拡張の例: Mercari IME
商品タイトルや詳細に使われそうな単
語をIMEの形でサジェスト
商品出品は
● 責任を伴う
● お客様がVisionを持つ
タスク
拡張の例: Mercari IME
商品タイトルや詳細に使われそうな単
語をIMEの形でサジェスト
商品出品は
● 責任を伴う
● ユーザがVisionを持つ
タスク
今後どこかで話します!
MLCT#12 使われる機能目指して 測ったり試したり

More Related Content

PDF
PDF
2018 07-23
PDF
KubeFlowでどこまでいける?
PDF
KubeFlow MeetUp #1 Katibよもやま話
PDF
virtual-kubeletってなんだ?Alibaba Cloudで動かしてみよう
PDF
KustomizeとGitHub Actionsを利用したUbieのデプロイの仕組み
PDF
Kubernetes & Google Container Engine; DockerコンテナをGKEでクラスタリングしてみた
PDF
ChainerMNをDocker containerで動かす
2018 07-23
KubeFlowでどこまでいける?
KubeFlow MeetUp #1 Katibよもやま話
virtual-kubeletってなんだ?Alibaba Cloudで動かしてみよう
KustomizeとGitHub Actionsを利用したUbieのデプロイの仕組み
Kubernetes & Google Container Engine; DockerコンテナをGKEでクラスタリングしてみた
ChainerMNをDocker containerで動かす

What's hot (20)

PDF
Kubeflowで何ができて何ができないのか #DEvFest18
PPTX
Reactive Workflow Argo Eventsの紹介
PDF
知って欲しいPaaSの話
PDF
PDF
GraalVM Native Imageが見せた未来
PDF
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
PDF
Japan Container Days: 「今こそKubernetes。最高の仕事道具で使いこなそう」by capsmalt
PDF
HashiCorp Terraform Enterprise 紹介
PDF
DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか
PPTX
DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP
PDF
CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤
PDF
Kubernetesのない世界 すべてがサーバーレスになる
PDF
Google Container Engine を始めてみよう
PDF
20201008 GitHub at Microsoft
PDF
Netflix Meetup in Kyoto 参加報告
PDF
GitHub Actions で CI/CD
PDF
そろそろLambda(CI/CD編)
PDF
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
PDF
10分でわかる Cilium と XDP / BPF
PDF
cndjp: 「Microclimate」by capsmalt
Kubeflowで何ができて何ができないのか #DEvFest18
Reactive Workflow Argo Eventsの紹介
知って欲しいPaaSの話
GraalVM Native Imageが見せた未来
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
Japan Container Days: 「今こそKubernetes。最高の仕事道具で使いこなそう」by capsmalt
HashiCorp Terraform Enterprise 紹介
DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか
DockerCon '17 Feedback and Introduction of Longhorn at Rancher JP
CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤
Kubernetesのない世界 すべてがサーバーレスになる
Google Container Engine を始めてみよう
20201008 GitHub at Microsoft
Netflix Meetup in Kyoto 参加報告
GitHub Actions で CI/CD
そろそろLambda(CI/CD編)
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
10分でわかる Cilium と XDP / BPF
cndjp: 「Microclimate」by capsmalt
Ad

Similar to MLCT#12 使われる機能目指して 測ったり試したり (20)

PDF
MediaPipeを使ったARアプリ開発事例 ~カメラをかざして家䛾中で売れるも䛾を探そう~
PPTX
2020 08-01 ALGYAN AI&ロボティクス (1)
PDF
Azure IoT Edge で Custom Vision
PDF
Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術
PDF
WWN 20180526
PDF
産業用ロボットにおけるUnityとAI技術の活用
PDF
[Cloud OnAir] Google Cloud Next '18 最新情報 2018年7月26日 放送
PDF
TFLite_and_PyTorch_Mobile
PDF
Intel OpenVINO、 NVIDIA Deepstream対応開発キットから、 エッジサーバー、Azure Data Box Edgeまで、 Az...
PPTX
EnOcean-iot, Generative-AI, and RAG for LLM
PDF
GCPUG Sapporo vol.2 ML Night
PDF
20170518 eureka dli
PDF
[ビッグデータオールスターズ] クラウドサービス最新情報 機械学習/AIでこんなことまでできるんです! (Microsoft編)
PPTX
AI robot car
PPTX
エッジAiの事例を簡単に試せる!edge tpuとai初心者
PDF
SIAI2020
PDF
Android/iOS端末におけるエッジ推論のチューニング
PPTX
モバイル向けEdgeTPUの紹介
PPTX
Soracom ug
PPTX
AI x ロボティクス x ブロックチェーンによる次世代自律テクノロジー
MediaPipeを使ったARアプリ開発事例 ~カメラをかざして家䛾中で売れるも䛾を探そう~
2020 08-01 ALGYAN AI&ロボティクス (1)
Azure IoT Edge で Custom Vision
Edge Computing 「あらゆるものが考える」世界を作るのに必要な技術
WWN 20180526
産業用ロボットにおけるUnityとAI技術の活用
[Cloud OnAir] Google Cloud Next '18 最新情報 2018年7月26日 放送
TFLite_and_PyTorch_Mobile
Intel OpenVINO、 NVIDIA Deepstream対応開発キットから、 エッジサーバー、Azure Data Box Edgeまで、 Az...
EnOcean-iot, Generative-AI, and RAG for LLM
GCPUG Sapporo vol.2 ML Night
20170518 eureka dli
[ビッグデータオールスターズ] クラウドサービス最新情報 機械学習/AIでこんなことまでできるんです! (Microsoft編)
AI robot car
エッジAiの事例を簡単に試せる!edge tpuとai初心者
SIAI2020
Android/iOS端末におけるエッジ推論のチューニング
モバイル向けEdgeTPUの紹介
Soracom ug
AI x ロボティクス x ブロックチェーンによる次世代自律テクノロジー
Ad

More from Yuji Oshima (7)

PDF
2018 07-19dist
PPTX
KubernetesでGPUクラスタを管理したい
PPTX
Infrakitの話とk8s+GPUの話
PPTX
Infrakit Docker_Tokyo_meetup
PDF
Docker1.12イングレスロードバランサ
PDF
runC概要と使い方
PDF
近頃のDockerネットワーク
2018 07-19dist
KubernetesでGPUクラスタを管理したい
Infrakitの話とk8s+GPUの話
Infrakit Docker_Tokyo_meetup
Docker1.12イングレスロードバランサ
runC概要と使い方
近頃のDockerネットワーク

MLCT#12 使われる機能目指して 測ったり試したり