ML-checklista För Fullständighet

Innehållsförteckning:

ML-checklista För Fullständighet
ML-checklista För Fullständighet

Video: ML-checklista För Fullständighet

Video: ML-checklista För Fullständighet
Video: КОГО КУПИТЬ ЗА 32К / МЕТА октября MOBILE LEGENDS / КОГО КУПИТЬ В MOBILE LEGENDS ЗА 32К 2024, November
Anonim

I syfte att öka reproducerbarheten och ge andra möjlighet att lättare bygga på publicerat arbete presenterar vi en checklista för fullständighet i ML-koden. ML-kontrollens fullständiga checklista utvärderar kodlagret baserat på skript och artefakter som finns i den.

ML-kodens fullständighetschecklista
ML-kodens fullständighetschecklista

Introduktion

Förra året släppte Joel Pino en checklista för reproducerbarhet för att underlätta reproducerbar forskning som presenterades vid större OA-konferenser (NeurIPS, ICML, …). De flesta av objekten på checklistan fokuserar på papperets komponenter. En post i denna checklista är "ge en länk till källkoden", men förutom det har få rekommendationer gjorts.

Bästa praxis har sammanfattats i ML-kodens fullständiga checklista, som nu är en del av den officiella NeurIPS 2020-inlämningsprocessen och kommer att vara tillgänglig för användning av granskare som de anser lämpligt.

ML-checklista för fullständighet

Checklistan för fullständiga M-koder kontrollerar kodlagret för:

  1. Beroenden - Har förvaret beroendinformation eller instruktioner om hur man ställer in miljön?
  2. Träningsscenarier - Innehåller förvaret ett sätt att träna / passa de modeller som beskrivs i dokumentet?
  3. Utvärderingsscenarier - Innehåller förvaret ett skript för att beräkna prestanda för de utbildade modellerna eller för att köra experiment på modeller?
  4. Förtränade modeller - Ger förvaret fri tillgång till förtränade modellvikter?
  5. Resultat - innehåller förvaret en tabell / graf över huvudresultaten och ett skript för att återge dessa resultat?

Varje arkiv kan ta emot från 0 (har ingen) till 5 (har alla) kryss. Mer information om kriterierna för varje artikel finns i Github-förvaret.

Vad är beviset för att checklistaposter bidrar till mer användbara förvar?

Gemenskapen använder i allmänhet GitHub-stjärnor som en proxy för förvarets användbarhet. Därför förväntas repor med högre poäng i ML-checklistan också ha fler GitHub-stjärnor. För att testa denna hypotes fanns 884 GitHub-repor som lämnades in som officiella implementeringar i NeurIPS 2019-dokumenten. En 25% delmängd av dessa 884 repor valdes slumpmässigt och kontrollerades manuellt i ML-fullständighetskontrollistan. De grupperade detta exempel på NeurIPS 2019 GitHub-repor efter antalet fästingar de har i checklistan för ML-fullständighet och kartlagde GitHub-medianstjärnorna i varje grupp. Resultatet är nedan:

Bild
Bild

NeurIPS 2019-repor med 0 kryssrutor hade en median på 1,5 stjärnor på GitHub. Däremot hade repor med 5 kryssrutor en median på 196,5 GitHub-stjärnor. Endast 9% av reporna hade 5 fästingar, och de flesta reporna (70%) hade 3 fästingar eller mindre. Wilcoxon rank sum-test utfördes och fann att antalet stjärnor i 5-fästklassen är signifikant (p.värde <1e-4) högre än i alla andra klasser utom 5 kontra 4 (där p.värde är gränsen). vid 0,015). Du kan se data och koden för denna siffra i Github-förvaret.

För att testa om denna relation sträcker sig bredare skapades ett skript för att automatisera beräkningen av en checklista från README-förvaret och tillhörande kod. Vi analyserade sedan hela uppsättningen 884 NeurIPS 2019-förvar, liksom den bredare uppsättningen 8926 kodförvar för alla ML-artiklar som publicerades 2019. I båda fallen uppnådde specialisterna ett kvalitativt identiskt resultat med medianstjärnor som ökade monotont från fästingar på ett statistiskt signifikant sätt (p.värde <1e-4). Slutligen, med hjälp av robust linjär regression, fann vi att förutbildade modeller och resultat hade störst positiv inverkan på GitHub-stjärnor.

Detta anses vara användbart bevis av analytikerna som uppmuntrar forskare att inkludera alla komponenter som krävs av ML-fullständighetskontrollistan kommer att leda till mer användbara förvar och att poängen i checklistan indikerar bättre kvalitet.

För närvarande hävdar experter inte att de föreslagna fem checklistan är den enda eller till och med den viktigaste faktorn i förvarets popularitet. Andra faktorer kan påverka populariteten, till exempel: vetenskaplig bidragsstorlek, marknadsföring (t.ex. blogginlägg och Twitter-inlägg), dokumentation (omfattande READMEs, tutorials och API-dokumentation), kodkvalitet och tidigare arbete.

Några exempel på NeurIPS 2019-förvar med 5 kryssrutor:

Experter inser att även om de har försökt göra checklistan så allmän som möjligt, kanske den inte är tillämplig på alla typer av dokument, till exempel teoretiska eller uppsättningar av dokument. Men även om huvudsyftet med artikeln är att representera en dataset kan den fortfarande dra nytta av lanseringen av basmodeller, inklusive träningsscenarier, utvärderingsscenarier och resultat.

Börja använda

För att göra det lättare för granskare och användare att förstå vad som finns i förvaret och för experter att utvärdera det korrekt, tillhandahålls en samling bästa metoder för att skriva README.md-filer, definiera beroenden och släppa förutbildade modeller, datamängder och resultat. Det rekommenderas att du tydligt definierar dessa 5 element i ditt förråd och länkar dem till externa resurser som dokument och leaderboards för att ge dina användare mer sammanhang och tydlighet. Det här är de officiella riktlinjerna för att skicka en kod till NeurIPS 2020.

Rekommenderad: