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

A/BテストにおけるVariance reduction

A/BテストにおけるVariance reduction

yaginuuun

May 28, 2021
Tweet

More Decks by yaginuuun

Other Decks in Technology

Transcript

  1. A/Bテストにおける Variance reduction
    @yaginuuun, 2021/05/28

    View Slide

  2. 今日の話の元論文
    ● Improving the Sensitivity of Online Controlled Experiments: Case Studies at
    Netflix
    ● NetflixによるKDD’16の論文
    ● カバ本でも参照されている
    ○ Trustworthy Online Controlled Experiments - A Practical Guide to A/B
    Testing

    View Slide

  3. A/Bテストにおける Sensitivity とは何か
    ● 評価指標に向けて使われる言葉
    ● ある決められたサンプルサイズにおいて、どのくらい小さな差分まで統計的有意に
    検出可能か(Minimum Detectable Effect: MDEとも呼ぶ)
    ○ MDEが小さいほどSensitivityは高いことになる。

    View Slide

  4. Sensitivity が低いことによって起こる問題
    ● 一人当たりの売り上げが20%上がった!でも統計的有意差はなかった。。
    ● 改善を行った機能単体で見ると購入が増えた!でも全体では統計的有意差はな
    かった。。
    ● → 基本的にできる限り上げたい

    View Slide

  5. Sensitivityを上げたい
    MDEは以下の式で求まる。*
    * 平均値の差の検定かつ有意水準 5%, 検出力80%, 均等割り付けの両側検定の場合
    ● 指標の分散が小さいほどSensitivityは高くなる
    ● サンプル数が多いほどSensitivityは高くなる

    View Slide

  6. Sensitivityを上げたい
    大きく3つの方策がある
    ① A/Bテストに割り当てるサンプルサイズを増やす
    ② Boldな変更を行う
    ③ Variance reductionを行う
    それ以外にも:分散の小さい指標を用いる
    , cappingする, ...

    View Slide

  7. Sensitivityを上げたい
    大きく3つの方策がある
    ① A/Bテストに割り当てるサンプルサイズを増やす
    ② Boldな変更を行う
    ③ Variance reductionを行う
    それ以外にも:分散の小さい指標を用いる
    , cappingする, ...
    常に可能なわけではない
    ● サンプルサイズはサービス規模やダウンサイドリスクの制約を受ける。
    ● A/Bテストされるもの全てをBoldにはできない

    View Slide

  8. Sensitivityを上げたい
    大きく3つの方策がある
    ① A/Bテストに割り当てるサンプルサイズを増やす
    ② Boldな変更を行う
    ③ Variance reductionを行う
    それ以外にも:分散の小さい指標を用いる
    , cappingする, ...
    適用可能なケースが圧倒的に多い

    View Slide

  9. 補足:Variance reductionの解像度を少し上げる
    平均値の差の検定で用いられている統計量:
    ここを小さくすることを目指す

    View Slide

  10. 補足:Variance reductionの解像度を少し上げる
    平均値の差の検定で用いられている統計量:
    Variance reductionを行わない場合よりも大きくなる = 有意差が検出されやすくなる

    View Slide

  11. Variance reductionの手法
    ● Stratified sampling
    ● Post stratification
    ● CUPED
    どれも共変量を使って行う。

    View Slide

  12. Stratified sampling
    ● 日本語だと 層化抽出法 と呼ばれる。
    ● 各層(Strata)から母集団と同じ比率でサンプルを抽出する
    ● 母平均の推定は単純無作為抽出の場合と同様に行う
    Stratified sampling in Machine Learning. より引用

    View Slide

  13. Post stratification
    ● サンプリング自体は単純無作為抽出を想定
    ● 母平均の推定を以下の式で行う
    母集団のおける各Strataの比率 測定された各Strataにおける平均値

    View Slide

  14. CUPED
    ● Controlled experiments Utilizing Pre-Experiment Data
    ● 母平均の推定を新しく以下の値を定義して行う(共変量が一次元の場合)

    View Slide

  15. 各手法を適用した場合の分散*
    ● 単純無作為抽出:
    ● Stratified sampling:
    ● Post stratification:
    ● CUPED:

    View Slide

  16. 各手法を適用した場合の分散*
    ● 単純無作為抽出:
    ● Stratified sampling:
    ● Post stratification:
    ● CUPED:
    どれも単純無作為抽出の場合よりも小さくなっている

    View Slide

  17. 各手法を適用した場合の分散*
    ● 単純無作為抽出:
    ● Stratified sampling:
    ● Post stratification:
    ● CUPED:
    Stratified samplingの方がPost stratificationよりも分散削減効果が大きい。
    一方で、サンプルサイズが大きい時はほとんど差がなくなる。

    View Slide

  18. 各手法を適用した場合の分散*
    ● 単純無作為抽出:
    ● Stratified sampling:
    ● Post stratification:
    ● CUPED:
    CUPEDによる分散低減効果は共変量の選択に依存する

    View Slide

  19. 実験条件
    ● 単純無作為抽出を基準として、各手法による分散低減量を比較する。
    ● 対象とする指標は以下の2種類
    ○ Retention rate: 契約継続率
    ○ Streaming thresholds: ある一定の閾値よりも動画を視聴したかどうかを示す
    2値変数。7個thresholdを変えたものを使う。
    ● 新規 / 既存 の2種類のセグメントで比較を行う。
    ● A/Aテストを想定し、ランダムな分割を各手法において100k回行い分散低減量の
    点推定値を得た。

    View Slide

  20. 共変量
    ● 新規 / 既存で異なる
    ○ 新規の場合、割り当てが登録時に行われるのでサービス上での行動を用いた
    指標を共変量とすることができない。
    ● 手法間でも異なる
    ○ 新規の場合、手法間では同じ
    ○ 既存の場合、
    ■ Stratified samplingとPost stratificationは同じ
    ■ CUPEDは異なる(実際にNetflixで用いているものを用いた)

    View Slide

  21. 実験結果
    新規(Figure 3) 既存(Figure 4)

    View Slide

  22. 実験結果
    新規(Figure 3) 既存(Figure 4)
    既存よりも新規の方が分散低減量が少ない。
    → 新規では使うことのできる共変量が限られているから

    View Slide

  23. 実験結果
    新規(Figure 3) 既存(Figure 4)
    Post stratificationとStratified samplingはほとんど同じくらいの分散低減量となってい
    る。(事前の期待通り)

    View Slide

  24. 実験結果
    新規(Figure 3) 既存(Figure 4)
    CUPEDではStreaming thresholdが高くなっても分散低減量が減少しない。
    → 違う共変量を用いており、手法による差ではないらしい。

    View Slide

  25. 実験結果
    CUPEDで使っている共変量と同じ共変量を用いてPost Stratificationを行うと、同程度
    の分散低減量を達成できる。
    Figure 5

    View Slide

  26. まとめ
    ● Variance reductionは適用可能なケースも多く、Sensitivityを高めることができる方
    策。
    ● サンプルサイズが大きい状況ではどの手法を用いても同じくらいの分散低減が期
    待できるので、実装が容易で柔軟性のあるPost stratificationやCUPEDが推奨さ
    れる。

    View Slide

  27. 所感
    ● 各手法でどのようにStrataを切ったのか?または何個くらい共変量を用いたとかが
    気になる。(あまり詳しく書かれていない)
    ● 共変量の選択が肝
    ● pre-period analysisを行うよりも良いかもしれない。

    View Slide

  28. References
    ● Improving the Sensitivity of Online Controlled Experiments: Case Studies at
    Netflix
    ● Improving the Sensitivity of Online Controlled Experiments by Utilizing
    Pre-Experiment Data: CUPEDの元論文
    ● Power, minimal detectable effect, and bucket size estimation in A/B tests by
    twitter engineering blog

    View Slide