6章 最適腕識別と
A/Bテスト
機械学習プロフェッショナルシリーズ勉強会
「バンディット問題の理論とアルゴリズム」
発表担当 VOYAGE GROUP 中野智文
自己紹介
• 中野智文
• VOYAGE GROUP
• 広告データの分析
• その前は
• 質問応答システム
• 検索ランキングアルゴリズム
• 教育のための機械学習・統計
• 将棋
最適腕識別とA/Bテスト
• 最適腕識別(best arm identification)
• 累積報酬の最大化ではなく、(将来の)報
酬が最大の腕を識別すること
• 最適腕識別において、K=2 (腕の数が2)のと
き、
• A/Bテストとよぶ
• ただし一般の「バンディット問題」では最適腕
識別を含むことがある
6.1 A/Bテスト定式化
腕の番号:
報酬の期待値:
期待値最大の腕:
最大と二番手の差:
固定予算
時刻:
報酬:
(最大腕)推定:
誤り確率
(誤識別率):
時刻tに引いた腕:
固定信頼度
誤識別率が δ 以内であると確信できるまで。
を満たしつつ
を最小化する
次を満たす停止規則を設定する必要がある
6.1.1 累積報酬最大化との違い
• 累積報酬最大化:
• 選択の殆どが期待大と推定される腕に
• 誤識別率はTに対して多項式オーダー
• A/Bテスト:
• 全ての腕に同程度
• 誤識別率はTに対して指数オーダー
例6.1参照
例6.1 メモ
腕を均等に引く場合の
誤識別率:
→多項式的な減衰
KL-UCBの誤識別率:
→指数的な減衰
6.1.2 ε-最適腕識別
• 本質的に解決不可能
• 例: μ = 0.501, 0.5
• ε最適腕識別:
• 期待値が↓以上の腕を識別する
μ = 0.501, 0.5, 0.1 の例 メモ
0.501 と 0.5の誤識別率
0.5 と 0.1のサンプルサイズ
n3は全体の
標本複雑度
必要なサンプルサイズ
(本にはサンプル数とありますが…)
メモ
• 偶然 になる確率
• ヘフディングの不等式によると、サンプルサ
イズが少なくとも
• ないと、 未満という仮説を棄却でき
ない
• それ以外も同様な話
6.3 最適腕識別の方策
• 信頼上限(UCB; upper confidence bound)
• 信頼下限(LCB; lower confidence bound)も使
う
• 最も期待値の高い腕の信頼下限
• よりそれ以外の全ての(信頼上限―ε)
が小さければ終了
• より信頼上限が小さい腕は排除
• 探索候補腕全試し
信頼上限と信頼下限
信頼上限
信頼下限
6.3.2 スコアに基づく方法
• 1番手の下限と、2番手の上限の差が広がる
ように、1番手と2番手のみを引く。
UGapE方策では、期待値が大きい方
ばかり選ばれる可能性があるので、サ
ンプルサイズの小さい方を選ぶ。
6.4 固定予算の設定
もし ならば、誤識別率を
で抑えることが出来るが、Hεを知らない。
つまり固定予算は未解決
雑感
• LUCB方策で用いる信頼区間を変えたい
• 上下対称なので、修正Wald法や、Wilson
score interval などにした方が良さそう
• 動的なABテストは現実的に厳しい
• 前の報酬が判明する前に次の腕を引く
• ログの問題。広告であれば表示からク
リックまでもタイムラグがある。
• 開発コスト。Webであればクッキーを使っ
たL7スイッチで実現したい。

6章 最適腕識別とA/Bテスト

Editor's Notes

  • #5 i = 1,2,...K \mu_i i^* = \arg\max_{i\in\{1,2,...,K\}}\mu_{i} \mu_{1} \geq \mu_{2} \geq \cdots \geq \mu_{K} \Delta_i = \mu_1 - \mu_i
  • #6 t=1,2,... i(t) X_{i(t)} i^{\hat{*}}(T) P_{e} = \mathbb{P} \bigl[ i^{\hat{*}}(T) \ne i^{*} \bigr]
  • #7 \delta \mathbb{P} \bigl[ i^{\hat{*}}(\tau) \ne i^{*} \bigr] \leq \delta \mathbb{E} \bigl[ \tau \bigr]
  • #8 e^{-O(T)}
  • #9 e^{-\frac{T(\mu_1-\mu_2)^{2}}{8\sigma}} T^{-1}
  • #10 \mu^{*}-\epsilon
  • #11 e^{\frac{T(\mu_1-\mu_2)^{2}}{8\sigma}} e^{-\frac{0.000001}{8}T} n_3 \geq \frac{0.0001}{64}T \frac{0.0001}{64} \approx 0.0000156 \approx 0.0016 \%
  • #12 H_\epsilon = \frac{1}{2(\mu_1-\mu_2+\epsilon)^2} + \sum_{i=2}^{K}\frac{1}{2(\mu_1-\mu_i+\epsilon)^2} H_\epsilon \log(1/\delta)
  • #13 \hat{\mu}_1 = \mu n_1 = \frac{1}{2(\mu_1 - \mu_2+\epsilon)^2}\log(1/\delta) \mu_1 + \epsilon
  • #15 \overline{\mu}_{i,n} = \hat{\mu}_{i,n}+\sqrt{\frac{\beta(n,\delta)}{2n}} \underline{\mu}_{i,n} = \hat{\mu}_{i,n}-\sqrt{\frac{\beta(n,\delta)}{2n}}
  • #19 H_\epsilon \leq C/b \beta^\prime(t,T) = bT = \log \frac{1}{e^{-bT}} O(e^{-bT})