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

CFML at KDD2019

CFML at KDD2019

KDD2019のCounterfactual Machine Learning(CFML)関連のワークショップ/ペーパーを紹介しています。
特にビジネスのどういう場面において
CFMLが必要とされているのかという内容が中心です。

Komei Fujita

August 21, 2019
Tweet

More Decks by Komei Fujita

Other Decks in Technology

Transcript

  1. 自己紹介 藤田 光明(ふじた こうめい) ◉ CyberAgent18新卒 ◉ アドテクスタジオのDynalystというプロダクトに所属 ◦ 広告配信ロジックの開発・実装を担当

    ◉ ビジネス x 機械学習に興味あり ◉ R/Python/Scala ... ◉ 学生時代は経済学を勉強していました ◦ 専門は実証産業組織論・計量経済学 2
  2. KDDとは?
 • KDD(Knowledge Discovery and Data Mining)
 • 応用系の機械学習/データマイニングのトップカンファレンス
 •

    学術機関における研究のみでなく様々な企業での研究や応用事例につい ての発表がある
 • 実ビジネスや社会でMLをどのように使ってどう評価するかという側面に重 きが置かれている印象
 

  3. paper@KDD2019
 • 1179 submissions
 ◦ 111 accepted for oral 


    ◦ 63 accepted for posters 
 • 多かったテーマ
 ◦ グラフやネットワーク構造 
 ◦ AIのexplainability 
 ◦ Deep Learning
 • その他雑感
 ◦ 企業の論文多め 
 ◦ RTB系は少ない 
 ◦ CFML系は5本くらい? 
 画像はhttps://twitter.com/dirkvandenpoelから引用

  4. Tutorial / Workshop
 • 8/4 tutorial day, 8/5 workshop day


    • tutorial
 ◦ A/Bテストのtutorialが2つも
 ◦ hands onのチュートリアルもある
 • workshop
 ◦ ADKDD (since 2007)
 ▪ criteo, google, Microsoft, Tencentなどが発表 
 ◦ オフライン評価系のwsもある
 画像はhttps://twitter.com/dirkvandenpoelから引用

  5. Offline and Online Evaluation of Interactive Systems
 • オフライン評価系のワークショップ(2回目)
 ◦

    http://evalworkshop.com/2nd/index.html
 • 発表企業
 ◦ Netflix, Intel, Google, Adobe, Linkedinなど
 • Keynote Speaker
 ◦ Thorsten Joachims: コーネル大、CFML系の大御所 など

  6. 実ビジネスでCFMLが必要とされる理由は?
 事例をいくつか紹介する
 1. Booking.com (for 意思決定) “150 Successful Machine Learning

    Models: 6 Lessons Learned at Booking.com” 2. Netflix (for Uplift) “Quantifying the Impact of a Recommendation” 3. Search engine (for モデルのパフォーマンス改善) “Unbiased Evaluation for Unbiased Rankings”
  7. A. オフラインのモデルパフォーマンスとオンラインでのビジネス指標の関係
 相関係数 ≒ -0.1
 • 横軸 
 新旧モデルのAUC等の差
 ◦

    右にいくほど旧モデルに比べてオフライン性能高
 ◦ 指標: ROC, AUC, MRRなど
 • 縦軸
 新旧モデルのオンラインでのビジネス指標 の差
 ◦ 上にいくほど新モデルに比べてオンライン性能高
 ◦ A/Bテストをしている
 ◦ 指標: CVRなど
 
 

  8. なぜオフラインとオンラインの結果が乖離するのか?
 考えられる要因
 • Value Performance Saturation
 ◦ あるラインまではビジネス指標とオフラインのモデル性能には正の相関があるが、そこを 超えるとそのカーブがサチる
 •

    Uncanny Valley effect
 ◦ 精度良すぎると逆に消費者にとって気持ち悪い 
 • Proxy Over-optimization
 ◦ 例: CTRを最大化するレコメンドは必ずしもCVRを最大化するわけではない 

  9. A/Bテストのコスト
 基本A/Bテストをやるべきだが、、、 • 常にプロダクト実装のコストがある ◦ 事前の検証で効果がよくないとわかるのであれば, 実装する必要がない • 新ロジックが良くない場合,売上/利益を下げてしまう •

    事前に特徴量やハイパーパラメータのチューニングができない ◦ これらをA/Bテストでするにしても,パターンの数に限界 • 結果がわかるまで時間がかかる可能性がある 19 Counterfactual(反実仮想)を考えたい!

  10. • 過去のログデータを用いて、仮に新ポリシーが導入されていた場合、どの ような報酬を得ていたかを推計する
 ◦ A/Bテストをする前にポリシーの評価ができる 
 ◦ モデルのパフォーマンス(AUC等) でなく、報酬(興味のあるビジネス指標に近いもの) で評価


    • しかし、ログデータは既存ポリシーが生み出したもの
 ◦ バイアスが存在(既存ポリシーが選んだものにしかラベルがつかない) 
 
 
 Counterfactualを考える
 CFMLの出番!!

  11. 2. Netflix 
 番組のレコメンド
 
 
 ステータス 毎週見てる 95% 5回くらい見

    てる 30% 知らない 72% レコメンド無の 視聴確率 95% 10% 70% レコメンド有の 視聴確率 仮に両方の確率が わかったとすると
  12. 2. Netflix 
 番組のレコメンド
 
 ステータス 毎週見てる 95% 5回くらい見 てる

    30% 知らない 72% レコメンド無の 視聴確率 95% 10% 70% レコメンド有の 視聴確率 最も上昇幅が 大きいものを 推薦すべき
  13. モデリング
 従来のML
 1. p(watch)を予測するモデルを作る
 2. p(watch)が最も高い番組を推薦
 
 CFML
 1. p(watch

    | recommend show)とp(watch | no rec)を予測するモデルを作る
 2. lift = p(watch | rec) - p(watch | no rec)が最も高い番組を推薦
 
 ランダムにトリートメントを割り振るようなログデータが必要
 

  14. 新ランキングポリシーを考える際の問題点
 • あるランキングに対してユーザからクリックというフィードバックをもらう
 • click = observed ∧ relevant と仮定する


    • 問題: クリックされていないのは、
 ユーザが見なかったからなのか関連がなかったからなのかがわからない
 not click ⇔ not observed ∨ not relevant
 • 既存ポリシーが上位にランキングするものに正ラベルがつきやすい
 ◦ 新ポリシーの学習のためには、このバイアスを補正する必要がある
 
 CFMLの出番!! 

  15. 新ランキングポリシーを考える際の問題点(再掲)
 • あるランキングに対してユーザからクリックというフィードバックをもらう
 • click = observed ∧ relevant と仮定する


    • 問題: クリックされていないのは、
 ユーザが見なかったからなのか関連がなかったからなのかがわからない
 not click ⇔ not observed ∨ not relevant
 • 既存ポリシーが上位にランキングするものに正ラベルがつきやすい
 ◦ 新ポリシーを学習するには、このバイアスを補正する必要がある
 

  16. 問題設定
 • query: x
 • ranking: y
 • relevance: r


    • observation: o
 • loss: ⊿(y|x, r)
 ◦ rank of relevant document 
 • feedback: click, c
 • Assume: (c = 1) ⇔ (o = 1) ∧ (r = 1)
 • Problem: (c = 0) ⇔ (o = 0) ∨ (r = 0)

  17. Inverse Propensity Score(IPS)によるバイアス補正
 • Observation Propensitiesを定義する
 ◦ 
 • 新しいランキングポリシーのlossのIPS

    Estimator:
 ◦ 
 • これは真のloss⊿(y|x, r)の不偏推定量になっている
 • 不偏なlossを用いて学習する(詳細は省略)

  18. Experiments
 • Yahoo Web Search Dataset
 ◦ relevanceについての情報が完全なデータセット 
 •

    合成Clickデータを作成
 ◦ position based propensity modelを考える 
 

  19. Scaling with Training Set Size
 • IPS -> 
 low

    bias, high variance
 • データサイズが小さいところで は影響大
 • データサイズが大きくなると varianceが低下

  20. Focused Context Balancing for Robust Offline Policy Evaluation
 • バンディットなどの新しいポリシーの報酬評価


    • 既存手法はIPSなどで既存ポリシーによる分布シフトの影響を除去 している
 • しかし、新ポリシーによっても分布のシフトは起こる
 ◦ それらは無視されてきた
 ◦ この分布シフトの影響も除去することにトライ

  21. まとめ
 • CFMLはビジネスのさまざまな場面で必要とされている 
 • 意思決定を助ける
 ◦ 新ポリシーをプロダクトでA/Bテストする前にオフライン評価
 • Upliftを考慮する


    ◦ 最も反実仮想的な効果があるレコメンドを行う
 • モデルのパフォーマンスを改善する
 ◦ IPSで補正したlossでの学習

  22. References (paper)
 • Anomaly Detection for an E-commerce Pricing System


    ◦ https://arxiv.org/abs/1902.09566 
 • 150 Successful Machine Learning Models: 6 Lessons Learned at Booking.com
 ◦ https://dl.acm.org/citation.cfm?doid=3292500.3330744 • Focused Context Balancing for Robust Offline Policy Evaluation ◦ https://dl.acm.org/citation.cfm?id=3330852 • Unbiased Learning-to-Rank with Biased Feedback ◦ http://www.cs.cornell.edu/people/tj/publications/joachims_etal_17a.pdf
  23. References (workshop)
 • 2nd Workshop on Offline and Online Evaluation

    of Interactive Systems ◦ http://evalworkshop.com/2nd/index.html • “Unbiased Evaluation for Unbiased Rankings” ◦ http://evalworkshop.com/2nd/slides_unbiasedLTR_KDD19EvalWS.pdf • “Quantifying the Impact of a Recommendation” ◦ https://docs.google.com/presentation/d/1_nf7hNX8nsJIznRg4nF-dBV3btcqHSDXVwWiNVtI9M4/edit#slide=id. g5f816bccb1_0_0