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
モデル更新コストを削減しつつ精度改善を達成した話
Search
tonouchi510
August 12, 2022
Technology
0
130
モデル更新コストを削減しつつ精度改善を達成した話
こちらのイベントの登壇資料。
https://machine-learning-pitch.connpass.com/event/199555/
tonouchi510
August 12, 2022
Tweet
Share
More Decks by tonouchi510
See All by tonouchi510
日本ディープラーニング協会主催 CVPR 2020 技術報告会(登内)
tonouchi510
0
7
日本ディープラーニング協会主催 CVPR 2021 技術報告会(登内)
tonouchi510
0
3
第22回 MLOps 勉強会:みてねのMLOps事情
tonouchi510
2
2k
Other Decks in Technology
See All in Technology
日本版とグローバル版のモバイルアプリ統合の開発の裏側と今後の展望
miichan
1
130
ブラックフライデーで購入したPixel9で、Gemini Nanoを動かしてみた
marchin1989
1
540
株式会社ログラス − エンジニア向け会社説明資料 / Loglass Comapany Deck for Engineer
loglass2019
3
32k
alecthomas/kong はいいぞ / kamakura.go#7
fujiwara3
1
300
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
190
オプトインカメラ:UWB測位を応用したオプトイン型のカメラ計測
matthewlujp
0
180
権威ドキュメントで振り返る2024 #年忘れセキュリティ2024
hirotomotaguchi
2
750
コンテナセキュリティのためのLandlock入門
nullpo_head
2
320
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
170
サービスでLLMを採用したばっかりに振り回され続けたこの一年のあれやこれや
segavvy
2
470
DevFest 2024 Incheon / Songdo - Compose UI 조합 심화
wisemuji
0
110
Opcodeを読んでいたら何故かphp-srcを読んでいた話
murashotaro
0
260
Featured
See All Featured
Code Review Best Practice
trishagee
65
17k
Facilitating Awesome Meetings
lara
50
6.1k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
GraphQLとの向き合い方2022年版
quramy
44
13k
Adopting Sorbet at Scale
ufuk
73
9.1k
Docker and Python
trallard
42
3.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Typedesign – Prime Four
hannesfritz
40
2.4k
Visualization
eitanlees
146
15k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
It's Worth the Effort
3n
183
28k
Transcript
「今季の成果は凄かったぞ!!!」登壇資料 モデル更新コストを削減しつつ 精度改善を達成した話 株式会社ミクシィ みてね事業部 開発グループ MLエンジニア 登内雅人
この登壇資料 https://machine-learning-pitch.connpass.com/event/199555/
登内 雅人(Tonouchi Masato) 株式会社ミクシィ みてね事業部 開発グループ MLエンジニア 20新卒エンジニア Twitter:@tono2700 業務
・ MLが絡む施策の研究開発 ・ ML研究開発基盤の構築 今期は特に「人物ごとのアルバム」という 機能の顔分類精度改善のための研究開発に注力
現在はこの顔識別結果はこの機能でのみ使用されていますが、顔識別の精度が上がったら様々 な施策に展開することを考えており、精度改善は非常に重要な課題となっています。
主な成果 • 特徴抽出モデルの精度改善をバックフィルフリーを実現しつつ達成 ◦ チームの半年分の開発工数をまるっと削減! • 部署の研究開発の基盤を0から構築 ◦ Kubeflowの利用 ◦
実験サイクルを高速化・属人性排除 ◦ コスト・時間効率最大化
人物ごとのアルバムの解析システムについて
解析の流れ 1. メディアから顔を検出する 2. 顔画像をモデルに入力して、年齢性別・特徴ベクトルを取得する 3. 特徴ベクトル(512次元)を使ってクラスタリング(撮影月ごと) 4. 年齢性別の結果と家族情報を利用して、クラスタを人物に紐付け 他サービスではユーザに人を選択させてますが、みてねでは自動で紐付けるされるように
していて、ユーザに驚きの体験を与えるという部分を大事にしています。
特徴抽出モデルの精度改善の課題 • モデルの更新が辛い 別々にトレーニングされたモデル は、一般に同じ埋め込み空間には ならない 引用元:https://arxiv.org/abs/2003.11942
案1:既存の特徴ベクトルを全てバックフィル • バックフィルにかかるコスト(大規模なデータに再推論処理が必要) ◦ 分散処理、ジョブ管理なども • 新旧ギャラリーセットの整合性チェック • 新旧モデル、ギャラリーセットの切り替えのタイミング DB移行と同等の開発・作業が必要、モデル更新の度にこの問題が出てくる
みてねの既存の画像・動画全 件をバックフィルすると、少なく とも数百〜数千万円オーダー の推論コストがかかり、現実 的でない
案2:新旧特徴抽出モデルを使い分ける • モデルの出しわけ処理の開発 ◦ 新モデル導入以前に撮影されたメディアは旧モデルで引き続き抽出 ▪ 昔撮影されたメディアがあとでアップロードされてくることもある ◦ 新モデル導入以降に撮影されたメディアは新モデルで抽出 •
新旧特徴ベクトルでクラスタリングした結果の紐付け処理 ◦ 場合によっては一部期間のバックフィルが必要 • ただし、これだけやっても旧モデルの分類結果を新モデルで引き継げる保証はない チーム内で工数見 積もりを行ったとこ ろ、半年ほどかか ると判明 精度が上がったからといって簡単に更新の意思決定を行えるような 状態ではない
解決方法:最新論文を読み漁って発見 面白い論文だったので解説記事も AI-Scholarに投稿してます。 https://ai-scholar.tech/articles/表現学習/backword-compatible-representation-learning
成果 • 古い特徴ベクトルとの互換性を持ったまま精度改善達成! • 半年分の開発工数を削減! • 今後はバンバン特徴抽出モデルの更新ができる! 精度 BCT無し 0.0655
BCT有り 0.9268 引用元:https://arxiv.org/abs/2003.11942
その他 • 研究開発基盤を一から構築 ◦ 分散学習・Preemptive TPU導入によるコスト・時間効率最大化 ▪ 実験サイクルは早ければ早いほどよい • 分散学習
=> 約8倍 • TPU => 約4倍 ▪ さらにコストも削減 => 半分以下に • TPU v3-8が$2.4/h、GPU v100x8が$5.9/h ◦ 実験手順簡略化、属人性排除 ▪ MLの研究開発はデータとかコードがいろんな場所に散在しやすい • 研究開発戦略の立て方 ◦ モデル更新の影響 ◦ アノテーションコスト減らすために教師無しのアプローチはできないか?他の推論に使いまわせる ように汎用的な特徴ベクトルにできないかなど、精度改善以外の面を気をつけている
採用:エンジニア募集中です https://mitene.us/recruit 特にサーバーサイドエンジニア