Sample Ratio Mismatchの紹介 @Geekな論文読み会

7e6294f25f043bced04494a583f54379?s=47 yagi
October 18, 2020

Sample Ratio Mismatchの紹介 @Geekな論文読み会

7e6294f25f043bced04494a583f54379?s=128

yagi

October 18, 2020
Tweet

Transcript

  1. Diagnosing Sample Ratio Mismatch in Online Controlled Experiments: Taxonomy and

    Rules of Thumb for Practitioners
 2020/10/18 Geekな論文読み会③
 @yaginuuun

  2. Metadata
 • 論文はここから
 • Author: Aleksander Fabijan, Microsoft
 • Date:

    2019
 • Journal: KDD

  3. Contents
 • 論文を読んだモチベーション
 • Sample Ratio Mismatch(SRM)とは?
 • 5種類のSRM
 •

    所感

  4. 論文を読んだモチベーション
 カバ本の中にSRMが出てきたが、理解の解像度が低かったので原著を当たり たかった
 Trustworthy Online Controlled Experiments: A Practical Guide

    to A/B Testing
 • 今のところ今年で一番読んで良かった本 
 • A/Bテストに関するGold Standardな本になると思ってる 
 • 英語のみ

  5. Sample Ratio Mismatch(SRM)とは?
 各Variantに割り当てられるunit数が事前の想定と乖離する現象のこと
 例)1つのcontrol群、1つのtreatment群に等しくunitを割り当てるシンプルな二群比較を 考える。
 この場合、Sample Ratio(それぞれのvariantに割り当てられたunit数の比)は1となること が想定されている。
 Sample

    Ratio = [# of units in treatment]/[# of units in control]

  6. SRMが発生していると何が問題なのか?
 セレクションバイアスが生じている可能性が非常に高くなる
 ▶ 検証結果の信頼性が著しく損なわれてしまう
 セレクションバイアスが生じている検証の例:
 • ECサービスにおけるCRM施策の効果検証
 • クーポンメールを開封したunitと開封しなかったunitでの売り上げ比較
 ▶

    効果が過大評価される

  7. SRMの検出方法
 適合度のカイ二乗検定で検出可能
 • O: 各Variantに割り当てられたunit数
 • E: 各Variantに割り当てられるunit数の想定値


  8. SRMはいつ発生するのか?
 A/Bテストの主なプロセス:
 ① Assignment: システムがvariantを割り当てる
 ② Execution: 実際に各unitが介入を受け、ログが発行される
 ③ Log

    Processing: 発行されたログが、DBに格納される
 ④ Analysis: 分析者が集計を行う
 A. 全てのStepで発生し得る(ので原因究明も難しい)

  9. 5種類のSRM
 • Experiment Assignment SRMs
 • Experiment Execution SRMs
 •

    Experiment Log Processing SRMs
 • Experiment Analysis SRMs
 • Experiment Interference SRMs

  10. Experiment Execution SRMs
 • SkypeにおけるA/Bテスト
 • バッファリングパラメータをダイナミックに調整することで通話音質向上を 狙ったテスト
 • 音質は有意に悪化する結果になった


    • treatment群でunit数が30%少ないことがわかった(SRMの発生)

  11. Experiment Execution SRMs
 A. バグによってセッション途中にvariantのidが実際にアサインされているものと は違うものに更新されてしまっていた
 バグの影響を受けていないサブグループにおいて効果検証を行った結果、音 質は改善していた。


  12. Experiment Execution SRMs
 どのようにすれば原因までたどり着けるか?
 一筋縄では行かないが・・・
 • 様々な角度からmetricsをモニタリングする
 ◦ data quality

    metrics: Sample Ratioやログの記録回数など
 ◦ product performance metrics: 応答速度など
 ◦ engagement metrics: ユーザー行動の指標

  13. Experiment Analysis SRMs
 • Microsoft TeamsにおけるA/Bテスト
 • First-Run Experience(FRE) page(最初にプロダクトを起動した時に開かれ

    るページ)をスキップするテスト
 • FREページを見たunitだけに絞って分析を実施した
 • treatment群でunit数が多くなった(全体では発生していない)

  14. Experiment Analysis SRMs
 A. Control群はロード時間が長く、FREページにたどり着く前に離脱してしまう unitが多かった。
 おそらくこれが分析者としては遭遇回数が多いと思う
 • セグメントを実験期間含めて切る
 •

    分母の数値が変わる指標で評価をする
 • etc...

  15. SRM Taxonomy


  16. 所感
 • SRMについての認識がかなりクリアになった
 • 文中にも書いてあるが、まず存在の認識を共有するのがSRMを避ける上 で重要
 • SRMの原因解明のためには様々な角度でのモニタリングが筋が良い