Tillbaka till artiklar
Illustration of a humanoid robot with an external brain suspended in a transparent water-filled container

Machine Learning

Att tänka rätt kring Machine Learning

B

Björn Bergström

ML Developer (Junior)

10 min | 2026-01-13

Att förstå maskininlärning

Maskininlärning framställs ofta som något gåtfullt eller magiskt. I praktiken är det varken magi eller rena gissningar, utan ett sätt att lösa problem med hjälp av data. Det som avgör hur bra en modell fungerar är i hög grad hur väl problem, data och modeller hänger ihop.

Den här webbplatsen är skapad för att ge en tydlig introduktion till maskininlärning med fokus på hur man resonerar snarare än på specifika bibliotek eller ramverk. Området utvecklas snabbt och kan tidigt upplevas som fragmenterat, särskilt för den som försöker förstå både helheten och de tekniska detaljerna samtidigt.

Tanken är att jag kommer att publicera ungefär en artikel i veckan. Innehållet börjar med grundläggande begrepp och bygger successivt vidare mot mer avancerade ämnen.

Det är helt normalt att läsa igenom texter mer än en gång. Förståelse inom tekniska ämnen växer ofta fram genom repetition och successiv fördjupning, snarare än genom memorering.

Idén till webbplatsen tog form i ett oväntat sammanhang. När domänen visade sig vara ledig blev den en utgångspunkt för ett större projekt.

MNIST är ofta det första datasetet man möter inom maskininlärning och har därmed kommit att representera starten för många inom maskininlärning.

De första idéerna kom fram under en resa längs västkusten, där avståndet från vardagen gav utrymme att tänka igenom både syftet och strukturen bakom webbplatsen.

Ett standarddataset inom maskininlärning

MNIST (Modified National Institute of Standards and Technology) är ett modifierat dataset baserat på NIST:s handskrivna data och består av 70 000 bilder av handskrivna siffror mellan 0-9.

Anledningen är att mycket av det tidskrävande arbetet med datainsamling, rensning och strukturering redan är gjort. MNIST består av gråskalebilder med fasta dimensioner på 28x28 pixlar och innehåller exempel där varje bild har en tilldelad etikett, vilket gör datasetet väl lämpat för att introducera grundläggande begrepp inom maskininlärning.

Datakvalitet är en avgörande faktor för att ett maskininlärningssystem ska lyckas. Därför är det ofta klokt att först undersöka vilka dataset som redan finns tillgängliga. Att själv samla in och strukturera tiotusentals exempel är ett omfattande arbete som i praktiken kan ta flera veckor. Färdiga dataset som MNIST gör det möjligt att i stället fokusera på förståelse, metodval och modellbeteende.

Problemformulering och metodval

Innan vi börjar prata om modeller eller algoritmer behöver vi förstå vad problemet faktiskt är. Alla problem kräver inte maskininlärning. När problemen är enkla kan de ofta lösas med statistik eller fasta tröskelvärden.

När mönstren blir så komplexa att man inte kan skriva ner alla regler i förväg blir maskininlärning relevant. Maskininlärning används då för att lära statistiska samband direkt från exempel, i stället för att förlita sig på förutbestämda villkor.

När problemet är tydligt formulerat blir nästa avgörande fråga vilken data som krävs för att kunna lösa det. Hur bra datan är, hur den är strukturerad och hur representativ den är, sätter ramarna för vad en modell över huvud taget kan lära sig.

Datakvalitet och vanliga fallgropar

Ofta är kvaliteten på datan viktigare än modellvalet. Matar man in skräp får man också ut skräp. Bias, brus och felaktiga etiketter påverkar modellens beteende direkt. Därför är datakvalitet en avgörande faktor för modellens prestanda.

Dataset för en modell delas vanligtvis upp i träningsdata, valideringsdata och testdata. En vanlig tumregel är att använda cirka 70 procent av datan för träning, 15 procent för validering och 15 procent för test. Den kan dock varieras vid behov.

Vid små dataset eller i känsliga tillämpningar kan det vara viktigare att avsätta mer data för utvärdering, även om det innebär mindre träningsdata, för att få en mer tillförlitlig bild av modellens prestanda.

Läckage mellan tränings- och testdata

Det finns alltid en risk för dataläckage i ett projekt inom maskininlärning. Dataläckage uppstår när information som modellen inte borde ha tillgång till under träning ändå påverkar resultatet, vilket leder till en överskattning av modellens prestanda.

Exempelvis inom medicinsk bildanalys, anta att ett dataset innehåller MRI-bilder där varje patient har flera bildserier eller bildpar. Om datan delas upp slumpmässigt på bildnivå finns risken att bilder från samma patient hamnar både i träningsdata och testdata. Modellen kan då indirekt lära sig patientspecifika mönster i stället för generella medicinska samband.

Exempelvis arbete med tidsseriedata krävs det att man är försiktig med hur datan delas upp. Om data från framtida tidpunkter blandas in i träningsdatan, t.ex. genom att dela upp datan slumpmässigt i stället för kronologiskt, får modellen indirekt tillgång till information om framtiden. Detta kan leda till mycket goda resultat vid utvärdering, trots att modellen i verkligheten aldrig skulle ha tillgång till dessa data vid prediktionstillfället.

Trots att dessa exempel kommer från olika typer av data bygger problemen på samma underliggande mekanism. I båda fallen får modellen tillgång till information som inte finns tillgänglig i verklig användning.

Dataläckage är ett av de vanligaste och mest allvarliga misstagen i maskininlärning eftersom det kan leda till modeller som ser tillförlitliga ut vid testning men som misslyckas helt i praktisk användning.

Representativitet och bias

Utöver dataläckage är bias ett vanligt problem i maskininlärning. Bias uppstår när träningsdatan inte är representativ för den miljö där modellen senare ska användas, vilket kan leda till att modellen lär sig samband som inte är relevanta för den faktiska uppgiften.

Exempelvis projekt inom maskininlärning med röntgenbilder, där data kommer från både akutröntgen och vanlig röntgen. Om sjuka patienter oftare fotograferas med akutröntgen och friska patienter med fasta maskiner, finns risken att modellen lär sig känna igen vilken typ av utrustning som använts i stället för faktiska tecken på sjukdom.

I ett sådant fall lär sig modellen ett indirekt samband som fungerar på träningsdatan men inte generaliserar till nya sjukhus eller andra bildsystem. Liknande effekter benämns ofta som scanner domain shift.

Dokumentation

Dokumentation är viktig för att andra ska kunna förstå modellen och för att processen ska kunna återskapas, felsökas eller förbättras. Det ska framgå hur modellen har tränats och utvärderats samt vilket problem den är tänkt att lösa. Det är också viktigt att spara skript för datarensning och förbehandling, så att modellen och dess resultat kan återskapas under samma förutsättningar.

Exempel på värdefull dokumentation:

Problemdefinition och modellens mål

Träningsdata (ursprung, urval och kända bias)

Datapreprocessering och eventuella transformationer

Modellval och hyperparametrar

Utvärderingsmått och valideringsresultat

Antaganden och kända begränsningar

Riskbedömning

Riskbedömning är en viktig del av ett projekt inom maskininlärning. Det handlar om att förstå hur modellen kan användas, i vilka sammanhang den inte bör användas samt vilka konsekvenser olika typer av fel kan få. En modell kan fungera väl enligt statistiska mått, men ändå vara olämplig i praktiken om felen får allvarliga följder eller drabbar vissa grupper oproportionerligt.

Inom medicinsk bildanalys har olika typer av fel olika konsekvenser. Ett ensidigt fokus på sammanfattande mått, såsom träffsäkerhet (accuracy), kan därför vara missvisande, eftersom måttet inte säger något om vilka typer av misstag modellen faktiskt gör.

I ett system som ska upptäcka cancer är det ofta betydligt allvarligare att missa en sjuk patient än att felaktigt flagga en frisk. En modell som prioriterar att identifiera så många sjuka fall som möjligt, även om den ibland klassificerar friska patienter som sjuka, kan i vissa tillämpningar vara att föredra framför en modell som missar fler sjuka fall trots att den totalt sett begår färre fel.

Detta innebär att riskbedömningen bör omfatta:

Vilka typer av fel som är mest kostsamma.

Vilka grupper eller individer som påverkas av dessa fel.

I vilka sammanhang modellen kan fatta automatiserade beslut samt vilka begränsningar och säkerhetsmekanismer som krävs.

Utvärderingen av ett maskininlärningssystem bör därför ta hänsyn till konsekvenserna av modellens fel, snarare än att enbart fokusera på sammanfattande prestandamått.

Olika AI-modeller

När vi vet vilket problem som ska lösas och vilken data som finns tillgänglig kan vi börja analysera möjliga modeller.

Inom maskininlärning är en modell en funktion vars parametrar optimeras med hjälp av data för att approximera ett samband mellan indata och utdata.

Det finns många olika modellfamiljer inom maskininlärning och vilken modell som är lämplig beror på hur problemet är formulerat samt vilken typ av data som används.

Vid träningens start saknar modellen kunskap om vad som utgör ett korrekt resultat. Träning innebär att modellens parametrar justeras med hjälp av data för att förbättra dess förutsägelser genom upprepade förutsägelser och efterföljande återkoppling.

I ett dataset som MNIST finns en korrekt etikett för varje bild. När modellen presenteras med en bild gör den först en förutsägelse om vilken siffra bilden föreställer. Denna förutsägelse jämförs därefter med bildens etikett.

Om modellen gör en korrekt förutsägelse blir parameterjusteringen liten. Vid en felaktig förutsägelse erhåller modellen en tydlig felsignal och parametrarna justeras i riktning mot en bättre lösning. Denna process upprepas över många exempel.

Med tiden lär sig modellen vilka mönster i bilderna som oftast leder till korrekta svar och vilka som leder till fel. Den lär sig alltså inte siffror som begrepp, utan statistiska samband mellan pixelmönster och rätt etikett.

Detta innebär att modellen lär sig genom att dess parametrar successivt justeras för att minska felen i framtida förutsägelser.

MNIST | Machine Learning