Trustworthy Online Controlled Experiments: 1 Introduction and Motivation を読んだ
Prefaceに続いて1章を読んだメモ
- COBOL開発者のGrace Hopper氏の言葉
- アイデアの価値を評価するのは難しい
- 収益単体をA/BテストのOECにすることは不適切
- OECの例
- ParameterとVariant
- Data-drivenとData-informed(Data-aware)
- 成功するアイデアは3分の1
- Guardrail メトリックの定義
- 実験期間の設定
- 多腕バンディットのはなし
COBOL開発者のGrace Hopper氏の言葉
Grace Hopper氏の引用から本章は始まる
One accurate measurement is worth more than a thousand expert opinions.
正しいデータの価値の強さを表現した良い言葉
アイデアの価値を評価するのは難しい
It is hard to assess the value of an idea.
施策リストの中で優先度が低く6ヶ月以上バックログに入ってた施策を開発者から簡単にコーディングできるよと言われてA/Bテストを実施したら、数時間後には今まで見たことのない上昇率を叩き出した話。これはMicrosoftのA/Bテストの中で最も成功した事例となっている。これからわかるように、アイデアの価値は評価するのが難しいという代表的な事例
収益単体をA/BテストのOECにすることは不適切
収益をOECにすると、ユーザ体験が良くなくても上がることがある。たとえば、一時的に広告の量を増やせば収益はあがるが、長期的にみてユーザの離脱を引き起こす可能性がある。Bingでは、ユーザ体験としてユーザあたりのセッション数に対する収益を見ている。つまり、ユーザ体験を下げず収益を上昇させることが重要
OECの例
代表的なOECとして、Active days per userもよく使われる。OECはA/Bテスト期間中で測定できかつ、長期的にもプラスに働くと考えられるものが良い
ParameterとVariant
Parameterは実験変数のこと。一方、Variantはテストされるユーザ体験を指す。ある値をParameterに割り当てることでVariantが発生する
A/Bテストでは、2つのVariantがあるのが一般的。ControlとTreatment。個人的には、Variantが直訳だとよくわからなかったけど、ユーザ体験と言われてスッと理解できた
Data-drivenとData-informed(Data-aware)
Data-informed(Data-aware)はときどきシングルソースデータによって意思決定がdriveされるという意味を避けるために使われる言葉だけど、この本では同一の言葉とみなしている。究極的に、意思決定は複数のデータソース(A/Bテストの結果や定性調査やコードのメンテンスコスト)で決定されるべきだし、Data-driven組織もData-informed組織も意思決定するために、直感に頼るのではなく関連のあるデータを集め、HiPPoに知らせるということは変わらないから
成功するアイデアは3分の1
Microsoftでは、3分の1くらいしかアイデアは成功していない。さらに、BingやGoogleのように十分最適化されているドメインでの成功はさらに難しくなる。メジャーな成功というのは、OECが10%-20%くらいの上昇を指したりするが、Bingだと毎年OECを2%上昇させることを目標にあげられているえらしい(この2%はすべてのA/Bテストの上昇率、つまりTreatment effectの総和で計算しているらしい)
Guardrail メトリックの定義
組織が変更を許容できないと判断するときに使うのがGuardrail メトリック。飛行機の例でいうと、飛行機がクラッシュする確率は絶対にあげてはならない。Guardrail メトリックを保ちつつ、OECを上げるのが必要
実験期間の設定
部屋の温度を少し上げると氷が溶けるかどうかの実験を考える。部屋の温度を少し上げただけではすぐには変わらない(つまり、Short-termでは変わらない)が、長期的にみると溶けてるかどうかは一目瞭然でわかる(long-termでみると変わる)という例えはなるほどと思った
多腕バンディットのはなし
多腕バンディットは大方優れているが、単一のOECで評価関数を最適化していくのが一般的。A/Bテストだと複数のメトリックを評価して決断できるのがメリット
次回2章を読む