SlideShare a Scribd company logo
Steve Collins
CTO / Swrve
A/B Testing for Game Design
Iteration: A Bayesian Approach
Biography
Push Notifications In-App MessagingA/B TestingTargeting & Analytics
Introduction to
A/B Testing
Game Service
Test
Dev
Update
Test
Dev
Update
Test
Dev
Update
Test
Dev
Update
Development
Beta
“Soft”
Launch
LAUNCH
Test
Dev
Launch
On-board
1st  experience  
Tutorial  Flow  
Incentives  /  Promo
Monetization
IAPs,  virtual  items  
Promotions  /  offers  /  Ads  
Economy  /  Game  Balance
Retention
Messaging  /  Push  Notify  
Core  loops,  events  
Community  /  Social
“Engagement”
Fun  factor!  
Content  refresh  /  evolution  
Level  balance,  progress
LTV (+$)
Acquisition
Ads  (CPC,  CPI)  
Cross  Promo  
Discovery,  PR
UAC (-$)
ROI = LTV - UAC
ROI UACLTV =
nX
x=1
ARPUx COSTx
(1 + WACC)x
CAC
ARPULTV =
nX
x=1
ARPUx COSTx
(1 + WACC)x
CACLTV =
nX
x=1
ARPUx COSTx
(1 + WACC)x
CAC
d
d
lifetime?
LTV
{
1" 2" 3" 4" 5" 6" 7" 8" 9" 10" 11" 12" 13" 14" 15" 16" 17" 18" 19" 20" 21" 22" 23" 24" 25" 26" 27" 28" 29" 30" 31" 32"
High Mean Low
Install-day-cohort 30-day revenue
Test%Hypotheses%
Data$driven$
Take%ac'on%
Iterate,'fail+fast'
Understand)
Metrics()>(Analy0cs()>(Insight(
1. Split population 2. Show variations 4. Choose winner 4. Deploy winner3. Measure response
State	
  Sync State	
  Sync
Game	
  State	
  DB
Data	
  
Warehouse
Analyse
Events	
  (tagged	
  with	
  A	
  or	
  B)
Game	
  
Server
Content	
  
Management	
  	
  
System
A	
  or	
  B	
  variant
A/B	
  Test	
  
Server
What to test?
vs
Message layouts / content
choke point
Tutorial Flow
vs
25 25
-20%-40%
Promotion Discounts
Elasticity testing: exchange rate
$4.99 $4.99
100 coins
A B
200 coins
vs
Price set A
Price set B
Price set C
Store Inventory
(f) Zoomed in version of the previous scatterplot. Note that jitter and transparency
Value of first purchase
Totalspend
$70$30$15
A/B Test
VIPs
Repeat
Purchases
$5$2
Timing
Wait Sessions
(3)
Wait Event
(movie_closed)
In-app Msg
"Request Facebook
Registration"
FB Reg
when where
0 10000 20000 30000 40000 50000
0.00.20.40.60.81.0
number of user trials
Probabilityofwinning
Canacandycrushbalt*
Day 1 retention = 30%
* Apologies to King and Adam Saltsman
Beta Test
Original New Version
Expecting 30% day-1 retention
After 50 users, we see 0%
Is this bad?
Null Hypothesis Testing
(NHT) View
The Null Hypothesis
) =
1
p
2⇡ 2
e
(x µ)2)
2 2
H0 : x ! µ
H0 : x ! µ
Accept
Reject
H0 : x = µ
30%
) =
1
p
2⇡ 2
e
(x µ)2)
2 2Reject
0%
30%
Conclusion: 30% is unlikely to be the
retention rate
Issue #1
p-value
p-Value
95%
2.5% 2.5%
=
1
p
2
e
(x µ)2)
2 2
(n − r)!r!
µ = np σ = np(1 − p)
z =
¯x − µ
σ
z =
¯x − µ
ˆσ√
n
SE(¯x) =
ˆσ
√
n
n =
(zα + zβ)2
σ2
δ2
µ + 1.96σ
µ − 1.96σ
z =
¯x − µ
σ
z =
¯x − µ
ˆσ√
n
SE(¯x) =
ˆσ
√
n
n =
(zα + zβ)2
σ2
δ2
µ + 1.96σ
µ − 1.96σ
p-Value
The probability of observing as extreme a result
assuming the null hypothesis is true
The probability of the data given the model
OR
Null  Hypothesis:  H0
H H
Accept H Type-II Error
Reject H Type-I Error
Truth
Observation
False Positive
All we can ever say is either
not enough evidence that retention rates are the same
the retention rates are different, 95% of the time
p < 0.05
p-Value
actually...
The evidence supports a rejection of the null hypothesis, i.e.
the probability of seeing a result as extreme as this, assuming
the retention rate is actually 30%, is less than 5%.
p < 0.05
Issue #2
“Peeking”
Required change
Standard deviation
Number of
participants
per group n ≈
16σ 2
δ2
Peeks 5% Equivalent
1 2.9%
2 2.2%
3 1.8%
5 1.4%
10 1%
To get 5% false positive rate you need...
i.e. 5 times
http://www.evanmiller.org/how-­‐not-­‐to-­‐run-­‐an-­‐ab-­‐test.html
Issue #3
Family-wise Error
Family-wise Error
p = P( Type-I Error) = 0.05
5% of the time we will get a false positive - for one treatment
P( no Type-I Error) = 0.95
P( at least 1 Type-I Error for 2 treatments) = (1 - 0.9025) = 0.0975
P( no Type-I Error for 2 treatments) = (0.95)(0.95) = 0.9025
Bayesian View
0.0 0.2 0.4 0.6 0.8 1.0
0246810
Retention
Density
Expected retention rate
~30%
“Belief”
uncertainty
0.0 0.2 0.4 0.6 0.8 1.0
0246810
Retention
Density
~15%
New “belief” after 0 retained users
Stronger belief after
observing evidence
The probability of the model given the data
p(heads) = p(tails) = 0.5
Tossing the Coin
0 10 20 30 40 50
0.00.20.40.60.81.0
Number of flips
ProportionofHeads
Heads
Tails
THTHTTTHHTHH…
1 5 10 50 500
0.00.20.40.60.81.0
Number of flips
ProportionofHeads Tossing the Coin
Long run average = 0.5
p(y|x) =
p(y, x)
p(x)
p(x|y) =
p(x, y)
p(y)
p(y, x) = p(x, y) = p(y|x)p(x) = p(x|y)p(y)
p(y|x) =
p(x|y)p(y)
p(x)
p(y|x) =
p(x|y)p(y)
P
Probability of x
p(y|x) =
p(y, x)
p(x)
p(x|y) =
p(x, y)
p(y)
p(y, x) = p(x, y) = p(y|x)p(x) = p(x|y)p(y)
p(y|x) =
p(x|y)p(y)
p(x)
Probability of x and y
(conjoint)
p(y|x) =
p(y, x)
p(x)
p(x|y) =
p(x, y)
p(y)
p(y, x) = p(x, y) = p(y|x)p(x) = p(x|y)p
p(x|y)p(y)
Probability of x given y
(conditional)
Terminology
The Bernoulli distribution
For a “fair” coin, θ = 0.5
Head (H) = 1, Tails (T) = 0
p(x|θ) = θx(1 − θ)(1−x)
A single toss:
p(x|θ) = θx(1 − θ)(1−x)
p(heads = 1|0.5) = 0.51(1−0.5)(1−1) = 0.5
0 (1−0)
p(x|θ) = θx(1 − θ)(1−x)
p(heads = 1|0.5) = 0.51(1−0.5)(1−1) = 0.5
p(tails = 0|0.5) = 0.50(1−0.5)(1−0) = 0.5
The Binomial
p(x|θ) = θx(1 − θ)(1−x)
Probability of heads in a single throw:
Probability of x heads in n throws:
p(heads = 1|0.5) = 0.51
(1 − 0.5)(1−1)
= 0.5
p(tails = 0|0.5) = 0.50
(1 − 0.5)(1−0)
= 0.5
p(h|n, θ) =
n
h
θh
(1 − θ)(n−h)
p(x|θ, n) =
n
x
θx
(1 − θ)(n−x)
20 tosses of a fair coin
=
1
p
2⇡ 2
e
(x µ)2)
2 2
1 − θ)(n−x)p(θ)dθ
pc − pv
1−pc)+pv(1−pv)
n
p(x|0.5, 20)
p(x|θ)p(θ)
x
(1 − θ)(1−x)
0.51
(1 − 0.5)(1−1)
= 0.5
20 tosses of an “un-fair” coin
1
p
2⇡ 2
e
(x µ)2)
2 2
θx(1 − θ)(n−x)p(θ)dθ
ztest =
pc − pv
pc(1−pc)+pv(1−pv)
n
p(x|0.2, 20) p(x|0.5, 20)
p(¯θ) = p(x|θ)p(θ)
p(x|θ) = θx
(1 − θ)(1−x)
s = 1|0.5) = 0.51
(1 − 0.5)(1−1)
= 0.5
Likelihood of θ given observation i of x heads in n throws:
“Binomial Likelihood”
h
p(x|θ, n) =
n
x
θx
(1 − θ)(n−x)
1
p(h|n, θ) =
n
h
θh
(1 − θ)(n−h)
p(x|θ, n) =
n
x
θx
(1 − θ)(n−x)
L(θ|xi, ni) =
ni
xi
θxi
(1 − θ)(ni−xi)
The Likelihood
Increasing likelihood of θ with more observations…
0.0 0.2 0.4 0.6 0.8 1.0
0.00.20.4
1 heads in 2 throws.
θ
Likelihood
0.0 0.2 0.4 0.6 0.8 1.0
0.000.100.20
5 heads in 10 throws.
θ
Likelihood
0.0 0.2 0.4 0.6 0.8 1.0
0.0000.0100.020
500 heads in 1000 throws.
θ
Likelihood
p(¯θ) = p(x|θ)p(θ)
p(x|θ) = θx
(1 − θ)(1−x)
p(heads = 1|0.5) = 0.51
(1 − 0.5)(1−1)
= 0.5
p(tails = 0|0.5) = 0.50
(1 − 0.5)(1−0)
= 0.5
The observations (#heads)
p(x|0.2, 20) p(x|0.5, 20)
p(¯θ) = p(x|θ)p(θ)
p(x|θ) = θx
(1 − θ)(1−x)
p(heads = 1|0.5) = 0.51
(1 − 0.5)(1−1)
= 0.5
p(tails = 0|0.5) = 0.50
(1 − 0.5)(1−0)
= 0.5
The model parameter (e.g. fair coin)
p(x|θ, n) = θx
(1 − θ)(n−x)
B(a, b) =
Γ(a)Γ(b)
Γ(a + b)
=
(a − 1)!(b − 1)!
(a + b − 1)!
beta(θ|a, b) = θ(a−1)
(1 − θ)(b−1)
/ B(a, b)
p(θ|x) = θx
(1 − θ)(n−x)
p(θ) / p(x)We want to know this
ztest =
c v
pc(1−pc)+pv(1−pv)
n
p(x|0.2, 20) p(x|0.5, 20)
p(¯θ) = p(x|θ)p(θ)
p(x|θ) = θx
(1 − θ)(1−x)
p(heads = 1|0.5) = 0.51
(1 − 0.5)(1−1)
= 0.5
Probability of data given model
A recap…
Note that
p(x, y) = p(x|y)p(y) = p(y|x)p(x)
p(x|θ) ̸= p(θ|x)
p(cloudy|raining) ̸= p(raining|cloudy)
p(θ|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
(1 − θ)(b−1)
/ B(a, b) p(
p(θ|x, n) = θx+a−1
(1 − θ)(n−x+b−1)
/ B(x + a, n − x + b
p(y|x) = p(y, x)p(x)
p(x|y) = p(x, y)p(y)
p(x, y) =
p(x|y)
p(y)
=
p(y|x)
p(x)
p(x|y)p(y) = p(y|x)p(x)
p(y|x) =
p(x|y)p(y)
p(x)
p(x, y) = p(x|y)p(y) = p(y|x)p(x)
p(x|y) ̸= p(y|x)
p(cloudy|raining) ̸= p(raining|cloudy)
(θ|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
(1 − θ)(b−1)
/ B(a, b) p(x
x+a−1 (n−x+b−1)
Bayes’ Rule
p(x, y) = p(x|y)p(y) = p(y|x)p(x
p(x) =
y
p(x|y)p(y)
p(x|θ) ̸= p(θ|x)
p(y|x) =
p(x|y)p(y)
P
y p(x|y)p(y)
discrete form
p(x|y) =
p(y)
p(y, x) = p(x, y) = p(y|x)p(x
p(y|x) =
p(x|y)p(y)
p(x)
p(y|x) =
p(x|y)p(y)
R
p(x|y)p(y)dy
continuous form
p(x, n|θ) = θx(1 − θ)(n−x)
ztest =
pc − pv
pc(1−pc)+pv(1−pv)
n
p(h, 20|0.2)
p(x)
p(✓|x)
| {z }
= p(x|✓)
| {z }
p(✓)
|{z}
/ p(x)
|{z}
p(x) =
Z
p(x|✓)p(✓)d✓
prob of model
prob #heads given model
p(✓|x)
| {z }
= p(x|✓)
| {z }
p(✓)
|{z}
/ p(x)
|{z}
p(x) =
Z
p(x|✓)p(✓)d✓
p(✓|x)
| {z }
= p(x|✓)
| {z }
p(✓)
|{z}
/ p(x)
|{z}
p(x) =
Z
p(x|✓)p(✓)d✓
prob model given #heads
p(x)
p(x|y) =
p(x, y)
p(y)
p(y, x) = p(x, y) = p(y|x)p(x) = p(x|y)p(y)
p(y|x) =
p(x|y)p(y)
p(x)
p(y|x) =
p(x|y)p(y)
R
p(x|y)p(y)dy
p(✓|x)
| {z }
= p(x|✓)
| {z }
p(✓)
|{z}
/ p(x)
|{z}
p(x) =
Z
p(x|✓)p(✓)d✓
posterior likelihood prior normalizing
factor
p(✓|x)
| {z }
= p(x|✓)
| {z }
p(✓)
|{z}
/ p(x)
|{z}
p(x) =
Z
p(x|✓)p(✓)d✓normalizing factor
p(✓|x)
| {z }
= p(x|✓)
| {z }
p(✓)
|{z}
/ p(x)
|{z}
p(x) =
Z
p(x|✓)p(✓)d✓
The prior
Captures our “belief” in the model
based on prior experience, observations or knowledge
Best estimate so far
Iterations with more data…
p(θ|x) = p(x|θ) p(θ) / p(x)
p(θ|x) =
θx
(1 − θ)(n−x)
p(θ)
θx(1 − θ)(n−x)p(θ)dθ
ztest =
pc − pv
pc(1−pc)+pv(1−pv)
n
p(h, 20|0.2)
p(x, n|θ) = θ (1 − θ)
p(θ|x) = θx
(1 − θ)(n−x)
p(θ) / p(x)
ˆp0(θ|x0) = p(x0|θ) p(θ) / p(x0)
ˆp1(θ|x1) = p(x1|θ) ˆp0(θ) / ˆp0(x1)
ˆpn(θ|xn) = p(xn|θ) ˆpn−1(θ) / ˆpn−1(xn)
x (n−x)
p(θ|x) = θx
(1 − θ)(n−x)
p(θ) / p(x)
ˆp0(θ|x0) = p(x0|θ) p(θ) / p(x0)
ˆp1(θ|x1) = p(x1|θ) ˆp0(θ) / ˆp0(x1)
ˆpn(θ|xn) = p(xn|θ) ˆpn−1(θ) / ˆpn−1(xn)
p(θ|x) =
θx
(1 − θ)(n−x)
p(θ)
p(θ|x) = θx
(1 − θ)(n−x)
p(θ) / p(x)
ˆp0(θ|x0) = p(x0|θ) p(θ) / p(x0)
ˆp1(θ|x1) = p(x1|θ) ˆp0(θ) / ˆp0(x1)
ˆpn(θ|xn) = p(xn|θ) ˆpn−1(θ) / ˆpn−1(xn)
p(θ|x) =
θx
(1 − θ)(n−x)
p(θ)
x (n−x)
Selecting a prior
We’d like the product of prior and likelihood
to be “like” the likelihood
We’d like the integral to be easily evaluated
p(x, n|θ) = θx
(1 − θ)(n−x)
p(θ|x) = θx
(1 − θ)(n−x)
p(θ) / p(x)
p(θ|x) =
θx
(1 − θ)(n−x)
p(θ)
θx(1 − θ)(n−x)p(θ)dθ
ztest =
pc − pv
pc(1−pc)+pv(1−pv)
n
p(h|n, θ) =
n
h
θh
(1 − θ)(n−h)
p(x|θ, n) =
n
x
θx
(1 − θ)(n−x)
1
“Conjugate prior”
ztest =
pc(1−pc)+pv(1−pv)
n
p(h, 20|0.2)
p(¯θ) = p(x|θ)p(θ)
p(x|θ) = θx
(1 − θ)(1−x)
Beta distributionp(x, n|θ) = θx
(1 − θ)(n−x)
beta(θ|a, b) = θ(a−1)
(1 − θ)(b−1)
/ B(a, b)
p(θ|x) = θx
(1 − θ)(n−x)
p(θ) / p(x)
ˆp0(θ|x0) = p(x0|θ) p(θ) / p(x0)
ˆp1(θ|x1) = p(x1|θ) ˆp0(θ) / ˆp0(x1)
number of heads + 1 number of tails + 1
p(θ|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
(1 − θ)(b−1)
/ B(a, b)
p(θ|x, n) = θx+a−1
(1 − θ)(n−x+b−1)
/ B(x + a, n − x
p(x, n|θ) = θx
(1 − θ)(n−x)
B(a, b) =
Γ(a)Γ(b)
Γ(a + b)
=
(a − 1)!(b − 1)!
(a + b − 1)!
Beta distribution
beta priorbinomial likelihood
Putting it together…
p(θ|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
(1 − θ)(b−1)
/ B(a, b) p(x, n)
p(θ|x, n) = θx+a−1
(1 − θ)(n−x+b−1)
/ B(x + a, n − x + b)
p(x, n|θ) = θx
(1 − θ)(n−x)
number of heads x number of tails (n-x)
p(x|y) ̸= p(y|x)
p(cloudy|raining) ̸= p(raining|cloudy)
p(θ|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
(1 − θ)(b−1)
/ B(a, b) p(x)
p(θ|x, n) = θx+a−1
(1 − θ)(n−x+b−1)
/ B(x + a, n − x + b)
p(θa > θb) =
θa>θb
p(θa|xa)p(θb|xb) dθadθb
1. Decide on a prior, which captures your belief
2. Run experiment and observe data for heads, tails
3. Determine your posterior based on the data
4. Use posterior as your new belief and re-run
experiment
5. Rinse, repeat until you hit an actionable certainty
Putting it together…
Uniform prior
“Fair” coin
Pretty sure coin is fair
“Coin is fair” prior
“Fair” coin
Very sure coin is fair
Uniform prior
“Biased” coin
Pretty sure coin is unfair
“Coin is fair” prior
“biased” coin
Not sure of anything yet!
When to reject?
The Credible Interval
Uniform prior
“Fair” coin
95% credible interval
The Credible Interval
Uniform prior
“Biased” coin
Outside credible interval
Captures our prior belief, expertise, opinion
Strong prior belief means:
‣ we need lots of evidence to contradict
‣ results converge more quickly (if prior is “relevant”)
Provides inertia
With enough samples, prior’s impact diminishes,
rapidly
The Prior
Running a test…
A B
With 1 or more variants we have a multi-dimensional
problem
Need to evaluate volumes under the posterior
In general requires numerical quadrature = Markov
Chain Monte-Carlo (MCMC)
Multiple variant tests
p(θ|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
p(θ|x, n) = θx+a−1
(1 − θ)(n−x+
p(θa > θb) =
θa>θb
p(θ
p(θ|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
(1 − θ)
p(θ|x, n) = θx+a−1
(1 − θ)(n−x+b−1)
/
p(θa > θb) =
θ >θ
p(θa|xa)p(
Probability of Winning
|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
(1 − θ)(b−1)
/ B(a, b) B(x
p(θ|x, n) = θx+a−1
(1 − θ)(n−x+b−1)
/ B(x + a, n − x + b
p(θa > θb) =
θa>θb
p(θa|xa)p(θb|xb) dθadθb
p(x|θ, n) = θx
(1 − θ)(n−x)
B(a, b) =
Γ(a)Γ(b)
Γ(a + b)
=
(a − 1)!(b − 1)!
(a + b − 1)!
p(θ|x, n) = θx
(1 − θ)(n−x)
θ(a−1)
(1 − θ)
p(θ|x, n) = θx+a−1
(1 − θ)(n−x+b−1)
/
p(θa > θb) =
θa>θb
p(θa|xa)p(θ
What’s the prior?
Fit a beta
a=42, b=94
Some examples...
A successful test
Probability of beating all
Observed conversion rates (with CI bounds)
A not so successful test...
Probability of beating all
Observed conversion rate (posterior)
Assumptions
Users are independent
User’s convert quickly (immediately)
Probability of conversion is independent of time
Un-converged conversion rate
Benefits / Features
Continuously observable
No need to fix population size in advance
Incorporate prior knowledge / expertise
Result is a “true” probability
A measure of the difference magnitude is given
Consistent framework for lots of different scenarios
Useful Links
• h#ps://github.com/CamDavidsonPilon/Probabilistic-­‐‑Programming-­‐‑
and-­‐‑Bayesian-­‐‑Methods-­‐‑for-­‐‑Hackers  
• “Doing  Bayesian  Data  Analysis:  A  Tutorial  with  R  and  Bugs”,  John  K.  
Kruschke  
• h#p://www.evanmiller.org/how-­‐‑not-­‐‑to-­‐‑run-­‐‑an-­‐‑ab-­‐‑test.html    
• h#p://www.kaushik.net  -­‐‑  Occam’s  Razor  Blog  
• h#p://exp-­‐‑platform.com  -­‐‑  Ron  Kovahi  et  al.  
Thanks
Multi-arm bandits
5% 6% 10% 4%
Pull 1
Pull 2
Pull 3
Multi-arm bandits
Draw sample from
each "arm" prior
distribution
Evaluate Success
Update posterior for
chosen "arm"
Pick largest & deploy
Thompson Sampling
Thompson, William R. "On the likelihood that one unknown probability exceeds another in view of the evidence of two samples". Biometrika, 25(3–4):285–294
https://github.com/CamDavidsonPilon/Probabilistic-­‐Programming-­‐and-­‐Bayesian-­‐Methods-­‐for-­‐Hackers
Difficulty tuning
a slight silly example…
Canacandycrushbalt
Winner

More Related Content

What's hot

모바일 게임기획 따라하며 배우기
모바일 게임기획 따라하며 배우기모바일 게임기획 따라하며 배우기
모바일 게임기획 따라하며 배우기
Sunnyrider
 
Ad Monetization Design Patterns in F2P Games
Ad Monetization Design Patterns in F2P GamesAd Monetization Design Patterns in F2P Games
Ad Monetization Design Patterns in F2P Games
Eric Seufert
 
'Growth Hacking (그로스 해킹)’ 적용 사례
'Growth Hacking (그로스 해킹)’ 적용 사례'Growth Hacking (그로스 해킹)’ 적용 사례
'Growth Hacking (그로스 해킹)’ 적용 사례
RocketPunch Inc.
 
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
Hyeyon Kwon
 
프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법
Lee Sangkyoon (Kay)
 
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
정혁 권
 
추천시스템 이제는 돈이 되어야 한다.
추천시스템 이제는 돈이 되어야 한다.추천시스템 이제는 돈이 되어야 한다.
추천시스템 이제는 돈이 되어야 한다.
choi kyumin
 
쩌는게임기획서 이렇게 쓴다
쩌는게임기획서 이렇게 쓴다쩌는게임기획서 이렇게 쓴다
쩌는게임기획서 이렇게 쓴다
Jinho Jung
 
NDC 2016 이은석 - 돌죽을 끓입시다: 창의적 게임개발팀을 위한 왓 스튜디오의 업무 문화
NDC 2016 이은석 - 돌죽을 끓입시다: 창의적 게임개발팀을 위한 왓 스튜디오의 업무 문화NDC 2016 이은석 - 돌죽을 끓입시다: 창의적 게임개발팀을 위한 왓 스튜디오의 업무 문화
NDC 2016 이은석 - 돌죽을 끓입시다: 창의적 게임개발팀을 위한 왓 스튜디오의 업무 문화
Eunseok Yi
 
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA) 오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
Yongho Ha
 
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
Seongyun Byeon
 
네이버서치ABT: 신뢰할 수 있는 A/B 테스트 플랫폼 개발 및 정착기
네이버서치ABT: 신뢰할 수 있는 A/B 테스트 플랫폼 개발 및 정착기네이버서치ABT: 신뢰할 수 있는 A/B 테스트 플랫폼 개발 및 정착기
네이버서치ABT: 신뢰할 수 있는 A/B 테스트 플랫폼 개발 및 정착기
Jin Young Kim
 
[IGC 2017] 라이엇게임즈 유석문 - 게임 개발의 Agile Best Practices
[IGC 2017] 라이엇게임즈 유석문 - 게임 개발의 Agile Best Practices[IGC 2017] 라이엇게임즈 유석문 - 게임 개발의 Agile Best Practices
[IGC 2017] 라이엇게임즈 유석문 - 게임 개발의 Agile Best Practices
강 민우
 
신뢰할 수 있는 A/B 테스트를 위해 알아야 할 것들
신뢰할 수 있는 A/B 테스트를 위해 알아야 할 것들신뢰할 수 있는 A/B 테스트를 위해 알아야 할 것들
신뢰할 수 있는 A/B 테스트를 위해 알아야 할 것들
Minho Lee
 
최소 300억은 버는 글로벌 게임 기획 : 몬스터슈퍼리그 사례를 중심으로
최소 300억은 버는 글로벌 게임 기획 : 몬스터슈퍼리그 사례를 중심으로최소 300억은 버는 글로벌 게임 기획 : 몬스터슈퍼리그 사례를 중심으로
최소 300억은 버는 글로벌 게임 기획 : 몬스터슈퍼리그 사례를 중심으로
SeongkukYun
 
[우리가 데이터를 쓰는 법] 모바일 게임 로그 데이터 분석 이야기 - 엔터메이트 공신배 팀장
[우리가 데이터를 쓰는 법] 모바일 게임 로그 데이터 분석 이야기 - 엔터메이트 공신배 팀장[우리가 데이터를 쓰는 법] 모바일 게임 로그 데이터 분석 이야기 - 엔터메이트 공신배 팀장
[우리가 데이터를 쓰는 법] 모바일 게임 로그 데이터 분석 이야기 - 엔터메이트 공신배 팀장
Dylan Ko
 
Growth Hacking, Disrupt the Business with Mobile!
Growth Hacking, Disrupt the Business with Mobile! Growth Hacking, Disrupt the Business with Mobile!
Growth Hacking, Disrupt the Business with Mobile!
TheFamily
 
Product Analytics Playbook
Product Analytics PlaybookProduct Analytics Playbook
Product Analytics Playbook
ssuserd5e338
 
Introducing PlayFab -- Effective LiveOps
Introducing PlayFab -- Effective LiveOpsIntroducing PlayFab -- Effective LiveOps
Introducing PlayFab -- Effective LiveOps
James Gwertzman
 
MMOG Server-Side 충돌 및 이동처리 설계와 구현
MMOG Server-Side 충돌 및 이동처리 설계와 구현MMOG Server-Side 충돌 및 이동처리 설계와 구현
MMOG Server-Side 충돌 및 이동처리 설계와 구현
YEONG-CHEON YOU
 

What's hot (20)

모바일 게임기획 따라하며 배우기
모바일 게임기획 따라하며 배우기모바일 게임기획 따라하며 배우기
모바일 게임기획 따라하며 배우기
 
Ad Monetization Design Patterns in F2P Games
Ad Monetization Design Patterns in F2P GamesAd Monetization Design Patterns in F2P Games
Ad Monetization Design Patterns in F2P Games
 
'Growth Hacking (그로스 해킹)’ 적용 사례
'Growth Hacking (그로스 해킹)’ 적용 사례'Growth Hacking (그로스 해킹)’ 적용 사례
'Growth Hacking (그로스 해킹)’ 적용 사례
 
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
 
프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법
 
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
린분석 with 레진코믹스 ( Lean Analytics with Lezhin Comics )
 
추천시스템 이제는 돈이 되어야 한다.
추천시스템 이제는 돈이 되어야 한다.추천시스템 이제는 돈이 되어야 한다.
추천시스템 이제는 돈이 되어야 한다.
 
쩌는게임기획서 이렇게 쓴다
쩌는게임기획서 이렇게 쓴다쩌는게임기획서 이렇게 쓴다
쩌는게임기획서 이렇게 쓴다
 
NDC 2016 이은석 - 돌죽을 끓입시다: 창의적 게임개발팀을 위한 왓 스튜디오의 업무 문화
NDC 2016 이은석 - 돌죽을 끓입시다: 창의적 게임개발팀을 위한 왓 스튜디오의 업무 문화NDC 2016 이은석 - 돌죽을 끓입시다: 창의적 게임개발팀을 위한 왓 스튜디오의 업무 문화
NDC 2016 이은석 - 돌죽을 끓입시다: 창의적 게임개발팀을 위한 왓 스튜디오의 업무 문화
 
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA) 오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
 
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
 
네이버서치ABT: 신뢰할 수 있는 A/B 테스트 플랫폼 개발 및 정착기
네이버서치ABT: 신뢰할 수 있는 A/B 테스트 플랫폼 개발 및 정착기네이버서치ABT: 신뢰할 수 있는 A/B 테스트 플랫폼 개발 및 정착기
네이버서치ABT: 신뢰할 수 있는 A/B 테스트 플랫폼 개발 및 정착기
 
[IGC 2017] 라이엇게임즈 유석문 - 게임 개발의 Agile Best Practices
[IGC 2017] 라이엇게임즈 유석문 - 게임 개발의 Agile Best Practices[IGC 2017] 라이엇게임즈 유석문 - 게임 개발의 Agile Best Practices
[IGC 2017] 라이엇게임즈 유석문 - 게임 개발의 Agile Best Practices
 
신뢰할 수 있는 A/B 테스트를 위해 알아야 할 것들
신뢰할 수 있는 A/B 테스트를 위해 알아야 할 것들신뢰할 수 있는 A/B 테스트를 위해 알아야 할 것들
신뢰할 수 있는 A/B 테스트를 위해 알아야 할 것들
 
최소 300억은 버는 글로벌 게임 기획 : 몬스터슈퍼리그 사례를 중심으로
최소 300억은 버는 글로벌 게임 기획 : 몬스터슈퍼리그 사례를 중심으로최소 300억은 버는 글로벌 게임 기획 : 몬스터슈퍼리그 사례를 중심으로
최소 300억은 버는 글로벌 게임 기획 : 몬스터슈퍼리그 사례를 중심으로
 
[우리가 데이터를 쓰는 법] 모바일 게임 로그 데이터 분석 이야기 - 엔터메이트 공신배 팀장
[우리가 데이터를 쓰는 법] 모바일 게임 로그 데이터 분석 이야기 - 엔터메이트 공신배 팀장[우리가 데이터를 쓰는 법] 모바일 게임 로그 데이터 분석 이야기 - 엔터메이트 공신배 팀장
[우리가 데이터를 쓰는 법] 모바일 게임 로그 데이터 분석 이야기 - 엔터메이트 공신배 팀장
 
Growth Hacking, Disrupt the Business with Mobile!
Growth Hacking, Disrupt the Business with Mobile! Growth Hacking, Disrupt the Business with Mobile!
Growth Hacking, Disrupt the Business with Mobile!
 
Product Analytics Playbook
Product Analytics PlaybookProduct Analytics Playbook
Product Analytics Playbook
 
Introducing PlayFab -- Effective LiveOps
Introducing PlayFab -- Effective LiveOpsIntroducing PlayFab -- Effective LiveOps
Introducing PlayFab -- Effective LiveOps
 
MMOG Server-Side 충돌 및 이동처리 설계와 구현
MMOG Server-Side 충돌 및 이동처리 설계와 구현MMOG Server-Side 충돌 및 이동처리 설계와 구현
MMOG Server-Side 충돌 및 이동처리 설계와 구현
 

Viewers also liked

Mobile Analytics (Mobile BI) - A Game Changer
Mobile Analytics (Mobile BI) - A Game Changer Mobile Analytics (Mobile BI) - A Game Changer
Mobile Analytics (Mobile BI) - A Game Changer
Jitender Aswani
 
Ubisoft
UbisoftUbisoft
Ubisoft
GIAF
 
How to define reasonable KPIs for mobile games
How to define reasonable KPIs for mobile gamesHow to define reasonable KPIs for mobile games
How to define reasonable KPIs for mobile games
talkingdata
 
Milion Dollar Impact Through Metrics, Analytics & A/B Testing
Milion Dollar Impact Through Metrics, Analytics & A/B TestingMilion Dollar Impact Through Metrics, Analytics & A/B Testing
Milion Dollar Impact Through Metrics, Analytics & A/B Testing
Azhar Bandeali
 
Quick Introduction to F2P Mobile Game Analytics
Quick Introduction to F2P Mobile Game AnalyticsQuick Introduction to F2P Mobile Game Analytics
Quick Introduction to F2P Mobile Game Analytics
Kyle Campbell
 
The Game Life Cycle & Game Analytics: What metrics matter when?
The Game Life Cycle & Game Analytics: What metrics matter when? The Game Life Cycle & Game Analytics: What metrics matter when?
The Game Life Cycle & Game Analytics: What metrics matter when?
HoneyTracks analytics for apps and games
 
eMetrics London - The AB Testing Hype Cycle
eMetrics London - The AB Testing Hype CycleeMetrics London - The AB Testing Hype Cycle
eMetrics London - The AB Testing Hype Cycle
Craig Sullivan
 

Viewers also liked (7)

Mobile Analytics (Mobile BI) - A Game Changer
Mobile Analytics (Mobile BI) - A Game Changer Mobile Analytics (Mobile BI) - A Game Changer
Mobile Analytics (Mobile BI) - A Game Changer
 
Ubisoft
UbisoftUbisoft
Ubisoft
 
How to define reasonable KPIs for mobile games
How to define reasonable KPIs for mobile gamesHow to define reasonable KPIs for mobile games
How to define reasonable KPIs for mobile games
 
Milion Dollar Impact Through Metrics, Analytics & A/B Testing
Milion Dollar Impact Through Metrics, Analytics & A/B TestingMilion Dollar Impact Through Metrics, Analytics & A/B Testing
Milion Dollar Impact Through Metrics, Analytics & A/B Testing
 
Quick Introduction to F2P Mobile Game Analytics
Quick Introduction to F2P Mobile Game AnalyticsQuick Introduction to F2P Mobile Game Analytics
Quick Introduction to F2P Mobile Game Analytics
 
The Game Life Cycle & Game Analytics: What metrics matter when?
The Game Life Cycle & Game Analytics: What metrics matter when? The Game Life Cycle & Game Analytics: What metrics matter when?
The Game Life Cycle & Game Analytics: What metrics matter when?
 
eMetrics London - The AB Testing Hype Cycle
eMetrics London - The AB Testing Hype CycleeMetrics London - The AB Testing Hype Cycle
eMetrics London - The AB Testing Hype Cycle
 

Similar to A/B Testing for Game Design

Introduction to Neural Networks and Deep Learning from Scratch
Introduction to Neural Networks and Deep Learning from ScratchIntroduction to Neural Networks and Deep Learning from Scratch
Introduction to Neural Networks and Deep Learning from Scratch
Ahmed BESBES
 
cps170_bayes_nets.ppt
cps170_bayes_nets.pptcps170_bayes_nets.ppt
cps170_bayes_nets.ppt
FaizAbaas
 
Estadistica U4
Estadistica U4Estadistica U4
Estadistica U4
FacundoOrtiz18
 
Theory to consider an inaccurate testing and how to determine the prior proba...
Theory to consider an inaccurate testing and how to determine the prior proba...Theory to consider an inaccurate testing and how to determine the prior proba...
Theory to consider an inaccurate testing and how to determine the prior proba...
Toshiyuki Shimono
 
第13回数学カフェ「素数!!」二次会 LT資料「乱数!!」
第13回数学カフェ「素数!!」二次会 LT資料「乱数!!」第13回数学カフェ「素数!!」二次会 LT資料「乱数!!」
第13回数学カフェ「素数!!」二次会 LT資料「乱数!!」
Ken'ichi Matsui
 
Taylor and maclaurian series
Taylor and maclaurian seriesTaylor and maclaurian series
Taylor and maclaurian series
Nishant Patel
 
Chapter 04 answers
Chapter 04 answersChapter 04 answers
Chapter 04 answers
Rajwinder Marock
 
Low Complexity Regularization of Inverse Problems
Low Complexity Regularization of Inverse ProblemsLow Complexity Regularization of Inverse Problems
Low Complexity Regularization of Inverse Problems
Gabriel Peyré
 
Thesis defense
Thesis defenseThesis defense
Thesis defense
Zheng Mengdi
 
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
Ken'ichi Matsui
 
DissertationSlides169
DissertationSlides169DissertationSlides169
DissertationSlides169Ryan White
 
Otter 2016-11-28-01-ss
Otter 2016-11-28-01-ssOtter 2016-11-28-01-ss
Otter 2016-11-28-01-ss
Ruo Ando
 
The Moore-Spiegel Oscillator
The Moore-Spiegel OscillatorThe Moore-Spiegel Oscillator
The Moore-Spiegel Oscillator
Abhranil Das
 
Runtime Analysis of Population-based Evolutionary Algorithms
Runtime Analysis of Population-based Evolutionary AlgorithmsRuntime Analysis of Population-based Evolutionary Algorithms
Runtime Analysis of Population-based Evolutionary Algorithms
Per Kristian Lehre
 
Runtime Analysis of Population-based Evolutionary Algorithms
Runtime Analysis of Population-based Evolutionary AlgorithmsRuntime Analysis of Population-based Evolutionary Algorithms
Runtime Analysis of Population-based Evolutionary Algorithms
PK Lehre
 
Classification
ClassificationClassification
Classification
Arthur Charpentier
 
Hands-On Algorithms for Predictive Modeling
Hands-On Algorithms for Predictive ModelingHands-On Algorithms for Predictive Modeling
Hands-On Algorithms for Predictive Modeling
Arthur Charpentier
 
Probability based learning (in book: Machine learning for predictve data anal...
Probability based learning (in book: Machine learning for predictve data anal...Probability based learning (in book: Machine learning for predictve data anal...
Probability based learning (in book: Machine learning for predictve data anal...
Duyen Do
 
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Alexander Litvinenko
 
Introduction
IntroductionIntroduction
Introductionbutest
 

Similar to A/B Testing for Game Design (20)

Introduction to Neural Networks and Deep Learning from Scratch
Introduction to Neural Networks and Deep Learning from ScratchIntroduction to Neural Networks and Deep Learning from Scratch
Introduction to Neural Networks and Deep Learning from Scratch
 
cps170_bayes_nets.ppt
cps170_bayes_nets.pptcps170_bayes_nets.ppt
cps170_bayes_nets.ppt
 
Estadistica U4
Estadistica U4Estadistica U4
Estadistica U4
 
Theory to consider an inaccurate testing and how to determine the prior proba...
Theory to consider an inaccurate testing and how to determine the prior proba...Theory to consider an inaccurate testing and how to determine the prior proba...
Theory to consider an inaccurate testing and how to determine the prior proba...
 
第13回数学カフェ「素数!!」二次会 LT資料「乱数!!」
第13回数学カフェ「素数!!」二次会 LT資料「乱数!!」第13回数学カフェ「素数!!」二次会 LT資料「乱数!!」
第13回数学カフェ「素数!!」二次会 LT資料「乱数!!」
 
Taylor and maclaurian series
Taylor and maclaurian seriesTaylor and maclaurian series
Taylor and maclaurian series
 
Chapter 04 answers
Chapter 04 answersChapter 04 answers
Chapter 04 answers
 
Low Complexity Regularization of Inverse Problems
Low Complexity Regularization of Inverse ProblemsLow Complexity Regularization of Inverse Problems
Low Complexity Regularization of Inverse Problems
 
Thesis defense
Thesis defenseThesis defense
Thesis defense
 
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
 
DissertationSlides169
DissertationSlides169DissertationSlides169
DissertationSlides169
 
Otter 2016-11-28-01-ss
Otter 2016-11-28-01-ssOtter 2016-11-28-01-ss
Otter 2016-11-28-01-ss
 
The Moore-Spiegel Oscillator
The Moore-Spiegel OscillatorThe Moore-Spiegel Oscillator
The Moore-Spiegel Oscillator
 
Runtime Analysis of Population-based Evolutionary Algorithms
Runtime Analysis of Population-based Evolutionary AlgorithmsRuntime Analysis of Population-based Evolutionary Algorithms
Runtime Analysis of Population-based Evolutionary Algorithms
 
Runtime Analysis of Population-based Evolutionary Algorithms
Runtime Analysis of Population-based Evolutionary AlgorithmsRuntime Analysis of Population-based Evolutionary Algorithms
Runtime Analysis of Population-based Evolutionary Algorithms
 
Classification
ClassificationClassification
Classification
 
Hands-On Algorithms for Predictive Modeling
Hands-On Algorithms for Predictive ModelingHands-On Algorithms for Predictive Modeling
Hands-On Algorithms for Predictive Modeling
 
Probability based learning (in book: Machine learning for predictve data anal...
Probability based learning (in book: Machine learning for predictve data anal...Probability based learning (in book: Machine learning for predictve data anal...
Probability based learning (in book: Machine learning for predictve data anal...
 
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
 
Introduction
IntroductionIntroduction
Introduction
 

More from Trieu Nguyen

Building Your Customer Data Platform with LEO CDP in Travel Industry.pdf
Building Your Customer Data Platform with LEO CDP in Travel Industry.pdfBuilding Your Customer Data Platform with LEO CDP in Travel Industry.pdf
Building Your Customer Data Platform with LEO CDP in Travel Industry.pdf
Trieu Nguyen
 
Building Your Customer Data Platform with LEO CDP - Spa and Hotel Business
Building Your Customer Data Platform with LEO CDP - Spa and Hotel BusinessBuilding Your Customer Data Platform with LEO CDP - Spa and Hotel Business
Building Your Customer Data Platform with LEO CDP - Spa and Hotel Business
Trieu Nguyen
 
Building Your Customer Data Platform with LEO CDP
Building Your Customer Data Platform with LEO CDP Building Your Customer Data Platform with LEO CDP
Building Your Customer Data Platform with LEO CDP
Trieu Nguyen
 
How to track and improve Customer Experience with LEO CDP
How to track and improve Customer Experience with LEO CDPHow to track and improve Customer Experience with LEO CDP
How to track and improve Customer Experience with LEO CDP
Trieu Nguyen
 
[Notes] Customer 360 Analytics with LEO CDP
[Notes] Customer 360 Analytics with LEO CDP[Notes] Customer 360 Analytics with LEO CDP
[Notes] Customer 360 Analytics with LEO CDP
Trieu Nguyen
 
Leo CDP - Pitch Deck
Leo CDP - Pitch DeckLeo CDP - Pitch Deck
Leo CDP - Pitch Deck
Trieu Nguyen
 
LEO CDP - What's new in 2022
LEO CDP  - What's new in 2022LEO CDP  - What's new in 2022
LEO CDP - What's new in 2022
Trieu Nguyen
 
Lộ trình triển khai LEO CDP cho ngành bất động sản
Lộ trình triển khai LEO CDP cho ngành bất động sảnLộ trình triển khai LEO CDP cho ngành bất động sản
Lộ trình triển khai LEO CDP cho ngành bất động sản
Trieu Nguyen
 
Why is LEO CDP important for digital business ?
Why is LEO CDP important for digital business ?Why is LEO CDP important for digital business ?
Why is LEO CDP important for digital business ?
Trieu Nguyen
 
From Dataism to Customer Data Platform
From Dataism to Customer Data PlatformFrom Dataism to Customer Data Platform
From Dataism to Customer Data Platform
Trieu Nguyen
 
Data collection, processing & organization with USPA framework
Data collection, processing & organization with USPA frameworkData collection, processing & organization with USPA framework
Data collection, processing & organization with USPA framework
Trieu Nguyen
 
Part 1: Introduction to digital marketing technology
Part 1: Introduction to digital marketing technologyPart 1: Introduction to digital marketing technology
Part 1: Introduction to digital marketing technology
Trieu Nguyen
 
Why is Customer Data Platform (CDP) ?
Why is Customer Data Platform (CDP) ?Why is Customer Data Platform (CDP) ?
Why is Customer Data Platform (CDP) ?
Trieu Nguyen
 
How to build a Personalized News Recommendation Platform
How to build a Personalized News Recommendation PlatformHow to build a Personalized News Recommendation Platform
How to build a Personalized News Recommendation Platform
Trieu Nguyen
 
How to grow your business in the age of digital marketing 4.0
How to grow your business  in the age of digital marketing 4.0How to grow your business  in the age of digital marketing 4.0
How to grow your business in the age of digital marketing 4.0
Trieu Nguyen
 
Video Ecosystem and some ideas about video big data
Video Ecosystem and some ideas about video big dataVideo Ecosystem and some ideas about video big data
Video Ecosystem and some ideas about video big data
Trieu Nguyen
 
Concepts, use cases and principles to build big data systems (1)
Concepts, use cases and principles to build big data systems (1)Concepts, use cases and principles to build big data systems (1)
Concepts, use cases and principles to build big data systems (1)
Trieu Nguyen
 
Open OTT - Video Content Platform
Open OTT - Video Content PlatformOpen OTT - Video Content Platform
Open OTT - Video Content Platform
Trieu Nguyen
 
Apache Hadoop and Spark: Introduction and Use Cases for Data Analysis
Apache Hadoop and Spark: Introduction and Use Cases for Data AnalysisApache Hadoop and Spark: Introduction and Use Cases for Data Analysis
Apache Hadoop and Spark: Introduction and Use Cases for Data Analysis
Trieu Nguyen
 
Introduction to Recommendation Systems (Vietnam Web Submit)
Introduction to Recommendation Systems (Vietnam Web Submit)Introduction to Recommendation Systems (Vietnam Web Submit)
Introduction to Recommendation Systems (Vietnam Web Submit)
Trieu Nguyen
 

More from Trieu Nguyen (20)

Building Your Customer Data Platform with LEO CDP in Travel Industry.pdf
Building Your Customer Data Platform with LEO CDP in Travel Industry.pdfBuilding Your Customer Data Platform with LEO CDP in Travel Industry.pdf
Building Your Customer Data Platform with LEO CDP in Travel Industry.pdf
 
Building Your Customer Data Platform with LEO CDP - Spa and Hotel Business
Building Your Customer Data Platform with LEO CDP - Spa and Hotel BusinessBuilding Your Customer Data Platform with LEO CDP - Spa and Hotel Business
Building Your Customer Data Platform with LEO CDP - Spa and Hotel Business
 
Building Your Customer Data Platform with LEO CDP
Building Your Customer Data Platform with LEO CDP Building Your Customer Data Platform with LEO CDP
Building Your Customer Data Platform with LEO CDP
 
How to track and improve Customer Experience with LEO CDP
How to track and improve Customer Experience with LEO CDPHow to track and improve Customer Experience with LEO CDP
How to track and improve Customer Experience with LEO CDP
 
[Notes] Customer 360 Analytics with LEO CDP
[Notes] Customer 360 Analytics with LEO CDP[Notes] Customer 360 Analytics with LEO CDP
[Notes] Customer 360 Analytics with LEO CDP
 
Leo CDP - Pitch Deck
Leo CDP - Pitch DeckLeo CDP - Pitch Deck
Leo CDP - Pitch Deck
 
LEO CDP - What's new in 2022
LEO CDP  - What's new in 2022LEO CDP  - What's new in 2022
LEO CDP - What's new in 2022
 
Lộ trình triển khai LEO CDP cho ngành bất động sản
Lộ trình triển khai LEO CDP cho ngành bất động sảnLộ trình triển khai LEO CDP cho ngành bất động sản
Lộ trình triển khai LEO CDP cho ngành bất động sản
 
Why is LEO CDP important for digital business ?
Why is LEO CDP important for digital business ?Why is LEO CDP important for digital business ?
Why is LEO CDP important for digital business ?
 
From Dataism to Customer Data Platform
From Dataism to Customer Data PlatformFrom Dataism to Customer Data Platform
From Dataism to Customer Data Platform
 
Data collection, processing & organization with USPA framework
Data collection, processing & organization with USPA frameworkData collection, processing & organization with USPA framework
Data collection, processing & organization with USPA framework
 
Part 1: Introduction to digital marketing technology
Part 1: Introduction to digital marketing technologyPart 1: Introduction to digital marketing technology
Part 1: Introduction to digital marketing technology
 
Why is Customer Data Platform (CDP) ?
Why is Customer Data Platform (CDP) ?Why is Customer Data Platform (CDP) ?
Why is Customer Data Platform (CDP) ?
 
How to build a Personalized News Recommendation Platform
How to build a Personalized News Recommendation PlatformHow to build a Personalized News Recommendation Platform
How to build a Personalized News Recommendation Platform
 
How to grow your business in the age of digital marketing 4.0
How to grow your business  in the age of digital marketing 4.0How to grow your business  in the age of digital marketing 4.0
How to grow your business in the age of digital marketing 4.0
 
Video Ecosystem and some ideas about video big data
Video Ecosystem and some ideas about video big dataVideo Ecosystem and some ideas about video big data
Video Ecosystem and some ideas about video big data
 
Concepts, use cases and principles to build big data systems (1)
Concepts, use cases and principles to build big data systems (1)Concepts, use cases and principles to build big data systems (1)
Concepts, use cases and principles to build big data systems (1)
 
Open OTT - Video Content Platform
Open OTT - Video Content PlatformOpen OTT - Video Content Platform
Open OTT - Video Content Platform
 
Apache Hadoop and Spark: Introduction and Use Cases for Data Analysis
Apache Hadoop and Spark: Introduction and Use Cases for Data AnalysisApache Hadoop and Spark: Introduction and Use Cases for Data Analysis
Apache Hadoop and Spark: Introduction and Use Cases for Data Analysis
 
Introduction to Recommendation Systems (Vietnam Web Submit)
Introduction to Recommendation Systems (Vietnam Web Submit)Introduction to Recommendation Systems (Vietnam Web Submit)
Introduction to Recommendation Systems (Vietnam Web Submit)
 

Recently uploaded

一比一原版(CBU毕业证)卡普顿大学毕业证成绩单
一比一原版(CBU毕业证)卡普顿大学毕业证成绩单一比一原版(CBU毕业证)卡普顿大学毕业证成绩单
一比一原版(CBU毕业证)卡普顿大学毕业证成绩单
nscud
 
Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)
TravisMalana
 
Machine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptxMachine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptx
balafet
 
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdfSample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Linda486226
 
一比一原版(YU毕业证)约克大学毕业证成绩单
一比一原版(YU毕业证)约克大学毕业证成绩单一比一原版(YU毕业证)约克大学毕业证成绩单
一比一原版(YU毕业证)约克大学毕业证成绩单
enxupq
 
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
Tiktokethiodaily
 
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
ewymefz
 
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
axoqas
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
ewymefz
 
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
u86oixdj
 
一比一原版(TWU毕业证)西三一大学毕业证成绩单
一比一原版(TWU毕业证)西三一大学毕业证成绩单一比一原版(TWU毕业证)西三一大学毕业证成绩单
一比一原版(TWU毕业证)西三一大学毕业证成绩单
ocavb
 
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
oz8q3jxlp
 
一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单
ewymefz
 
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
slg6lamcq
 
一比一原版(QU毕业证)皇后大学毕业证成绩单
一比一原版(QU毕业证)皇后大学毕业证成绩单一比一原版(QU毕业证)皇后大学毕业证成绩单
一比一原版(QU毕业证)皇后大学毕业证成绩单
enxupq
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
John Andrews
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
axoqas
 
Predicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Predicting Product Ad Campaign Performance: A Data Analysis Project PresentationPredicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Predicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Boston Institute of Analytics
 
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
vcaxypu
 
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdfCriminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP
 

Recently uploaded (20)

一比一原版(CBU毕业证)卡普顿大学毕业证成绩单
一比一原版(CBU毕业证)卡普顿大学毕业证成绩单一比一原版(CBU毕业证)卡普顿大学毕业证成绩单
一比一原版(CBU毕业证)卡普顿大学毕业证成绩单
 
Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)
 
Machine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptxMachine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptx
 
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdfSample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
 
一比一原版(YU毕业证)约克大学毕业证成绩单
一比一原版(YU毕业证)约克大学毕业证成绩单一比一原版(YU毕业证)约克大学毕业证成绩单
一比一原版(YU毕业证)约克大学毕业证成绩单
 
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
 
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
 
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
 
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
 
一比一原版(TWU毕业证)西三一大学毕业证成绩单
一比一原版(TWU毕业证)西三一大学毕业证成绩单一比一原版(TWU毕业证)西三一大学毕业证成绩单
一比一原版(TWU毕业证)西三一大学毕业证成绩单
 
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
一比一原版(Deakin毕业证书)迪肯大学毕业证如何办理
 
一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单
 
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
 
一比一原版(QU毕业证)皇后大学毕业证成绩单
一比一原版(QU毕业证)皇后大学毕业证成绩单一比一原版(QU毕业证)皇后大学毕业证成绩单
一比一原版(QU毕业证)皇后大学毕业证成绩单
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
 
Predicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Predicting Product Ad Campaign Performance: A Data Analysis Project PresentationPredicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Predicting Product Ad Campaign Performance: A Data Analysis Project Presentation
 
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
 
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdfCriminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdf
 

A/B Testing for Game Design

  • 1. Steve Collins CTO / Swrve A/B Testing for Game Design Iteration: A Bayesian Approach
  • 3. Push Notifications In-App MessagingA/B TestingTargeting & Analytics
  • 6. On-board 1st  experience   Tutorial  Flow   Incentives  /  Promo Monetization IAPs,  virtual  items   Promotions  /  offers  /  Ads   Economy  /  Game  Balance Retention Messaging  /  Push  Notify   Core  loops,  events   Community  /  Social “Engagement” Fun  factor!   Content  refresh  /  evolution   Level  balance,  progress LTV (+$) Acquisition Ads  (CPC,  CPI)   Cross  Promo   Discovery,  PR UAC (-$)
  • 7. ROI = LTV - UAC
  • 8. ROI UACLTV = nX x=1 ARPUx COSTx (1 + WACC)x CAC ARPULTV = nX x=1 ARPUx COSTx (1 + WACC)x CACLTV = nX x=1 ARPUx COSTx (1 + WACC)x CAC d d lifetime? LTV {
  • 9. 1" 2" 3" 4" 5" 6" 7" 8" 9" 10" 11" 12" 13" 14" 15" 16" 17" 18" 19" 20" 21" 22" 23" 24" 25" 26" 27" 28" 29" 30" 31" 32" High Mean Low Install-day-cohort 30-day revenue
  • 11. 1. Split population 2. Show variations 4. Choose winner 4. Deploy winner3. Measure response
  • 12. State  Sync State  Sync Game  State  DB Data   Warehouse Analyse Events  (tagged  with  A  or  B) Game   Server Content   Management     System A  or  B  variant A/B  Test   Server
  • 17. Elasticity testing: exchange rate $4.99 $4.99 100 coins A B 200 coins vs
  • 18. Price set A Price set B Price set C Store Inventory
  • 19. (f) Zoomed in version of the previous scatterplot. Note that jitter and transparency Value of first purchase Totalspend $70$30$15 A/B Test VIPs Repeat Purchases $5$2
  • 20. Timing Wait Sessions (3) Wait Event (movie_closed) In-app Msg "Request Facebook Registration" FB Reg when where
  • 21. 0 10000 20000 30000 40000 50000 0.00.20.40.60.81.0 number of user trials Probabilityofwinning
  • 22.
  • 23. Canacandycrushbalt* Day 1 retention = 30% * Apologies to King and Adam Saltsman
  • 25. Expecting 30% day-1 retention After 50 users, we see 0% Is this bad?
  • 27. The Null Hypothesis ) = 1 p 2⇡ 2 e (x µ)2) 2 2 H0 : x ! µ H0 : x ! µ Accept Reject H0 : x = µ 30%
  • 28. ) = 1 p 2⇡ 2 e (x µ)2) 2 2Reject 0% 30%
  • 29. Conclusion: 30% is unlikely to be the retention rate
  • 31. p-Value 95% 2.5% 2.5% = 1 p 2 e (x µ)2) 2 2 (n − r)!r! µ = np σ = np(1 − p) z = ¯x − µ σ z = ¯x − µ ˆσ√ n SE(¯x) = ˆσ √ n n = (zα + zβ)2 σ2 δ2 µ + 1.96σ µ − 1.96σ z = ¯x − µ σ z = ¯x − µ ˆσ√ n SE(¯x) = ˆσ √ n n = (zα + zβ)2 σ2 δ2 µ + 1.96σ µ − 1.96σ
  • 32. p-Value The probability of observing as extreme a result assuming the null hypothesis is true The probability of the data given the model OR
  • 33. Null  Hypothesis:  H0 H H Accept H Type-II Error Reject H Type-I Error Truth Observation False Positive
  • 34. All we can ever say is either not enough evidence that retention rates are the same the retention rates are different, 95% of the time p < 0.05 p-Value
  • 35. actually... The evidence supports a rejection of the null hypothesis, i.e. the probability of seeing a result as extreme as this, assuming the retention rate is actually 30%, is less than 5%. p < 0.05
  • 37. Required change Standard deviation Number of participants per group n ≈ 16σ 2 δ2
  • 38. Peeks 5% Equivalent 1 2.9% 2 2.2% 3 1.8% 5 1.4% 10 1% To get 5% false positive rate you need... i.e. 5 times http://www.evanmiller.org/how-­‐not-­‐to-­‐run-­‐an-­‐ab-­‐test.html
  • 40. Family-wise Error p = P( Type-I Error) = 0.05 5% of the time we will get a false positive - for one treatment P( no Type-I Error) = 0.95 P( at least 1 Type-I Error for 2 treatments) = (1 - 0.9025) = 0.0975 P( no Type-I Error for 2 treatments) = (0.95)(0.95) = 0.9025
  • 42. 0.0 0.2 0.4 0.6 0.8 1.0 0246810 Retention Density Expected retention rate ~30% “Belief” uncertainty
  • 43. 0.0 0.2 0.4 0.6 0.8 1.0 0246810 Retention Density ~15% New “belief” after 0 retained users Stronger belief after observing evidence
  • 44. The probability of the model given the data
  • 46. Tossing the Coin 0 10 20 30 40 50 0.00.20.40.60.81.0 Number of flips ProportionofHeads Heads Tails THTHTTTHHTHH…
  • 47. 1 5 10 50 500 0.00.20.40.60.81.0 Number of flips ProportionofHeads Tossing the Coin Long run average = 0.5
  • 48. p(y|x) = p(y, x) p(x) p(x|y) = p(x, y) p(y) p(y, x) = p(x, y) = p(y|x)p(x) = p(x|y)p(y) p(y|x) = p(x|y)p(y) p(x) p(y|x) = p(x|y)p(y) P Probability of x p(y|x) = p(y, x) p(x) p(x|y) = p(x, y) p(y) p(y, x) = p(x, y) = p(y|x)p(x) = p(x|y)p(y) p(y|x) = p(x|y)p(y) p(x) Probability of x and y (conjoint) p(y|x) = p(y, x) p(x) p(x|y) = p(x, y) p(y) p(y, x) = p(x, y) = p(y|x)p(x) = p(x|y)p p(x|y)p(y) Probability of x given y (conditional) Terminology
  • 49. The Bernoulli distribution For a “fair” coin, θ = 0.5 Head (H) = 1, Tails (T) = 0 p(x|θ) = θx(1 − θ)(1−x) A single toss: p(x|θ) = θx(1 − θ)(1−x) p(heads = 1|0.5) = 0.51(1−0.5)(1−1) = 0.5 0 (1−0) p(x|θ) = θx(1 − θ)(1−x) p(heads = 1|0.5) = 0.51(1−0.5)(1−1) = 0.5 p(tails = 0|0.5) = 0.50(1−0.5)(1−0) = 0.5
  • 50. The Binomial p(x|θ) = θx(1 − θ)(1−x) Probability of heads in a single throw: Probability of x heads in n throws: p(heads = 1|0.5) = 0.51 (1 − 0.5)(1−1) = 0.5 p(tails = 0|0.5) = 0.50 (1 − 0.5)(1−0) = 0.5 p(h|n, θ) = n h θh (1 − θ)(n−h) p(x|θ, n) = n x θx (1 − θ)(n−x)
  • 51. 20 tosses of a fair coin = 1 p 2⇡ 2 e (x µ)2) 2 2 1 − θ)(n−x)p(θ)dθ pc − pv 1−pc)+pv(1−pv) n p(x|0.5, 20) p(x|θ)p(θ) x (1 − θ)(1−x) 0.51 (1 − 0.5)(1−1) = 0.5
  • 52. 20 tosses of an “un-fair” coin 1 p 2⇡ 2 e (x µ)2) 2 2 θx(1 − θ)(n−x)p(θ)dθ ztest = pc − pv pc(1−pc)+pv(1−pv) n p(x|0.2, 20) p(x|0.5, 20) p(¯θ) = p(x|θ)p(θ) p(x|θ) = θx (1 − θ)(1−x) s = 1|0.5) = 0.51 (1 − 0.5)(1−1) = 0.5
  • 53. Likelihood of θ given observation i of x heads in n throws: “Binomial Likelihood” h p(x|θ, n) = n x θx (1 − θ)(n−x) 1 p(h|n, θ) = n h θh (1 − θ)(n−h) p(x|θ, n) = n x θx (1 − θ)(n−x) L(θ|xi, ni) = ni xi θxi (1 − θ)(ni−xi)
  • 54. The Likelihood Increasing likelihood of θ with more observations… 0.0 0.2 0.4 0.6 0.8 1.0 0.00.20.4 1 heads in 2 throws. θ Likelihood 0.0 0.2 0.4 0.6 0.8 1.0 0.000.100.20 5 heads in 10 throws. θ Likelihood 0.0 0.2 0.4 0.6 0.8 1.0 0.0000.0100.020 500 heads in 1000 throws. θ Likelihood
  • 55. p(¯θ) = p(x|θ)p(θ) p(x|θ) = θx (1 − θ)(1−x) p(heads = 1|0.5) = 0.51 (1 − 0.5)(1−1) = 0.5 p(tails = 0|0.5) = 0.50 (1 − 0.5)(1−0) = 0.5 The observations (#heads) p(x|0.2, 20) p(x|0.5, 20) p(¯θ) = p(x|θ)p(θ) p(x|θ) = θx (1 − θ)(1−x) p(heads = 1|0.5) = 0.51 (1 − 0.5)(1−1) = 0.5 p(tails = 0|0.5) = 0.50 (1 − 0.5)(1−0) = 0.5 The model parameter (e.g. fair coin) p(x|θ, n) = θx (1 − θ)(n−x) B(a, b) = Γ(a)Γ(b) Γ(a + b) = (a − 1)!(b − 1)! (a + b − 1)! beta(θ|a, b) = θ(a−1) (1 − θ)(b−1) / B(a, b) p(θ|x) = θx (1 − θ)(n−x) p(θ) / p(x)We want to know this ztest = c v pc(1−pc)+pv(1−pv) n p(x|0.2, 20) p(x|0.5, 20) p(¯θ) = p(x|θ)p(θ) p(x|θ) = θx (1 − θ)(1−x) p(heads = 1|0.5) = 0.51 (1 − 0.5)(1−1) = 0.5 Probability of data given model A recap…
  • 56. Note that p(x, y) = p(x|y)p(y) = p(y|x)p(x) p(x|θ) ̸= p(θ|x) p(cloudy|raining) ̸= p(raining|cloudy) p(θ|x, n) = θx (1 − θ)(n−x) θ(a−1) (1 − θ)(b−1) / B(a, b) p( p(θ|x, n) = θx+a−1 (1 − θ)(n−x+b−1) / B(x + a, n − x + b
  • 57. p(y|x) = p(y, x)p(x) p(x|y) = p(x, y)p(y) p(x, y) = p(x|y) p(y) = p(y|x) p(x) p(x|y)p(y) = p(y|x)p(x) p(y|x) = p(x|y)p(y) p(x) p(x, y) = p(x|y)p(y) = p(y|x)p(x) p(x|y) ̸= p(y|x) p(cloudy|raining) ̸= p(raining|cloudy) (θ|x, n) = θx (1 − θ)(n−x) θ(a−1) (1 − θ)(b−1) / B(a, b) p(x x+a−1 (n−x+b−1) Bayes’ Rule p(x, y) = p(x|y)p(y) = p(y|x)p(x p(x) = y p(x|y)p(y) p(x|θ) ̸= p(θ|x)
  • 58. p(y|x) = p(x|y)p(y) P y p(x|y)p(y) discrete form p(x|y) = p(y) p(y, x) = p(x, y) = p(y|x)p(x p(y|x) = p(x|y)p(y) p(x) p(y|x) = p(x|y)p(y) R p(x|y)p(y)dy continuous form
  • 59. p(x, n|θ) = θx(1 − θ)(n−x) ztest = pc − pv pc(1−pc)+pv(1−pv) n p(h, 20|0.2) p(x) p(✓|x) | {z } = p(x|✓) | {z } p(✓) |{z} / p(x) |{z} p(x) = Z p(x|✓)p(✓)d✓ prob of model prob #heads given model p(✓|x) | {z } = p(x|✓) | {z } p(✓) |{z} / p(x) |{z} p(x) = Z p(x|✓)p(✓)d✓ p(✓|x) | {z } = p(x|✓) | {z } p(✓) |{z} / p(x) |{z} p(x) = Z p(x|✓)p(✓)d✓ prob model given #heads p(x) p(x|y) = p(x, y) p(y) p(y, x) = p(x, y) = p(y|x)p(x) = p(x|y)p(y) p(y|x) = p(x|y)p(y) p(x) p(y|x) = p(x|y)p(y) R p(x|y)p(y)dy
  • 60. p(✓|x) | {z } = p(x|✓) | {z } p(✓) |{z} / p(x) |{z} p(x) = Z p(x|✓)p(✓)d✓ posterior likelihood prior normalizing factor p(✓|x) | {z } = p(x|✓) | {z } p(✓) |{z} / p(x) |{z} p(x) = Z p(x|✓)p(✓)d✓normalizing factor
  • 61. p(✓|x) | {z } = p(x|✓) | {z } p(✓) |{z} / p(x) |{z} p(x) = Z p(x|✓)p(✓)d✓ The prior Captures our “belief” in the model based on prior experience, observations or knowledge
  • 62. Best estimate so far Iterations with more data… p(θ|x) = p(x|θ) p(θ) / p(x) p(θ|x) = θx (1 − θ)(n−x) p(θ) θx(1 − θ)(n−x)p(θ)dθ ztest = pc − pv pc(1−pc)+pv(1−pv) n p(h, 20|0.2) p(x, n|θ) = θ (1 − θ) p(θ|x) = θx (1 − θ)(n−x) p(θ) / p(x) ˆp0(θ|x0) = p(x0|θ) p(θ) / p(x0) ˆp1(θ|x1) = p(x1|θ) ˆp0(θ) / ˆp0(x1) ˆpn(θ|xn) = p(xn|θ) ˆpn−1(θ) / ˆpn−1(xn) x (n−x) p(θ|x) = θx (1 − θ)(n−x) p(θ) / p(x) ˆp0(θ|x0) = p(x0|θ) p(θ) / p(x0) ˆp1(θ|x1) = p(x1|θ) ˆp0(θ) / ˆp0(x1) ˆpn(θ|xn) = p(xn|θ) ˆpn−1(θ) / ˆpn−1(xn) p(θ|x) = θx (1 − θ)(n−x) p(θ) p(θ|x) = θx (1 − θ)(n−x) p(θ) / p(x) ˆp0(θ|x0) = p(x0|θ) p(θ) / p(x0) ˆp1(θ|x1) = p(x1|θ) ˆp0(θ) / ˆp0(x1) ˆpn(θ|xn) = p(xn|θ) ˆpn−1(θ) / ˆpn−1(xn) p(θ|x) = θx (1 − θ)(n−x) p(θ) x (n−x)
  • 63. Selecting a prior We’d like the product of prior and likelihood to be “like” the likelihood We’d like the integral to be easily evaluated p(x, n|θ) = θx (1 − θ)(n−x) p(θ|x) = θx (1 − θ)(n−x) p(θ) / p(x) p(θ|x) = θx (1 − θ)(n−x) p(θ) θx(1 − θ)(n−x)p(θ)dθ ztest = pc − pv pc(1−pc)+pv(1−pv) n p(h|n, θ) = n h θh (1 − θ)(n−h) p(x|θ, n) = n x θx (1 − θ)(n−x) 1
  • 64. “Conjugate prior” ztest = pc(1−pc)+pv(1−pv) n p(h, 20|0.2) p(¯θ) = p(x|θ)p(θ) p(x|θ) = θx (1 − θ)(1−x)
  • 65. Beta distributionp(x, n|θ) = θx (1 − θ)(n−x) beta(θ|a, b) = θ(a−1) (1 − θ)(b−1) / B(a, b) p(θ|x) = θx (1 − θ)(n−x) p(θ) / p(x) ˆp0(θ|x0) = p(x0|θ) p(θ) / p(x0) ˆp1(θ|x1) = p(x1|θ) ˆp0(θ) / ˆp0(x1) number of heads + 1 number of tails + 1 p(θ|x, n) = θx (1 − θ)(n−x) θ(a−1) (1 − θ)(b−1) / B(a, b) p(θ|x, n) = θx+a−1 (1 − θ)(n−x+b−1) / B(x + a, n − x p(x, n|θ) = θx (1 − θ)(n−x) B(a, b) = Γ(a)Γ(b) Γ(a + b) = (a − 1)!(b − 1)! (a + b − 1)!
  • 67. beta priorbinomial likelihood Putting it together… p(θ|x, n) = θx (1 − θ)(n−x) θ(a−1) (1 − θ)(b−1) / B(a, b) p(x, n) p(θ|x, n) = θx+a−1 (1 − θ)(n−x+b−1) / B(x + a, n − x + b) p(x, n|θ) = θx (1 − θ)(n−x) number of heads x number of tails (n-x) p(x|y) ̸= p(y|x) p(cloudy|raining) ̸= p(raining|cloudy) p(θ|x, n) = θx (1 − θ)(n−x) θ(a−1) (1 − θ)(b−1) / B(a, b) p(x) p(θ|x, n) = θx+a−1 (1 − θ)(n−x+b−1) / B(x + a, n − x + b) p(θa > θb) = θa>θb p(θa|xa)p(θb|xb) dθadθb
  • 68. 1. Decide on a prior, which captures your belief 2. Run experiment and observe data for heads, tails 3. Determine your posterior based on the data 4. Use posterior as your new belief and re-run experiment 5. Rinse, repeat until you hit an actionable certainty Putting it together…
  • 69.
  • 71. “Coin is fair” prior “Fair” coin Very sure coin is fair
  • 73. “Coin is fair” prior “biased” coin Not sure of anything yet!
  • 75. The Credible Interval Uniform prior “Fair” coin 95% credible interval
  • 76. The Credible Interval Uniform prior “Biased” coin Outside credible interval
  • 77. Captures our prior belief, expertise, opinion Strong prior belief means: ‣ we need lots of evidence to contradict ‣ results converge more quickly (if prior is “relevant”) Provides inertia With enough samples, prior’s impact diminishes, rapidly The Prior
  • 79. With 1 or more variants we have a multi-dimensional problem Need to evaluate volumes under the posterior In general requires numerical quadrature = Markov Chain Monte-Carlo (MCMC) Multiple variant tests
  • 80. p(θ|x, n) = θx (1 − θ)(n−x) θ(a−1) p(θ|x, n) = θx+a−1 (1 − θ)(n−x+ p(θa > θb) = θa>θb p(θ p(θ|x, n) = θx (1 − θ)(n−x) θ(a−1) (1 − θ) p(θ|x, n) = θx+a−1 (1 − θ)(n−x+b−1) / p(θa > θb) = θ >θ p(θa|xa)p(
  • 81. Probability of Winning |x, n) = θx (1 − θ)(n−x) θ(a−1) (1 − θ)(b−1) / B(a, b) B(x p(θ|x, n) = θx+a−1 (1 − θ)(n−x+b−1) / B(x + a, n − x + b p(θa > θb) = θa>θb p(θa|xa)p(θb|xb) dθadθb p(x|θ, n) = θx (1 − θ)(n−x) B(a, b) = Γ(a)Γ(b) Γ(a + b) = (a − 1)!(b − 1)! (a + b − 1)!
  • 82. p(θ|x, n) = θx (1 − θ)(n−x) θ(a−1) (1 − θ) p(θ|x, n) = θx+a−1 (1 − θ)(n−x+b−1) / p(θa > θb) = θa>θb p(θa|xa)p(θ
  • 85.
  • 89. Observed conversion rates (with CI bounds)
  • 90. A not so successful test...
  • 93. Assumptions Users are independent User’s convert quickly (immediately) Probability of conversion is independent of time
  • 95. Benefits / Features Continuously observable No need to fix population size in advance Incorporate prior knowledge / expertise Result is a “true” probability A measure of the difference magnitude is given Consistent framework for lots of different scenarios
  • 96. Useful Links • h#ps://github.com/CamDavidsonPilon/Probabilistic-­‐‑Programming-­‐‑ and-­‐‑Bayesian-­‐‑Methods-­‐‑for-­‐‑Hackers   • “Doing  Bayesian  Data  Analysis:  A  Tutorial  with  R  and  Bugs”,  John  K.   Kruschke   • h#p://www.evanmiller.org/how-­‐‑not-­‐‑to-­‐‑run-­‐‑an-­‐‑ab-­‐‑test.html     • h#p://www.kaushik.net  -­‐‑  Occam’s  Razor  Blog   • h#p://exp-­‐‑platform.com  -­‐‑  Ron  Kovahi  et  al.  
  • 98. Multi-arm bandits 5% 6% 10% 4% Pull 1 Pull 2 Pull 3
  • 99. Multi-arm bandits Draw sample from each "arm" prior distribution Evaluate Success Update posterior for chosen "arm" Pick largest & deploy Thompson Sampling Thompson, William R. "On the likelihood that one unknown probability exceeds another in view of the evidence of two samples". Biometrika, 25(3–4):285–294
  • 101. Difficulty tuning a slight silly example… Canacandycrushbalt
  • 102. Winner