Gå till huvudinnehåll Gå till ytterligare innehåll

Dataläckage

Dataläckage innebär att de data som används för att träna en algoritm för maskininlärning innehåller den information som du försöker förutsäga. Detta kan leda till att modellen presterar bättre under träningen än den skulle göra i verkligheten, vilket ger en falsk bild av hur bra modellen presterar. Lär dig hur du identifierar och förhindrar dataläckage för att få tillförlitliga prognoser.

Det finns två former av dataläckage:

  • När en eller flera funktioner i träningsuppsättningen kan användas för att ta fram den målvariabel som du försöker förutsäga.

  • När en eller flera funktioner i träningsuppsättningen innehåller information som inte skulle vara känd vid tidpunkten för prognosen.

I följande tabell är kolumnen Steg en duplikatkolumn av kolumnen Steg (binärt) som vi vill förutsäga. Genom att inkludera Steg i träningsdatauppsättningen skulle vi ge svaret på det förväntade resultatet, vilket skulle leda till en hög poäng för vår modell.

Tabell med den "läckande kolumnen" Steg som innehåller information om målkolumnen Steg (binärt)

Tabell med exempeldata.

Identifiering av dataläckage

För att identifiera dataläckage kan du fundera på frågor som "Kommer du att ha samma information för posterna vid den tidpunkt då du vill göra en prognos?" eller "Kommer posten att vara densamma om 30 dagar?". Kom ihåg att alla data i träningsdatauppsättningen måste vara relevanta för tidsbegränsningen i din affärsfråga.

När du har tränat en modell kan du leta efter följande ledtrådar i modellens mätvärden.

  • Höga poäng: Är poängen verkligen höga? Är till exempel F1-poängen över 85?

  • Funktionernas vikt: Är en funktion mycket viktigare än allt annat?

  • Poäng för undantaganden: Är poängen för undantaganden mycket lägre än poängen för korsvalidering?

Tabellen visar exempel på vanliga funktioner som kan orsaka dataläckage.

Affärsrelaterat användningsområde Mål

Potentiellt läckande funktioner

Kommer en försäljningsmöjlighet att avslutas?

Stäng (ja eller nej)

Steg, slutdatum, fakturauppgifter, utbetalda provisioner

Förutsäg ett framtida transaktionsbelopp

Beloppet för nästa transaktion

Skatter, beställningsuppgifter

Kommer ett ämne att omvandlas till en möjlighet?

Konvertera (ja eller nej)

Uppgifter om möjligheter, omvandlingsdatum

Kommer en kund att förloras?

Förlust (ja eller nej)

Orsak till förlust, datum för förlust, statisk kundtid, kundtemperatur

Kommer en anställd att säga upp sig frivilligt?

Uppsägning (ja eller nej)

Uppgifter om avgångsintervju, uppsägningsdatum, information om avskedsansökan

Förhindra dataläckage

Det bästa sättet att förhindra dataläckage är att använda det strukturerade ramverket för att få fram en bra affärsfråga och en bra datauppsättning. Definiera frågor för maskininlärning

Anteckning om tipsOm du har identifierat en läckande kolumn som inte bör användas vid modellträningen kan du ändå behålla den i datauppsättningen. Du kan helt enkelt utesluta denna funktion från träningsdata i ditt experiment med maskininlärning.
RELATERAD INFORMATION:

Mer information

Var den här sidan till hjälp för dig?

Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!