Hoppa till innehållet
AI-grafen
E· Universitetstatistik-sannolikhet· ca 60 min· utvecklande· verifierad 2026-09-20

Hypotesprövning och p-värden

Kunna ställa upp noll- och alternativhypotes, tolka p-värden och förstå deras begränsningar.

Förkunskaper

Intuition

Nollhypotes H0: «ingen skillnad». p-värdet = sannolikheten att se en så stor (eller större) skillnad om H0 vore sann. Litet p (< 0,05) → datan är osannolik under H0 → vi förkastar H0.

Vad p inte är: sannolikheten att H0 är sann; ett mått på hur stor skillnaden är; ett bevis.

I ML:

  • Två modeller på samma testfall → McNemar (klassificering) eller parat t-test/permutationstest på per-fall-skillnader.
  • Många jämförelser (10 prompter × 5 mått) → några blir «signifikanta» av slump. Bonferroni (α/m) eller rapportera ärligt hur många tester som gjordes.
  • Rapportera effektstorlek med intervall — «+2,1 pe [0,4; 3,8]» säger mer än «p = 0,03».

Med n = 100 000 blir allt signifikant; med n = 30 blir inget. p mäter evidens och stickprovsstorlek.

Kod

import numpy as np
from scipy import stats

# permutationstest på parade skillnader (fungerar för vilket mått som helst)
def perm_test(diff, n=20000, seed=0):
    rng = np.random.default_rng(seed); diff = np.asarray(diff); obs = diff.mean()
    flips = rng.choice([-1, 1], size=(n, len(diff)))
    null = (flips * diff).mean(axis=1)
    return obs, np.mean(np.abs(null) >= abs(obs))

ratt_a = np.array([1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1])
ratt_b = np.array([1,0,0,1,1,1,0,1,0,1,0,1,1,1,1,0,1,0,1,1,1,0,1,0,1,1,0,0,1,1])
print(perm_test(ratt_a - ratt_b))                       # (0.167, ~0.03)

# McNemar: bara diskordanta fall räknas
b = int(((ratt_a == 1) & (ratt_b == 0)).sum()); c = int(((ratt_a == 0) & (ratt_b == 1)).sum())
print(b, c, stats.binomtest(b, b + c, 0.5).pvalue)      # 5 0 → p = 0.0625 (exakt)

# Bonferroni: 12 jämförelser → tröskel 0.05/12

Behärskning innebär

  • Ställer upp H0/H1 och väljer test (t-test, McNemar, permutation)
  • Tolkar p-värde korrekt och känner dess begränsningar
  • Korrigerar för multipla jämförelser och rapporterar effektstorlek

Logga in för att göra övningarna och bygga upp din behärskning.

Källor

Alla källor och licenser