Thompson Sampling MAB
6
model for 26
model for 75
ベータ分布
α:5
β:35
ベータ分布
α:3
β:12
0.2
0.4
sampling
sampling
arg
max slot_1
slot
_2
template_id: 75
clickされたらα=α+1
clickされなければβ=β+1
と更新する
Thompson Sampling Contextual Bandit
8
model for 26
model for 75
特徴量xから予測する(ex. logistic regression
y = f(x)
特徴量xから予測する
y = g(x)
0.2
0.4
sampling
sampling
arg
max slot_1
slot
_2
template_id: 75
yを観測したらgを更新
都度更新ではなく1日1回のケースも
男性には26だけど女性には75が良いといった傾向が汲み取れる
Slide 9
Slide 9 text
Thompson Sampling Contextual Bandit
9
model for 26
model for 75
特徴量xから予測する
y = f(x)
特徴量xから予測する
y = g(x)
0.2
0.4
sampling
sampling
arg
max slot_1
slot
_2
template_id: 75
yを観測したらgを更新
都度更新ではなく1日1回のケースも
Policy
男性には26だけど女性には75が良いといった傾向が汲み取れる
AD Template Selection
18
x
candidates
a,b,c,d
b Y
● ユーザーに対して見せる広告を決定する
● ユーザーの情報Xを得て、選択肢{a,b,c,d}に対してCTRの予測を行う。
● 予測値が最大の選択肢を選ぶ (上の例ではb)
● Clickを観測する(Y)
Predict + decision
(Contextual Bandit)
slot
_1
slot
_2
slot
_3
slot_1 slot
_2
Slide 19
Slide 19 text
model update
19
x
candidates
A = {a,b,c,d}
b Y_b
Predict + decision
dataset
X, A, Y
x
candidates
A = {a,b,c,d}
b Y_b
Predict + decision
モデルの学習と更新
1日この仕組みを回す
更新したモデルで回す
データの蓄積
new system
c Y_c
ex)線形回帰→DNN
counterfactual!
Slide 20
Slide 20 text
Research Question
How to compare two AI systems?
20
評価データの特徴
23
X Y
X1 1 a b
X2 1 c c
X3 0 b b
X4 1 a a
X5 1 b c
● 得られているデータは
○ X:特徴量
○ Y:報酬(click)
○ A:選択された腕
○ A以外の腕を選んだ時のYは未知
● 新規のPolicyを走らせる
○ Xを入力するとA’が得られる
○ A’ = AならYがわかる
○ それ以外ではYは欠損
Slide 24
Slide 24 text
ここでやりたいこと
24
X Y
X1 1 a b
X2 1 c c
X3 0 b b
X4 1 a a
X5 1 b c
● 全データでYを観測した時の評価をしたい
● 実際にYを観測できるのは A’=Aの時のみ
● 得られたデータから全体をどう推測するか?
○ Importance Sampling
○ Propensity Score
A’=Aなら1になる
因果推論とオフライン評価
X Y_A
X1 1 a c
X2 1 c c
X3 0 b c
X4 1 c c
X5 1 b c
● 常にcを選ぶPolicyを評価する
○ cが選ばれた部分から全体の期待値を考える
○ 別の選択肢の結果との差分は ATE
● 因果推論のIPW(Holvitz Thompson Estimator)は
オフライン評価のIPSの特殊な形?
28