zisky:
- Schopnost rozpoznat chybějící typy dat (MCAR/MAR/MNAR), odlehlé hodnoty a chyby v kódování a používat AI se správnými daty k vytvoření kódu pro čištění a diagnostiky
- Schopnost vidět, jak každý krok čištění (smazání, přiřazení, transformace) navržený umělou inteligencí ovlivní výsledek analýzy a vytvořit vratný a zdokumentovaný pracovní postup
- Udržování toho, že rozhodnutí o vyčištění jsou založena na znalosti procesu, který generuje data, a že umělá inteligence je asistent pod dohledem, nikoli slepý automat
Každý zkušený analytik zná jednu pravdu: většinu času empirického projektu není modelování, ale čištění dat (práce spočívající v opravě chyb, opomenutí a nesrovnalostí v datech a jejich přípravě na analýzu). Přibližně 70–80 % času jde na pochopení, čištění a transformaci dat; na vlastní analýzu zbývá pouze 20-30 %. V této jednotce krok za krokem uvidíme, jak umělá inteligence (AI) tuto těžkou zátěž ulehčuje, ale která rozhodnutí by stále měla zůstat na vás a proč.
Uveďme nejprve dvě základní fakta. Za prvé, rozhodnutí o čištění jsou založena na vašich znalostech procesu, který vytváří data: pouze vy víte, proč nějaká hodnota chybí, proč je číslo příliš velké. AI nevidí data, nezná kontext; Píše kód, nerozhoduje. Za druhé, každý krok čištění může změnit výsledek analýzy. Odstranění odlehlé hodnoty může převrátit koeficient; Doplnění chybějícího střední hodnotou může uměle snížit rozptyl. Čištění by tedy mělo být vratné a zdokumentované: nikdy se nedotýkejte nezpracovaných dat, provádějte každý krok v kódu, zaznamenejte dopad každého kroku.
Postup čištění krok za krokem
1. Znát data. Nejprve se podívejte na strukturu: počet řádků (pozorování) a sloupců (proměnných), typ každé proměnné (číselná, kategoriální, datum), souhrnné statistiky, počet chybějících. Můžete požádat AI o tento kód „datového profilu“; Ale přečtete si výstup a položíte otázky typu „proč tato proměnná přišla jako text?“
2. Pochopit a klasifikovat chybějící údaje. Chybějící údaje jsou rozděleny do tří typů. MCAR (Missing Completely At Random): chybějící není způsobeno ničím, například náhodně selhal senzor. MAR (Missing At Random): chybějící závisí na dalších pozorovaných proměnných, například starší lidé nechávají otázku častěji prázdnou, ale věk znáte. MNAR (Missing Not At Random): chybějící závisí na samotné nepozorované hodnotě, například lidé s vysokými příjmy neuvádějí své příjmy. Toto rozlišení je zásadní, protože určuje metodu řešení a AI to nemůže rozhodnout za vás.
3. Vypořádejte se s nedostatkem. Možnosti: seznamové vymazání, imputace střední/střední hodnoty, vícenásobná imputace založená na modelu. Vymazání v MCAR je relativně bezpečné, ale snižuje velikost vzorku. Vícenásobné přiřazení je vhodnější v MAR. Žádná jednoduchá metoda nezaručuje nestrannost v MNAR; Mechanismus nedostatku by měl být modelován nebo by měla být provedena alespoň analýza citlivosti. Naplňování střední hodnoty je snadné, ale nebezpečné: snižuje rozptyl, oslabuje vztahy a skrývá nejistotu.
4. Prozkoumejte odlehlé hodnoty. Odlehlá hodnota je pozorování, které stojí velmi daleko od ostatních. Oddělte dvě otázky: Jedná se o chybu (v datovém vstupu byl napsán věk 999) nebo jde o skutečnou, ale mimořádnou hodnotu (příjem miliardáře)? opravit chyby; Neodstraňujte skutečné odlehlé hodnoty, protože představují data. Odstranění odlehlé hodnoty „protože vás obtěžuje“ zkresluje data směrem k výsledku.
5. Kódování a konzistence. Standardizujte kategorie ("Muž", "muž", "E" vše do jednoho kódu), uveďte data do jednoho formátu, jednotky do jedné stupnice, detekujte duplicitní řádky. Toto je nejméně riziková fáze, kde umělá inteligence pomáhá nejlépe.
6. Dokumentujte a zmrazte. Zaznamenejte každý krok s kódem a řádkem komentáře, udržujte nezpracovaná a vyčištěná data odděleně. Takže když se rozhodčí zeptá "proč byla tato pozorování vypuštěna?" máte připravenou odpověď.
Upozornění: Nerozhodujte se o čištění na základě výsledků. Smazání řádku s nápisem „Když smažete tento řádek, koeficient se stane významným“ je nejzákeřnější forma p-hackingu, kterou uvidíme v příštím díle.
Srovnávací tabulka: chybějící datové metody
Metoda
Kdy je to vhodné?
riziko
Role AI
Smazat řádek
MCAR, nízká chybovost
Vzorek se zmenší, zkreslení v MAR/MNAR
Zapíše kód; rozhoduješ ty
Střední/medián přiřazení
Rychlá předběžná analýza
Snižuje rozptyl, skrývá vztah
Je to snadné, ale nedoporučuje se to; by měl varovat
Vícenásobné přiřazení (MI)
MAR, důležité proměnné
Pokud není správně nainstalován, bude zavádějící
Doporučený kód a balíček (myši)
Modelování mechanismů
MNAR
Komplexní, náročný na předpoklady
Pouze koncept; je vyžadován odborník
Čtyři kopírovatelné výzvy
1. Profilování údajů:
Vaše role: asistent čištění dat. Data nesdílím, chci R kód. Mám data.frame s názvem 'digit'; proměnné: id, věk (číselný), příjem (číselný), vzdělání (kategoriální), region (kategoriální), datum (datum). Úkol: napište kód, který vytvoří typ, chybějící číslo a sazbu pro každou proměnnou, souhrnnou statistiku pro číselné proměnné a tabulku četností pro kategorické. Přidat řádek komentáře.
2. Diagnostika chybějících dat:
Napište kód, který prozkoumá chybějící vzor pro „číslicová“ data výše: - míru chybějících proměnných, - jednoduchou tabulku/graf ukazující vztah chybějících k jiným proměnným. Podívám se na výstup kódu a rozliším MCAR/MAR/MNAR; Vy pouze vyrábíte diagnostický nástroj, NErozhodujte o metodě přiřazení.
3. Kontrola odlehlých hodnot (nevymazáno):
Napište kód pro proměnnou 'income', která zkoumá odlehlé hodnoty BEZ SMAZÁNÍ: boxplot, hranice založené na IQR a tabulku se seznamem odlehlých pozorování + hodnoty. Uvidím, jestli jsou to chyby nebo skutečné. Přidat automatické mazání.
4. Standardizace kódování:
V proměnné 'vzdělání' jsou hodnoty zapsány smíšeně: "Primary school","primary school","PRIMARY","High school","high school","University","univ". Napište R kód, který je překóduje do konzistentních kategorií; Ukažte tabulku mapování jasně, abych mohl potvrdit každou konverzi. Nastavte hodnotu, kterou neznáte, na "NEZNÁMÝ".
Slabá výzva / Silná výzva
Slabá výzva:
Vyčistěte data, doplňte mezery, zlikvidujte odlehlé hodnoty.
Tento požadavek je nebezpečný: dává slepé autoritě AI. Jaký typ chybí, jaký druh náplně, jaká rozporuplná pravda - nic z toho není jasné. Výsledkem může být tajně zkreslený soubor dat.
Výkonná výzva:
Vaše role: asistent úklidu, vy nejste ten, kdo rozhoduje. Postupujte krok za krokem a napište kód, který bude hlásit dopad KAŽDÉHO kroku: 1) zobrazte chybějící vzor (NEODSTRAŇUJTE/NEPLŇUJTE), 2) vypište odlehlé kandidáty (NEODSTRAŇUJTE), 3) opravte nekonzistence kategorií s mapovací tabulkou. Po každém kroku vytisknout počet řádků a souhrnnou statistiku, abych viděl a potvrdil změnu. Automatické přiřazení/vymazání vložení.
Rozdíl je jasný: silná vůle umístí AI jako asistenta pod dohledem, který produkuje vratné a zdokumentované kroky.
tři mini pouzdra
Případ 1 – Past průměrného přiřazení. Údaje o příjmu jednoho analytika pro 5 000 lidí chyběly 18 %. Řekl AI, aby „vyplnila mezery“; AI je všechny zprůměrovala. Výsledek: rozptyl příjmů se snížil o 22 % a koeficient vztahu vzdělání a příjmu se ukázal být slabší, než byl. Správný způsob: nedostatek byl MAR (kvůli vzdělání), musel být vyplněn vícenásobným zadáním (myši). Poučení: způsob plnění závisí na mechanismu.
Případ 2 – Čištění odlehlých hodnot zvrátilo nález. V údajích o jedné firmě byly 3 velmi velké firmy (0,6 % z celkového pozorování). Ty byly odstraněny návrhem AI na „čištění“; Koeficient úspor z rozsahu se změnil z kladných na záporné. Tyto 3 společnosti však byly skutečnou a důležitou součástí odvětví. Správným způsobem bylo místo mazání hlásit s úplným a robustním odhadem. Ponaučení: skutečné odlehlé hodnoty jsou data, nikoli šum.
Případ 3 – Tichá chyba kódování. Na jednom panelu se proměnná data objevila ve dvou různých formátech („2020-03-01“ a „01/03/2020“). Když je kombinační kód vytvořený AI spletl s různými hodnotami, 1 400 pozorování se neshodovalo a míry růstu se staly směšnými. Nevadilo by, kdyby analytik nezkontroloval počet řádků. Lekce: Počítání pozorování a kontroly zdravého rozumu po každém kroku jsou nutností.
Časté chyby
- Slepě vyplnit mezeru průměrem. Snižuje rozptyl, skrývá nejistotu a vytváří zkreslení v MAR/MNAR. Nejprve klasifikujte mechanismus.
- Smazání odlehlé hodnoty „protože to vadí“. Skutečné odlehlé hodnoty představují data; mazání ohýbá výsledek. Opravte to, co je špatné, ponechte to, co je skutečné.
- Klepnutím na nezpracovaná data. Nikdy neupravujte nezpracovaná data; Proveďte veškeré čištění s kódem v samostatné kopii, aby bylo možné se k němu vrátit.
- Neměření dopadu kroků. Pokud se po každém kroku nekontroluje počet řádků a souhrnné statistiky, budou se hromadit tiché chyby.
- Výsledkem je úklid. Logika "Když přidáte tento řádek, výsledek se zlepší" je p-hacking; Čištění by mělo být naplánováno před a nezávisle na výsledku analýzy.
Tip: Udržujte tabulku „před/po“, která vedle sebe před a po vyčištění uvádí stejné základní statistiky (průměr, medián, počet pozorování, několik korelací). Nečekaný skok je nejlepší předzvěstí skryté chyby.
V souhrnu
Čištění dat je časově nejnáročnější a nejvíce rozhodnutí vyžadující fází empirické práce. Umělá inteligence je v tomto mocný generátor kódu, ale nedokáže to vyvolat: klasifikujete chybějící datový typ (MCAR/MAR/MNAR), určíte, zda je odlehlá hodnota chyba nebo skutečná, zachováte každý krok vratný a zdokumentovaný. Namísto udělování slepé „jasné“ autority AI zaveďte postupný pracovní postup, jehož dopad se měří a ověřuje. Kontrola počtu pozorování a souhrnných statistik po každém kroku je nejlepším lékem na tiché chyby.
Aplikační úkol
Vyberte alespoň dvě proměnné, které obsahují chybějící a odlehlé hodnoty v sadě dat (vaše vlastní data nebo vzorová sada). Vyžádejte si diagnostický kód od AI prostřednictvím výzvy „krok za krokem, neodstraňujte/nevyplňujte“ výše a spusťte jej. Klasifikujte nedostatek jako MCAR/MAR/MNAR a své zdůvodnění napište do jedné věty. Prozkoumejte protichůdné kandidáty jednoho po druhém a rozhodněte, který z nich je omyl a který je skutečný. Nakonec vytvořte tabulku „před-po“ před/po čištění a nahlaste, pokud se vyskytnou nějaké neočekávané změny.
kontrolní seznam
- [ ] Vyčistil jsem nezpracovaná data v samostatné kopii, aniž bych je změnil.
- [ ] Nedostatek jsem klasifikoval jako MCAR/MAR/MNAR a podle toho zvolil metodu.
- [ ] Zkoumal jsem odlehlé hodnoty jednu po druhé, zda to byly chyby nebo skutečné; Slepě jsem to nesmazal.
- [ ] Po každém kroku čištění jsem zkontroloval počet pozorování a souhrnné statistiky.
- [ ] Všechny kroky jsem zdokumentoval kódem a řádkem komentáře; reverzibilní.
- [ ] Čištění jsem založil na znalosti procesu, který produkuje data, nikoli na výsledku analýzy.