Automated Modernization of Machine Learning Engineering Notebooks for Reproducibility
Dit artikel introduceert MLEModernizer, een door LLM gedreven agentisch framework dat automatisch machine learning engineering notebooks moderniseert om omgevingserosie te overwinnen en reproduceerbaarheid te herstellen door code iteratief uit te voeren en gerichte fixes toe te passen, waarbij succesvol meer dan 40% van de voorheen niet-reproduceerbare notebooks is hersteld.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je een tijdreiziger bent die ervan houdt om naar oude recepten te kijken. Je vindt een beroemd taartrecept uit 2015, geschreven in een speciaal notitieboekje. Het recept zegt: "Meng bloem, suiker en een magisch ingrediënt genaamd 'XGBoost' om een perfecte taart te krijgen." Je probeert vandaag de dag die taart te bakken, maar er gaat iets mis. Het "XGBoost"-ingrediënt dat je vandaag in de winkel koopt, is net even anders; het is sterker, het werkt anders, en wanneer je het mengt, explodeert het beslag of smaakt het naar zeep. Dit is het probleem van "environmental erosion" (omgevingserosie). In de wereld van Machine Learning Engineering (MLE) gebruiken wetenschappers en ingenieurs interactieve notebooks (zoals digitale receptenboeken) om AI-modellen te bouwen. Ze delen deze notebooks zodat anderen de code kunnen leren of gebruiken. Maar omdat computers en software razendsnel updaten, gaan oude notebooks vaak kapot omdat de "ingrediënten" (softwarebibliotheken) waar ze op vertrouwen, veranderd zijn of verdwenen zijn. Als je de oude code niet kunt draaien, kun je de resultaten niet verifiëren, en gaat de kennis verloren. De grote vraag is: Kunnen we deze oude, kapotte recepten repareren zodat ze werken in de keuken van vandaag, zonder de hele keuken vanaf nul opnieuw te moeten opbouwen?
Dit paper, getiteld "Automated Modernization of Machine Learning Engineering Notebooks for Reproducibility," duikt in exact dit probleem. De auteurs, Bihui Jin, Kaiyuan Wang en Pengyu Nie, besloten te testen hoe kapot deze digitale recepten werkelijk zijn. Ze verzamelden een enorme collectie van 12.106 notebooks van populaire machine learning-competities op Kaggle. Toen ze probeerden deze notebooks in een moderne omgeving uit te voeren, stuitten ze op een harde realiteit: slechts 26% van hen werkte daadwerkelijk en produceerde dezelfde resultaten als zij jaren geleden deden. De andere 74% was kapot, of liep vast met foutmeldingen, of produceerde compleet andere scores.
Je zou kunnen denken dat de oplossing eenvoudig is: ga gewoon terug in de tijd en installeer exact de oude softwareversies waarvoor het recept oorspronkelijk werd geschreven. Dit wordt "environment backporting" genoemd. De auteurs probeerden dit door alle software te downgraden om overeen te komen met de datum waarop de notebook oorspronkelijk werd ingediend. Verrassend genoeg maakte dit de situatie erger! In plaats van 26% die werkte, werd slechts 12% reproduceerbaar. Het blijkt dat het reconstrueren van het verleden een valstrik is; de oude softwareversies zijn vaak niet meer beschikbaar, incompatibel met moderne hardware, of simpelweg te fragiel om te draaien. De auteurs betogen dat we, in plaats van te proberen de oude keuken te herbouwen, het recept zelf moeten aanpassen zodat het werkt in de nieuwe keuken.
Om dit op te lossen, bouwde het team een tool genaamd MLEModernizer. Denk aan dit als een super-slimme, robotische sous-chef aangedreven door een Large Language Model (LLM). Deze robot leest niet alleen het recept; hij probeert ook daadwerkelijk de taart te bakken. Als de taart aanbrandt (er treedt een fout op), kijkt de robot naar de rook, ontdekt wat er misging, en herschrijft het recept om het te repareren. Als de taart te lang moet bakken (runtime-problemen), past de robot de instructies aan om het proces te versnellen. Als de taart net even anders smaakt (de score wijkt af), past de robot de ingrediënten aan om de oorspronkelijke standaard van de smaak terug te krijgen.
De robot werkt in een lus: hij voert de code uit, controleert de resultaten, en als er iets mis is, vraagt hij de AI om een patch (een reparatie) voor de hele notebook te schrijven. Hij blijft dit tot wel 16 keer doen totdat de notebook werkt. De resultaten waren zeer veelbelovend. Toen ze dit testten op 8.210 kapotte notebooks, slaagde de tool erin om ongeveer 40% tot 45% van hen te repareren, waardoor ze weer reproduceerbaar werden. Specifiek, bij het gebruik van een krachtig AI-model (GPT-5.2), repareerden ze 3.292 notebooks, en met een iets ander open-source model (GPT-OSS-120b), repareerden ze 3.683.
De paper is echter voorzichtig om dit geen toverstaf te noemen. De auteurs ontdekten dat hoewel de tool de cijfers wel goed kon krijgen (de "score"), de onderliggende code soms veranderde op manieren die niet exact hetzelfde waren als het origineel. Bijvoorbeeld, de AI kan de manier waarop een model wordt getraind net genoeg veranderen om de juiste score te halen, maar de "smaak" van de code is anders. Ze ontdekten ook dat sommige fouten gewoon te koppig zijn om automatisch te repareren; de tool was geweldig in het repareren van eenvoudige "ontbrekende ingrediënt"-fouten (zoals het vergeten importeren van een bibliotheek), maar had moeite met complexe "vreemde ingrediënt-interactie"-fouten (zoals attribute errors waarbij een object niet over de juiste eigenschappen beschikt).
De kosten van deze robotische chef zijn ook een factor. De auteurs berekenden dat het repareren van één notebook gemiddeld ongeveer $0,65 kost met het krachtige model, wat zij als goedkoop genoeg beschouwen voor grootschalig gebruik. Ze merkten echter ook op dat het open-source model veel goedkoper was (ongeveer $0,0074 per notebook), maar minder trouw bleef aan het origineel.
Uiteindelijk suggereert het paper dat, hoewel we het verleden niet perfect kunnen recreëren, we slimme AI-agents kunnen gebruiken om oude code te moderniseren en waardevol wetenschappelijk werk te redden. Het is geen perfecte oplossing voor elke enkele kapotte notebook, maar het biedt een "best-effort"-manier om een aanzienlijk deel van de machine learning-geschiedenis te redden die anders verloren zou gaan aan de tijd. De auteurs concluderen dat deze aanpak praktijkgebruikers helpt om oude pipelines te valideren en te hergebruiken terwijl de technologie zich blijft ontwikkelen, waardoor kapotte, stoffige recepten worden omgetoverd tot iets dat vandaag de dag gekookt kan worden in onze keuken.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.