Reproducera ett paper
Kunna reproducera ett publicerat resultat från artikel till körande kod, jämföra med rapporterade siffror och förklara avvikelser.
Förkunskaper
- EReproducerbarhetkrävs
- FLäsa och analysera forskningsartiklarkrävs
- GAblationsstudierkrävs
Intuition
Att reproducera ett paper är det bästa sättet att förstå det — och att upptäcka att en del av det som står inte stämmer, eller inte står.
Arbetsgång:
- Välj resultat: ett huvudpåstående, en tabell, en kurva. Inte hela pappret.
- Skala ner: mindre modell/data så att en körning tar minuter. Effekten ska ändå synas (annars: välj annat resultat).
- Lista allt som saknas i pappret: lr-schema, frön, förbehandling, «details in appendix» som inte finns. Gissa, dokumentera gissningen.
- Bygg baslinje först och verifiera att den matchar papprets baslinje ungefär. Om inte — stanna och förstå varför.
- Kör metoden med ≥ 3 frön. Jämför riktning och storlek på effekten, inte exakta decimaler.
- Förklara avvikelser: skala, saknade detaljer, bugg hos dig, bugg hos dem.
- Rapportera: vad som reproducerades, vad inte, vad som krävdes utöver pappret.
En misslyckad reproduktion med tydlig dokumentation är ett värdefullt resultat.
Forskning
Läget i fältet: ML Reproducibility Challenge (sedan 2018) visar att en betydande andel publicerade resultat inte går att återskapa ens med författarnas kod — vanliga orsaker är underrapporterade hyperparametrar, ospecificerad förbehandling, frö-känslighet och svag baslinje. Henderson m.fl. (2018) visade att samma RL-algoritm med olika kodbaser eller frön ger stora skillnader. Svar från fältet: reproducerbarhetschecklistor (NeurIPS), krav på kod, «Papers with Code», och förregistrering.
För din reproduktion: använd Papers-with-Code-länken om den finns, men skriv din egen implementation av kärnan — det är där förståelsen sitter. Jämför sedan mot deras kod: skillnaden är ofta där papprets text är ofullständig.
Projekt 6 gör detta för Srivastava m.fl. (2014): ett MLP på digits med litet träningsset, p ∈ {0, 0,2, 0,5}, tre frön, rapport med hypotes, metod och tabell.
Behärskning innebär
- Går från artikel till körande kod som återskapar huvudresultatet i liten skala
- Jämför mot rapporterade siffror och förklarar avvikelser
- Dokumenterar reproduktionen så att andra kan upprepa den
Logga in för att göra övningarna och bygga upp din behärskning.
Källor
- arXiv — Dropout: A Simple Way to Prevent Neural Networks from Overfitting (JMLR) — arXiv (öppen åtkomst; licens per artikel)
- arXiv — Deep Reinforcement Learning that Matters — arXiv (öppen åtkomst; licens per artikel)
- ML Reproducibility Challenge — fri läsning