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

Neural Architecture Searchを用いて出品違反検知モデリングを高速化したお話

Neural Architecture Searchを用いて出品違反検知モデリングを高速化したお話

Presented at MLCT #10

6db95712207f1cbd65a9516f9eee71df?s=128

Daiki Kumazawa

May 29, 2019
Tweet

Transcript

  1. 1 Confidential - Do Not Share Neural Architecture Searchを用いて 出品違反検知モデリングを高速化したお話

    Software Engineer Intern, Machine Learning Daiki Kumazawa
  2. 2 Confidential - Do Not Share - Twitter: @dkumazaw -

    Second-year M.S. student in Statistics @ Stanford - 9月までインターン - 経済→統計→機械学習 - 次は 低レイヤーをやりたい 自己紹介
  3. 3 Confidential - Do Not Share • メルカリは約1300万MAUにご利用頂いており、日々多数の出品がある • メルカリの規約や法令に違反する出品があり、それらは早急に検知・削除されな

    ければいけない(https://www.mercari.com/jp/help_center/getting_started/prohibited_items/) • 理想: お客様の目に規約違反出品が触れないようにする • カスタマーサポートが人力で全ての出品をチェックするのは非現実的 • 機械学習エンジニアのタスクは、特定の違反に該当する出品を高いPrecision で見つけること!(意訳:もし誤って正常出品を削除してしまうと、出品者のお客 様体験は悪い) • 使用可能な色々なモダリティのデータを最大限活用したい 問題設定
  4. メルカリが保有する商品データ概要 商品名 フォーマルワンピース 商品説明 未使用で美品です。タグ付きになって います。 出品者 めるーさん カテゴリー レディース/ワンピース/

    ミニワンピース ブランド 無し 商品サイズ M 商品状態 新品、未使用 配送料負担 送料込 値段 ¥2,180 配送方法 らくらくメルカリ便
  5. 5 Confidential - Do Not Share 規約や法令は常に変化する e.g.) チケット不正転売禁止法 (2019年6月14日施行)

    第一条の4: “この法律において「特定興行入場券の不正転売」とは、興行主の事前の同意を得な い特定興行入場券の業として行う有償譲渡であって、興行主等の当該特定興行入場券の販売 価格を超える価格をその販売価格とするものをいう。 ” 第三条: “何人も、特定興行入場券の不正転売をしてはならない。 ” (出典: http://www.bunka.go.jp/seisaku/bunka_gyosei/ticket_resale_ban/index.html) ➞違反カテゴリに変化や追加がある度に対応するのは大変! 課題その①
  6. 6 Confidential - Do Not Share マルチモーダルモデリングのベ ストプラクティスとは? 課題その② 出典:

    https://tech.mercari.com/entry/2018/04/24/164919 弊社でも過去から取り組んでいるが、画像の分 類タスク等の様なOff-the-shelfのネットワーク やモデルのトポロジーは存在しない。 ➞タスクに最適なネットワーク設計とは?
  7. 7 Confidential - Do Not Share 1. ルールの変化にスケーラブルに対応できる 2. マルチモーダルで精度の出るモデルを作れる

      そんな仕組みが欲しい! Q:どのような機械学習システムを作ればこれらの課題に対応できるか? A: AutoML的な、モデリングからデプロイ準備までやってくれる何か ➞Neural Architecture Searchを活用したシステムを開発することに 整理すると・・・
  8. 8 Confidential - Do Not Share Neural Architecture Search Neural

    Architecture Search with Reinforcement Learning (Zoph & Le 2017) - 元祖NAS - RNNを使ってニューラルネットをサン プル - 強化学習でRNNの重みを最適化 - 生成された子モデルのシグナルを 使ってパラメータ更新をする 出典: https://arxiv.org/abs/1611.01578
  9. 9 Confidential - Do Not Share ではなくて・・・ DARTS: Differentiable Architecture

    Search (Liu et al., 2018) - アーキテクチャの最適化を微分可能にすることでRNNを不要に - レイヤーごとの接続が全てのオペレーションの重ね合わせになっている 出典: https://arxiv.org/abs/1806.09055
  10. 10 Confidential - Do Not Share 実験してみる

  11. 11 Confidential - Do Not Share - 今回の実験では画像とテキストを使用 - 実験のねらいは、どの程度の精度が出るモデルを自動生成できるか検証す

    ること(e.g. 現在プロダクションに乗っているモデルに勝てるか?) - 画像の特徴量抽出:一般に使われているCNNを利用(ImageNetから効率 的に転移学習するため) - テキストの特徴量抽出:DARTSを1D Convolutionに対応させたアーキテク チャサーチでネットワークを探索する NAS手法
  12. 12 Confidential - Do Not Share - 6つの違反カテゴリに対してマルチモーダルなデータを集める - NASで6カテゴリについて最適化されたアーキテクチャを探索

    - それぞれのカテゴリについて従来のモデルとNASで発見されたモデルの両方を トレーニング - 評価:Average precisionと、閾値を上下させた際のPrecision/recallの挙動 に注目 NAS手法 v.s. 従来手法 実験内容
  13. 13 Confidential - Do Not Share 正クラス(違反)のSoftmax出力の閾値を0.9に設定した場合の PrecisionとRecall値 実験結果(の一部) ➞各カテゴリにおいて精度向上、NAS手法の有効性を確認

  14. 14 Confidential - Do Not Share - データをFeedしたら勝手にトレーニングと 評価をして、サービングできるようなモデル を自動で仕上げるところまでやってほしい

    - 内製のデータETLプラットフォームに組み 込むことで対応 どうやってシステム化するか? name: nas-classifier workflow: - name: dataset module: nas.dataset_script args: - --categories - hogehoge - name: search module: nas.architecture_search args: - --batch_size - 512 dependencies: - dataset - name: evaluation module: nas.evaluation args: - --num_workers - 16 dependencies: - dataset - search こんな感じでyamlを書くと、データ獲得・サーチ・評価・デ プロイ可能なモデル生成までやってくれるようになった!
  15. 15 Confidential - Do Not Share 1. 違反カテゴリが追加Or変更される! 2. エンジニアのアサイン

    3. 情報収集、データ収集、モデリング、精度検証 4. 精度がでなければ3に戻る 5. デプロイ準備、QA 6. 無事デプロイ! ・・・と、どうしても時間がかかってしまう(場合によるが、1〜3ヶ月)。 従来の開発の流れ
  16. 16 Confidential - Do Not Share 1. 違反カテゴリが追加Or変更される! 2. エンジニアのアサイン

    3. 情報収集、データ収集、モデリング、精度検証 4. 精度がでなければ3に戻る 5. デプロイ準備、QA 6. 無事デプロイ! 新しいシステムでの開発 データETLプラットフォームへの組み込みで自動化 NASのライブラリ化で自動化 NASの面倒を見れる人がいれば良い
  17. 17 Confidential - Do Not Share タスク発生から実際のデプロイまでを高速で行えるようになった 何が変わったか 〇〇についても対応したいですね。 じゃあPoCしてみましょうか。

    ➞即実験、上手く行けばそのままデプロイが可能に! (2,3週間)
  18. 18 Confidential - Do Not Share - 1)規約や法令の変化にスケーラブルに対応できて、 - 2)マルチモーダルで精度の出るモデルを作成できるシステムが必要!

    - Neural Architecture Searchを用いたAutoML的システムを開発した - 内製のデータETLプラットフォームに載せることでモデルの開発サイクルを高速 化! - 月単位で行われていた開発を、週単位に落とした - 高速に実験とデプロイのイテレーションを回せるように まとめ
  19. 19 Confidential - Do Not Share - データ・特徴量設計は当然手動! - 上手く行かなかったカテゴリでは、利用していないモダリティが効いていた

    - では、画像とテキスト以外にどんなモダリティ・特徴量をどこまで含めるべきか? - NAS手法の改善は可能か? - 画像とテキストの中間特徴量の fusionをする手法も提案されている - (Multimodal Fusion Architecture Search) - アーキテクチャ最適化手法についても、ここ1 −2年で活発に研究が進んでいる段階 課題点