Styrka och urvalsstorlek

A/B-testning i R

Lauryn Burleigh

Data Scientist

Styrka definierad

  • Sannolikheten att förkasta nollhypotesen när den är falsk
  • Att inte begå ett Typ II-fel genom att inte förkasta nollhypotesen
  • Idealt: litet Typ II-fel, hög styrka

En normalfördelad nollhypotes till vänster och alternativhypotes till höger, delvis överlappande. En streckad linje markerar p-värdet där fördelningarna överlappar. Till vänster om linjen under alternativhypotesen visas Typ II-felet och till höger visas styrkan.

A/B-testning i R

Fördelar med styrka

Testets användbarhet

  • Att förkasta nollhypotesen när det är rätt att göra det

En normalfördelad nollhypotes till vänster och alternativhypotes till höger, delvis överlappande. En streckad linje markerar p-värdet där fördelningarna överlappar. Till vänster om linjen under alternativhypotesen visas Typ II-felet och till höger visas styrkan.

Styrka

  • Bestämma nödvändig urvalsstorlek
  • Kontrollera om resultaten är tillförlitliga
A/B-testning i R

Urvalsstorlek

  • Uppskattad effektstorlek
  • Uppskattad styrka (vanligtvis 0,8)
  • Alfa (vanligtvis 0,05)

Överlappande fördelningar för olika urvalsstorlekar där en mindre urvalsstorlek ger en smalare fördelning. Mindre urvalsstorlek kräver ett större t-värde för att nå signifikans.

library(pwr)
pwr.t.test(d = .8, power = 0.8,

sig.level = 0.05,
type = "one.sample",
alternative = "two.sided")
     One-sample t test power calculation 
              n = 14.30276
              d = 0.8
      sig.level = 0.05
          power = 0.8
    alternative = two.sided
A/B-testning i R

Effektstorlek

  • Förväntad effektstorlek
  • Kontrollgruppens medelvärde minus experimentgruppens medelvärde

En normalfördelad nollhypotes till vänster och alternativhypotes till höger, delvis överlappande. En streckad linje markerar p-värdet där fördelningarna överlappar. Till vänster om linjen under alternativhypotesen visas Typ II-felet och till höger visas styrkan. Ett rött fält visar effektstorleken som skillnaden mellan fördelningarnas toppar.

Före analys

Hitta effektstorlek med:

  • Bakgrundsinformation
  • Preliminära data

 

Efter analys

Hitta effektstorlek med:

  • Fullständigt dataset
A/B-testning i R

Styrkeanalys av test

Högre styrka = högre sannolikhet att korrekt förkasta nollhypotesen

Tre faktorer krävs:

  • Urvalsstorlek
  • Effektstorlek
  • Alfa
library(pwr)
pwr.t.test(n = 20, sig.level = 0.045, 
           d = .81, type = "one.sample")
     One-sample t test power calculation 
              n = 20
              d = 0.81
      sig.level = 0.045
          power = 0.9223189
    alternative = two.sided
A/B-testning i R

Pizzafördelningar

Liknande fördelningar

Ingen signifikant skillnad

Två histogram, Pepperoni i rosa och Cheese i blått, med värden på x-axeln och antal förekomster på y-axeln, med toppar nära varandra på x-axeln.

Olika fördelningar

Sannolikt signifikant skillnad

Två histogram, Pepperoni i rosa och Cheese i blått, med värden på x-axeln och antal förekomster på y-axeln, med toppar åtskilda på x-axeln.

A/B-testning i R

Pizzahypoteser

Nollhypotesfördelning i rosa med medelvärdesskillnad 0 och alternativhypotesfördelning i blått med medelvärdesskillnad 3,5 samt ett kritiskt förkastningsvärde markerat med en vertikal linje vid 1,64.

  • Liknande: till vänster om förkastningsvärdet
  • Olika: till höger om förkastningsvärdet
library(ggplot2)
ggplot(HypDists, 
       aes(x = Time, fill = Hypothesis)) + 
  geom_histogram() + 
  xlab("Difference Between Groups") + 
  geom_vline(xintercept = 1.64)
A/B-testning i R

Pizzastyrka

Nollhypotesfördelning i rosa med medelvärdesskillnad 0 och alternativhypotesfördelning i blått med medelvärdesskillnad 3,5 samt ett kritiskt förkastningsvärde markerat med en vertikal linje vid 1,64.

  • Liknande: till vänster om förkastningsvärdet
  • Olika: till höger om förkastningsvärdet
  • Styrka: sannolikheten att inte felaktigt dra slutsatsen att topping-fördelningarna är lika (Typ II-fel)
library(ggplot2)
ggplot(HypDists, 
       aes(x = Time, fill = Hypothesis)) + 
  geom_histogram() + 
  xlab("Difference Between Groups") + 
  geom_vline(xintercept = 1.64)
A/B-testning i R

Nu kör vi en övning!

A/B-testning i R

Preparing Video For Download...