Manglende data, deres typer og statistiske metoder til behandling af dem

8. nov, 2019 – 6 min read

Ved læring forsøger de fleste datavidenskabsfolk og entusiaster at håndtere berømte datasæt som MNIST , ImageNet , … som er komplette , rene og velformaterede . Imidlertid er virkelige problemer og datasæt i den virkelige verden desværre langt fra denne akademiske utopi . Med andre ord er de slet ikke perfekte, de indeholder støj, de indeholder en masse manglende data, og nogle gange er de heller ikke velstrukturerede eller formaterede.

I dette indlæg vil vi tale om et af disse kedelige problemer, som ofte dukker op , og uden videre vil vi som nævnt i titlen tage fat på problemet med “manglende data” fra et bredt og statistisk perspektiv

Først af alt , hvad mener vi konkret med “manglende data”?

Manglende data betyder, at en eller flere variabler ( funktioner ) værdier mangler generelt kodet med -999 , nan , null . . det sker ofte ved forkert indsamling af data, manglende data ( f.eks. brugernes vurdering ) eller fejl ved indtastning af data ( fejlskrivning ), og det kan føre til drastiske resultater og konklusioner, som kan påvirke beslutningerne negativt!

Den følgende figur illustrerer det slående eksempel på “anbefalingssystemer”, hvor problemet med “manglende data” forekommer hyppigt, fordi en del af vores data afhænger af brugernes feedback .

Kreditter : X . Amatrian

det giver også forskerne mange problemer, mens de analyserer og fortolker resultaterne af deres forskning for at drage konklusioner .

Der er tre typer manglende data:
1) Manglende fuldstændigt og tilfældigt – (MCAR).
2) Manglende tilfældigt – (MAR).
3) Manglende ikke tilfældigt – (MNAR).

Type I: Der er ingen sammenhæng mellem, om et datapunkt mangler, og eventuelle værdier i datasættet (manglende eller observerede) .De manglende data er blot en tilfældig delmængde af dataene . Det manglende har intet at gøre med nogen anden variabel . I øvrigt er data sjældent MCAR.

det følgende eksempel vil skildre denne form for problem :

Kreditter : Iris Eekhout

Det er relativt nemt at kontrollere antagelsen om, at data i vores eksempel mangler helt tilfældigt. Hvis man kan forudsige en hvilken som helst årsag til manglende data (f.eks, ved hjælp af sund fornuft, regression eller en anden metode), uanset om det er baseret på den fuldstændige variabel Alder eller den manglende variabel IQ-score , så er dataene ikke MCAR !

TLDR : ikke påvirket af hverken de observerede eller de manglende data => Completely At Random

Type II: Missing at Random (MAR)
De manglende data er her kun påvirket af de fuldstændige (observerede ) variabler og ikke af selve de manglende datas egenskaber. Med andre ord , for et datapunkt , at være manglende er ikke relateret til de manglende data, men det er relateret til nogle af ( eller alle ) de observerede data , følgende eksempel vil skildre situationen og gøre det mere klart :

Credits : Iris Eekhout

Vi kunne let bemærke, at IQ score mangler for unge ( alder < 44 yo ) , og dermed afhænger de manglende data af de observerede data , men der er ingen afhængighed med værdierne af den manglende kolonne selv .

TLDR : ikke forårsaget af de manglende data i sig selv, men påvirket af de observerede data => At Random

Type III: Missing Not at Random (MNAR)
Det er hverken type I eller type II , og dataene vil mangle på baggrund af selve den manglende kolonne , for eksempel viser følgende eksempel, at der mangler data om IQ score med kun de personer, der har en lav score.

Kreditter : Iris Eekhout

Som du kan se , er det umuligt at opdage MNAR tilfælde uden at kende de manglende værdier !

TLDR : forårsaget af de manglende data selv => Not At Random

Her er en ikke-udtømmende liste over håndtering af problemer med manglende data :

Metode 1: Sletning

Det falder ind under to forskellige teknikker :

  • Listwise Deletion : Ved denne metode udelukkes en hel post fra analysen, hvis der mangler en enkelt værdi, og derfor har vi det samme N (antal poster) for alle analyser.
  • Parvis sletning: I løbet af vores analyse vil antallet af poster, der tages i betragtning, betegnet “N”, variere alt efter den undersøgte variabel (kolonne), og vi kan f.eks. beregne gennemsnittet for to funktioner (komplet og manglende), og når vi dividerer med antallet af stikprøver, ender vi med at dividere med forskellige N , hvoraf det ene er det samlede antal rækker og det andet er det samlede antal komplette værdier for den manglende funktion.

Metode 2: Single Imputation Methods

  • Single value imputation : erstatter den manglende værdi med en enkelt værdi ved hjælp af en strategi som f.eks: Middelværdi , Median , Hyppigst forekommende , Middelperson , … for den tilsvarende egenskab.
  • Lighed : Forsøg på at finde de(n) nærmeste ( top-N tættere ) række(r) til den række, der indeholder vores manglende værdi , og fastlægge en strategi blandt dem til at tildele en værdi til vores manglende værdi .
  • Regressionsimputation : I enkelt regressionsimputation forudsiges den imputerede værdi ud fra en regressionsligning , vi antager, at de manglende værdier ligger i en regressionslinje med en ikke-nul hældning med et af de komplette træk ( prædiktorer )

Metode 3: Metoder til multipel imputation

  • Expectation-Maximization Algorithm : En algoritme, der kan bruges både til imputering af manglende data og til machine learning clustering opgave (idet målet betragtes som en manglende funktion) , den er baseret på to trin :

– For det første : Forventning af manglende værdi
– For det andet : Maximering af sandsynligheden

Jeg anbefaler stærkt Andrew NG stanford notes for at forstå det meget godt , det er ikke en svær algoritme , frygt ikke dens formler ! http://cs229.stanford.edu/notes/cs229-notes8.pdf

  • MI Metoder : Det er en attraktiv metode til håndtering af manglende data i multivariate analyser. Ideen om multipel imputation for manglende data blev først foreslået af Rubin , den består i at beregne et gennemsnit af resultaterne på tværs af flere imputerede datasæt for at tage højde for dette. Alle metoder til multipel imputering følger tre trin :
  1. Imputering – I lighed med enkeltimputering imputeres manglende værdier. De imputerede værdier trækkes dog m gange fra en fordeling i stedet for kun én gang. Ved afslutningen af dette trin skal der være m færdige datasæt.
  2. Analyse – Hvert af de m datasæt analyseres. Ved afslutningen af dette trin skal der være m analyser.
  3. Pooling – De m resultater konsolideres til ét resultat ved at beregne middelværdien, variansen og konfidensintervallet for den pågældende variabel.

tak for din tid og opmærksomhed , Keep Learning !

hvis du vil nå mig på Linkedin vil jeg være meget taknemmelig

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.