Tijdens het leren , proberen de meeste data wetenschappers en enthousiastelingen om te gaan met beroemde datasets zoals MNIST , ImageNet , …. die volledig , schoon en goed geformatteerd zijn . Echter , echte wereld problemen en datasets zijn helaas ver van deze academische utopie . Met andere woorden , ze zijn niet perfect helemaal , ze bevatten ruis , ze bevatten veel ontbrekende gegevens en soms zijn ze ook niet goed gestructureerd of geformatteerd .
In deze post , gaan we praten over een van deze vervelende problemen die vaak opduikt , en zonder verdere omhaal zoals vermeld in de titel , zullen we de “ontbrekende gegevens” probleem aan te pakken vanuit een breed en statistisch perspectief
Voreerst , wat bedoelen we concreet met “ontbrekende gegevens” ?
Missende gegevens betekent dat een of meer variabelen ( kenmerken ) waarden ontbreken over het algemeen gecodeerd door -999 , nan , null . . het komt vaak voor bij het verzamelen van de gegevens op een verkeerde manier, een gebrek aan gegevens ( Ex : gebruikers rating ) , of fouten bij het invoeren van de gegevens ( typefouten ) , en dit kan leiden tot drastische bevindingen en conclusies die een negatieve invloed kunnen hebben op de beslissingen !
De volgende figuur illustreert een treffend voorbeeld van “aanbevelingssystemen” waarbij het probleem van “ontbrekende gegevens” zich vaak voordoet omdat een deel van onze gegevens afhangt van de feedback van gebruikers .
het veroorzaakt ook veel strijd voor onderzoekers bij het analyseren en interpreteren van de uitkomsten van hun onderzoek om conclusies te trekken.
Er zijn drie soorten ontbrekende gegevens:
1) Missing Completely and Random – (MCAR).
2) Missing at Random – (MAR).
3) Missing Not at Random – (MNAR).
Type I: Volledig willekeurig ontbrekend (MCAR)
Er is geen verband tussen het al dan niet ontbreken van een gegevenspunt en de waarden in de gegevensverzameling (ontbrekend of waargenomen) De ontbrekende gegevens zijn gewoon een willekeurige deelverzameling van de gegevens . De missingness heeft niets te maken met een andere variabele . Tussen haakjes , gegevens zijn zelden MCAR.
het volgende voorbeeld zal dit soort probleem uitbeelden :
Het is betrekkelijk eenvoudig om de veronderstelling te controleren dat in ons voorbeeld gegevens volledig willekeurig ontbreken. Als je een reden voor ontbrekende gegevens kunt voorspellen (bijv, met behulp van gezond verstand, regressie of een andere methode) op basis van de volledige variabele Leeftijd of de ontbrekende variabele IQ-score , dan zijn de gegevens niet MCAR !
TLDR : niet beïnvloed door noch de geobserveerde noch de ontbrekende gegevens => Completely At Random
Type II: Missing at Random (MAR)
De ontbrekende gegevens worden hier alleen beïnvloed door de volledige (geobserveerde ) variabelen en niet door de kenmerken van de ontbrekende gegevens zelf. Met andere woorden , voor een gegevenspunt , te ontbreken is niet gerelateerd aan de ontbrekende gegevens, maar het is gerelateerd aan enkele van ( of alle ) de waargenomen gegevens , het volgende voorbeeld zal de situatie weergeven en het meer duidelijk maken :
We kunnen gemakkelijk opmerken dat IQ score ontbreekt voor jongeren ( leeftijd < 44 yo ) , en dus de ontbrekende gegevens afhankelijk zijn van de waargenomen gegevens , maar er is geen afhankelijkheid met de waarden van de ontbrekende kolom zelf .
TLDR : niet veroorzaakt door de ontbrekende gegevens zelf maar beïnvloed door de waargenomen gegevens => At Random
Type III: Missing Not at Random (MNAR)Het is noch Type I noch Type II , en de gegevens zullen ontbreken op basis van de ontbrekende kolom zelf , bijvoorbeeld het volgende voorbeeld wijst op het feit dat gegevens ontbreken over IQ score met alleen de mensen met een lage score .
zoals u kunt zien, is het onmogelijk om MNAR-gevallen op te sporen zonder de ontbrekende waarden te kennen!
TLDR : veroorzaakt door de ontbrekende gegevens zelf => Not At Random
hier volgt een niet-uitputtende lijst over het omgaan met ontbrekende gegevens :
Methode 1: Verwijderen
het valt onder twee verschillende technieken :
- Listwise Deletion : Bij deze methode wordt een record in zijn geheel van de analyse uitgesloten als een enkele waarde ontbreekt, en daardoor hebben we dezelfde N (aantal records) voor alle analyses.
- Pairwise Deletion : tijdens onze analyse het aantal records in aanmerking genomen “N” zal variëren afhankelijk van de bestudeerde variabele (kolom) , en bijvoorbeeld kunnen we berekenen het gemiddelde voor 2 kenmerken (Complete VS ontbrekende) en terwijl het delen door het aantal monsters , we uiteindelijk delen door verschillende N , een is het totale aantal rijen en de andere is het totale aantal op volledige waarden op de ontbrekende kenmerk .
Methode 2: Single Imputation Methoden
- Single value imputation : het vervangen van de ontbrekende waarde door een enkele waarde met behulp van een strategie, zoals : Gemiddelde , Mediaan , Meest voorkomend , Gemiddelde persoon , … van het overeenkomstige kenmerk .
- Gelijkenis : zoeken van de rij(en) die het dichtst ( top-N dichter ) bij de rij ligt die onze ontbrekende waarde bevat , en vastleggen van een strategie onder hen om een waarde toe te kennen aan onze ontbrekende waarde .
- Regressie-imputatie : In enkelvoudige regressie-imputatie wordt de geïmputeerde waarde voorspeld uit een regressievergelijking , we gaan ervan uit dat de ontbrekende waarden zich in een regressielijn met een niet-nul helling met een van de volledige kenmerken ( voorspellers )
Methode 3: Meervoudige Imputatiemethoden
- Expectation-Maximization Algorithm : Een algoritme dat kan worden gebruikt voor zowel ontbrekende gegevens imputatie en voor machine learning clustering taak (rekening houdend met het doel als een ontbrekend kenmerk) , is gebaseerd op twee stappen :
– Eerste: Verwachting van ontbrekende waarde
– Tweede: Het maximaliseren van de waarschijnlijkheid
Ik sterk aanbevelen Andrew NG Stanford Notes om het te begrijpen heel goed, het is niet een moeilijk algoritme, wees niet bang de formules! http://cs229.stanford.edu/notes/cs229-notes8.pdf
- MI Methoden : Het is een aantrekkelijke methode om ontbrekende gegevens in multivariate analyse te verwerken. Het idee van meervoudige imputatie voor ontbrekende gegevens werd voor het eerst voorgesteld door Rubin , en bestaat uit het middelen van de uitkomsten over meerdere geïmputeerde datasets om hiermee rekening te houden. Alle methoden voor meervoudige imputatie volgen drie stappen :
- Imputatie – Net als bij enkelvoudige imputatie worden ontbrekende waarden geïmputeerd. De geïmputeerde waarden worden echter m keer uit een verdeling getrokken in plaats van slechts één keer. Aan het eind van deze stap moeten er m volledige datasets zijn.
- Analyse – Elk van de m datasets wordt geanalyseerd. Aan het eind van deze stap moeten er m analyses zijn.
- Pooling – De m resultaten worden geconsolideerd in één resultaat door het gemiddelde, de variantie en het betrouwbaarheidsinterval van de betreffende variabele te berekenen.
Dank voor je tijd en aandacht , Blijf leren !
als je me op Linkedin wilt bereiken zou ik je zeer dankbaar zijn