Slide 1

Slide 1 text

「今季の成果は凄かったぞ!!!」登壇資料 モデル更新コストを削減しつつ 精度改善を達成した話 株式会社ミクシィ みてね事業部 開発グループ MLエンジニア 登内雅人

Slide 2

Slide 2 text

この登壇資料 https://machine-learning-pitch.connpass.com/event/199555/

Slide 3

Slide 3 text

登内 雅人(Tonouchi Masato) 株式会社ミクシィ みてね事業部 開発グループ MLエンジニア 20新卒エンジニア Twitter:@tono2700 業務 ・ MLが絡む施策の研究開発 ・ ML研究開発基盤の構築 今期は特に「人物ごとのアルバム」という 機能の顔分類精度改善のための研究開発に注力

Slide 4

Slide 4 text

現在はこの顔識別結果はこの機能でのみ使用されていますが、顔識別の精度が上がったら様々 な施策に展開することを考えており、精度改善は非常に重要な課題となっています。

Slide 5

Slide 5 text

主な成果 ● 特徴抽出モデルの精度改善をバックフィルフリーを実現しつつ達成 ○ チームの半年分の開発工数をまるっと削減! ● 部署の研究開発の基盤を0から構築 ○ Kubeflowの利用 ○ 実験サイクルを高速化・属人性排除 ○ コスト・時間効率最大化

Slide 6

Slide 6 text

人物ごとのアルバムの解析システムについて

Slide 7

Slide 7 text

解析の流れ 1. メディアから顔を検出する
 2. 顔画像をモデルに入力して、年齢性別・特徴ベクトルを取得する
 3. 特徴ベクトル(512次元)を使ってクラスタリング(撮影月ごと)
 4. 年齢性別の結果と家族情報を利用して、クラスタを人物に紐付け
 他サービスではユーザに人を選択させてますが、みてねでは自動で紐付けるされるように していて、ユーザに驚きの体験を与えるという部分を大事にしています。

Slide 8

Slide 8 text

特徴抽出モデルの精度改善の課題 ● モデルの更新が辛い 別々にトレーニングされたモデル は、一般に同じ埋め込み空間には ならない 引用元:https://arxiv.org/abs/2003.11942

Slide 9

Slide 9 text

案1:既存の特徴ベクトルを全てバックフィル ● バックフィルにかかるコスト(大規模なデータに再推論処理が必要) ○ 分散処理、ジョブ管理なども ● 新旧ギャラリーセットの整合性チェック ● 新旧モデル、ギャラリーセットの切り替えのタイミング DB移行と同等の開発・作業が必要、モデル更新の度にこの問題が出てくる みてねの既存の画像・動画全 件をバックフィルすると、少なく とも数百〜数千万円オーダー の推論コストがかかり、現実 的でない

Slide 10

Slide 10 text

案2:新旧特徴抽出モデルを使い分ける ● モデルの出しわけ処理の開発 ○ 新モデル導入以前に撮影されたメディアは旧モデルで引き続き抽出 ■ 昔撮影されたメディアがあとでアップロードされてくることもある ○ 新モデル導入以降に撮影されたメディアは新モデルで抽出 ● 新旧特徴ベクトルでクラスタリングした結果の紐付け処理 ○ 場合によっては一部期間のバックフィルが必要 ● ただし、これだけやっても旧モデルの分類結果を新モデルで引き継げる保証はない チーム内で工数見 積もりを行ったとこ ろ、半年ほどかか ると判明 精度が上がったからといって簡単に更新の意思決定を行えるような 状態ではない

Slide 11

Slide 11 text

解決方法:最新論文を読み漁って発見 面白い論文だったので解説記事も AI-Scholarに投稿してます。 https://ai-scholar.tech/articles/表現学習/backword-compatible-representation-learning

Slide 12

Slide 12 text

成果 ● 古い特徴ベクトルとの互換性を持ったまま精度改善達成! ● 半年分の開発工数を削減! ● 今後はバンバン特徴抽出モデルの更新ができる! 精度 BCT無し 0.0655 BCT有り 0.9268 引用元:https://arxiv.org/abs/2003.11942

Slide 13

Slide 13 text

その他 ● 研究開発基盤を一から構築 ○ 分散学習・Preemptive TPU導入によるコスト・時間効率最大化 ■ 実験サイクルは早ければ早いほどよい ● 分散学習 => 約8倍 ● TPU => 約4倍 ■ さらにコストも削減 => 半分以下に ● TPU v3-8が$2.4/h、GPU v100x8が$5.9/h ○ 実験手順簡略化、属人性排除 ■ MLの研究開発はデータとかコードがいろんな場所に散在しやすい ● 研究開発戦略の立て方 ○ モデル更新の影響 ○ アノテーションコスト減らすために教師無しのアプローチはできないか?他の推論に使いまわせる ように汎用的な特徴ベクトルにできないかなど、精度改善以外の面を気をつけている

Slide 14

Slide 14 text

採用:エンジニア募集中です https://mitene.us/recruit 特にサーバーサイドエンジニア