MLOps Academy · Lektion

Mät drift med PSI och KS

Kvantifiera förändringar i fördelningen för varje feature.

Lektion 2 av 413 steg

Mät drift med PSI och KS är en gratis lektion i MLOps Academy på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för MLOps Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i MLOps Academy innehåller totalt 4 lektioner.

Från magkänsla till siffra

Det räcker inte att säga att ett attribut verkar annorlunda. Ni behöver en siffra som visar hur mycket dess fördelning har förändrats. Två beprövade verktyg är PSI och KS-testet. 📏

Vad PSI mäter

Population Stability Index jämför ett attributs aktuella fördelning med träningsdata, intervall för intervall. Ju större skillnaden är i varje intervall, desto högre blir värdet.

Så tolkar ni PSI-värden

En vanlig tumregel är att PSI under 0,1 betyder stabilitet, 0,1 till 0,25 betyder en måttlig förändring och över 0,25 betyder betydande drift som bör hanteras.

Så beräknas PSI

För varje intervall multiplicerar PSI procentuell skillnad med den logaritmiska kvoten mellan de två procentandelarna och summerar sedan över alla intervall till ett enda värde.

import numpy as np

def psi(expected, actual):
    return np.sum((actual - expected) * np.log(actual / expected))

Indelningen kommer först

PSI kräver att båda urvalen placeras i samma intervall, ofta tiondelar baserade på träningsdata. Samma gränser på båda sidor gör jämförelsen rättvis.

edges = np.quantile(reference, np.linspace(0, 1, 11))
exp = np.histogram(reference, edges)[0] / len(reference)
act = np.histogram(current, edges)[0] / len(current)

Vad KS-testet mäter

Kolmogorov-Smirnov-testet hittar den största skillnaden mellan två kumulativa fördelningar. Detta maximala avstånd är KS-statistikan.

KS på en rad

SciPy ger er KS-testet direkt. Ett litet p-värde betyder att de två urvalen sannolikt kommer från olika fördelningar, vilket kan tyda på drift.

from scipy.stats import ks_2samp

stat, pvalue = ks_2samp(reference, current)
drifted = pvalue < 0.05

PSI jämfört med KS

PSI ger ett enda allvarlighetsvärde som passar bra i dashboards. KS ger ett statistiskt p-värde som passar bra för beslut med ja eller nej. Många team följer båda bredvid varandra.

Kategoriska attribut

PSI fungerar naturligt för kategorier och behandlar varje värde som ett eget intervall. KS förutsätter ordnade tal, så använd chi-två-testet för kategoriska attribut i stället.

Var uppmärksam på urvalsstorleken

Med mycket stora urval markerar KS-testet små, harmlösa förändringar som statistiskt signifikanta. Kombinera p-värdet med en effektstorlek som PSI innan ni utlöser en varning.

Per attribut och sedan sammanfattning

Kör dessa tester per attribut och sammanfatta sedan resultaten. En användbar signal är andelen attribut som förändrats, vilket visar om förändringen är bred eller begränsad. 📊

Snabb kontroll

Välj rätt tolkning av dessa siffror.

Sammanfattning

Ni omvandlade drift till siffror: PSI mäter allvarlighetsgrad med intervall och KS mäter den största skillnaden mellan fördelningar. Använd båda, tänk på urvalsstorleken och välj rätt test för varje attributtyp. 🎯

Gratis att börja

Lär dig Python med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Mät drift med PSI och KS” gratis?

Ja – hela texten till ”Mät drift med PSI och KS” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i MLOps Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i MLOps Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Mät drift med PSI och KS”?

Kvantifiera förändringar i fördelningen för varje feature. Ni övar på MLOps Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig MLOps Academy?

Du behöver inga förkunskaper. Utbildningen i MLOps Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Mät drift med PSI och KS”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här MLOps Academy-lektionen?

Ja. Varje MLOps Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Data drift kontra concept drift
  2. Mät drift med PSI och KS
  3. Generera driftrapporter med Evidently
  4. Sätt drifttrösklar och utlösare
← Tillbaka till MLOps Academy