Upgrade to Pro — share decks privately, control downloads, hide ads and more …

メルカリの機械学習基盤 これまでとこれから ML Ops Study #2

Ryusuke Chiba
May 29, 2018
690

メルカリの機械学習基盤 これまでとこれから ML Ops Study #2

Ryusuke Chiba

May 29, 2018
Tweet

Transcript

  1. メルカリの機械学習基盤 これまでとこれから
    株式会社メルカリ
    Ryusuke Chiba @metalunk
    ML Ops Study #2

    View Slide

  2. 筑波大学 (学部) 筑波大学 (院) メルカリ
    グリー
    2013 2015 2017
    自己紹介
    ● Ryusuke Chiba
    ● https://twitter.com/metalunk

    View Slide

  3. 自己紹介
    ● 2013年 新卒
    ● GREE News の開発
    ● 消滅都市の開発
    ● 大学院受験をして受かったので退職
    筑波大学 (学部) 筑波大学 (院) メルカリ
    グリー
    2013 2015 2017

    View Slide

  4. 自己紹介
    ● FAQ「なんで会社やめて大学院行ったんですか?」

    筑波大学 (学部) 筑波大学 (院) メルカリ
    グリー
    2013 2015 2017

    View Slide

  5. 自己紹介
    ● FAQ「なんで会社やめて大学院行ったんですか?」

    筑波大学 (学部) 筑波大学 (院) メルカリ
    グリー
    2013 2015 2017
    ggrks!!
    Google is Your Friend!!

    View Slide

  6. 自己紹介
    ● 数理最適化の研究
    ○ Derivative-free optimization (Nelder-Mead とか)
    ○ 単体上における非凸関数の大域的最適化
    ● Cookpad でアルバイト
    ○ トクバイで
    筑波大学 (学部) 筑波大学 (院) メルカリ
    グリー
    2013 2015 2017

    View Slide

  7. 自己紹介
    ● 2回目の新卒(中古の新卒)
    ● Search チーム (2017.04 - 2017.12)
    ○ クエリパラメータ最適化の仕組み (JP)
    ○ 近所検索 (US)
    ● 数学部 部長
    ○ 線形代数ゼミ,アルゴリズムゼミ,数理最適化ゼミ...
    筑波大学 (学部) 筑波大学 (院) メルカリ
    グリー
    2013 2015 2017

    View Slide

  8. 自己紹介
    ● CRE (Customer Reliability Engineering) と SysML
    ○ 2018.01 から
    ○ これから話す
    ● 量子アニーリング
    ○ D-wave のインターフェイスは数理最適化
    筑波大学 (学部) 筑波大学 (院) メルカリ
    グリー
    2013 2015 2017

    View Slide

  9. 自己紹介
    先日 Andrew Ng 先生の Coursera Machine Learning を卒業しました
    ですのでむずかしい機械学習についての質問は...

    View Slide

  10. メルカリの機械学習基盤

    View Slide

  11. メルカリの機械学習基盤 いま
    • 内製のML Platform
    • kubernetesベース
    • ローカル環境とクラスタ環境の差を抽象化する
    • 便利API群
    • 既存のML Frameworkを使用し簡単に
    Training/Servingを行う環境を提供
    • そのうち OSS で公開予定(多分)

    View Slide

  12. ML Platform (training cluster)
    CI
    ML Platform (serving cluster for test)
    Model Registry
    Job Job
    ・・
    REST
    API
    Streaming
    TF
    Serving
    API
    ・・・
    メルカリの機械学習基盤 いま

    View Slide

  13. 機械学習による商品監視

    View Slide

  14. メルカリについて
    ● ダウンロード数: 世界合計1億800万ダウンロード超 (日本7,100万、米国
    3,750万、英国数百万) (2018/3末時点)
    ● 流通額 (GMV): 日本 938億円 (2018/1-3月四半期累計)
    ● 利用者数 (登録MAU): 1050万人 (2018/3時点)
    ○ 登録MAU (Monthly Active User) は1ヶ月に一度以上利用したユーザの数 (「メルカリ アッ
    テ」「メルカリカウル」「メルカリメゾンズ」「メルチャリ」「teacha」は含まず)
    ● 社員数: 連結 約1000人,メルカリ単体650人  (2018/3末時点)

    View Slide

  15. メルカリについて
    ● カスタマーサポート(CS)
    ○ お問い合わせへの対応や,違反出品物の取り締まりなど
    ○ 仙台,福岡にも拠点がある
    ● CRE (Customer Reliability Engineering)
    ○ 技術を駆使して,お客さまに安心して利用してもらえるサービス
    にしたい
    ■ CS のオペレーション効率化

    View Slide

  16. 商品監視
    安心安全なマーケットプレイスを維持するために,出品が禁止されているもの
    https://www.mercari.com/jp/help_center/getting_started/prohibited_items
    • 偽ブランド品
    • 盗難品
    • 18禁、アダルト、児童ポルノ関連
    • 現金、金券類、カード類
    • ゲームアカウントやゲーム内の通貨
    • メルカリ事務局で不適切と判断されるもの
    • キーワード羅列
    • etc...

    View Slide

  17. 商品監視 これまで
    検索条件による検出
    お客さまによる通報
    機械学習による自動検知

    View Slide

  18. 商品監視 これまで
    検索条件による検出
    お客さまによる通報
    機械学習による自動検知
    CS によって管理(追加 & 削除)さ
    れていて,数百個もある

    View Slide

  19. 商品監視 これまで
    検索条件による検出
    お客さまによる通報
    機械学習による自動検知
    本当はお客さまの目に
    触れる前に削除したい

    View Slide

  20. 商品監視 これまで
    検索条件による検出
    お客さまによる通報
    機械学習による自動検知
    さまざまな構成で動いている
    ● 古い機械学習基盤とか
    ● マイクロサービスとか

    View Slide

  21. 商品監視 いま
    Mercari
    API
    Machine Learning
    Platform
    publish
    subscribe
    あたらしい ML 商品監視サービス Lovemachine!!

    View Slide

  22. 商品監視 いま
    あたらしい ML 商品監視サービス Lovemachine!!
    CsTool
    API
    Machine Learning
    Platform
    Mercari
    API
    Worker
    publish
    subscribe
    hide/report report

    View Slide

  23. 商品監視 いま
    いくつかの既存モデルを,あたらしい ML Platform 上の商品監視サービス
    Lovemachine に移植中
    それによって得られる恩恵は
    • メルカリ API, CS Tool 側の共通処理
    • コード品質の向上
    • 再学習の仕組み
    • Blue-Green deploy
    • リソース管理
    ML Platform
    Lovemachine

    View Slide

  24. 商品監視 いま
    移植作業が大変だった
    ● Train code がない
    ● local でしか動かない状態の Jupyter notebook
    ● 身元不明の BigQuery table を読んでいる
    ● 身元不明の CSV を読んでいる
    ● DRY でない
    ● 線形代数の効率的な演算が使えていない(for 文がある)
    ● Evaluation を独立して実行できるようになっていない
    恩恵: コード品質の向上

    View Slide

  25. 商品監視 いま
    問題は
    ● データサイエンティストとバックエンドエンジニアのスキルセットの差
    ● 分析時のコードがそのまま
    恩恵: コード品質の向上
    Lovemachine に載せたかったら
    ある程度ちゃんとしないと載らない

    View Slide

  26. 商品監視 いま
    ML による
    自動検知
    CS メンバーの確認
    (ラベルづけ)
    教師データに CS 業務のフィードバックが得られる
    恩恵: 再学習の仕組み

    View Slide

  27. 商品監視 いま
    データの傾向変化に対応できる
    たとえば
    ● ゲームアカウント(新しいゲーム)
    ● キーワード羅列(流行)
    恩恵: 再学習の仕組み

    View Slide

  28. 商品監視の難しいところ
    違反出品は正常出品に対してとても少ない imbalanced な状態
    例えば一日に100万件が正常出品されるとき
    ● False Recall 99.000% -> 10,000件 False positive
    ● False Recall 99.900% -> 1,000件 False positive
    ● False Recall 99.990% -> 100件 False positive
    ● False Recall 99.999% -> 10件 False positive

    View Slide

  29. 商品監視の難しいところ
    閾値の決め方は問題による
    ● その違反がされることはどれくらい許せる?
    ● 検出された商品は CS がチェックする必要がある?
    ● 検出されると非表示になる? 通報が飛ぶ?
    ※開発中の画面

    View Slide

  30. 機械学習基盤 これから

    View Slide

  31. 機械学習基盤 これから
    1. 全ての移植作業をやるわけにはいかない
    2. 機械学習基盤の機能を充実させたい
    • 社内 AutoML を作りたい?
    i. Feature Extraction?
    ii. Black Box Optimization?
    3. SysML がスキルセットの差を埋めたい
    • データサイエンティスト ⇔ SRE
    • データサイエンティスト ⇔ バックエンドエンジニア

    View Slide

  32. We’re 超 hiring
    SysML
    https://open.talentio.com/1/c/mercari/requisitions/detail/7093

    View Slide