zisky:
- Schopnosť rozpoznať chýbajúce typy údajov (MCAR/MAR/MNAR), odľahlé hodnoty a chyby kódovania a použiť AI so správnymi údajmi na vytvorenie kódu čistenia a diagnostiky
- Schopnosť vidieť, ako každý krok čistenia (vymazanie, priradenie, transformácia) navrhnutý umelou inteligenciou ovplyvní výsledok analýzy a vytvorí reverzibilný a zdokumentovaný pracovný postup
- Udržiavanie toho, že rozhodnutia o čistení sú založené na znalosti procesu, ktorý generuje údaje, a že umelá inteligencia je asistent pod dohľadom, nie slepý automat
Každý skúsený analytik pozná jednu pravdu: väčšinu času empirického projektu nie je modelovanie, ale čistenie údajov (práca na oprave chýb, vynechaní a nezrovnalostí v údajoch a ich príprava na analýzu). Ako hrubé pravidlo platí, že asi 70 – 80 % času ide na pochopenie, čistenie a transformáciu údajov; len 20-30% zostáva na skutočnú analýzu. V tejto jednotke krok za krokom uvidíme, ako umelá inteligencia (AI) odľahčuje túto veľkú záťaž, ale ktoré rozhodnutia by mali zostať na vás a prečo.
Uveďme najprv dva základné fakty. Po prvé, rozhodnutia o čistení sú založené na vašich znalostiach procesu, ktorý vytvára údaje: iba vy viete, prečo hodnota chýba, prečo je číslo príliš veľké. AI nevidí údaje, nepozná kontext; Píše kód, nerozhoduje. Po druhé, každý krok čistenia môže zmeniť výsledok analýzy. Vymazanie odľahlej hodnoty môže prevrátiť koeficient; Doplnenie chýbajúceho priemerom môže umelo znížiť rozptyl. Čistenie by preto malo byť reverzibilné a zdokumentované: nikdy sa nedotýkajte nespracovaných údajov, vykonajte každý krok v kóde, zaznamenajte vplyv každého kroku.
Postup čistenia krok za krokom
1. Poznajte údaje. Najprv si pozrite štruktúru: počet riadkov (pozorovaní) a stĺpcov (premenné), typ jednotlivých premenných (číselné, kategorické, dátumové), súhrnné štatistiky, počet chýbajúcich. Môžete požiadať AI o tento kód „údajového profilu“; Ale čítate výstup a kladiete otázky typu „prečo sa táto premenná objavila ako text?“
2. Pochopte a klasifikujte chýbajúce údaje. Chýbajúce údaje sú rozdelené do troch typov. MCAR (Missing Completely At Random): chýbanie nie je spôsobené ničím, napríklad náhodne zlyhal snímač. MAR (Missing At Random): chýbanie závisí od iných pozorovaných premenných, napríklad starší ľudia nechávajú otázku prázdnu častejšie, ale vek poznáte. MNAR (Missing Not At Random): chýbanie závisí od samotnej nepozorovanej hodnoty, napríklad ľudia s vysokými príjmami svoj príjem neuvádzajú. Tento rozdiel je kritický, pretože určuje spôsob riešenia a AI to nemôže rozhodnúť za vás.
3. Vyrovnajte sa s nedostatkom. Možnosti: zoznamové vymazanie, imputácia priemeru/mediánu, viacnásobná imputácia založená na modeli. Vymazanie v MCAR je relatívne bezpečné, ale znižuje veľkosť vzorky. Viacnásobné priradenie je vhodnejšie v MAR. Žiadna jednoduchá metóda nezaručuje nestrannosť v MNAR; Mechanizmus nedostatku by sa mal namodelovať alebo by sa mala vykonať aspoň analýza citlivosti. Napĺňanie priemeru je ľahké, ale nebezpečné: znižuje rozptyl, oslabuje vzťahy a skrýva neistotu.
4. Preskúmajte odľahlé hodnoty. Odľahlá hodnota je pozorovanie, ktoré je veľmi ďaleko od ostatných. Oddeľte dve otázky: Ide o chybu (v zadávaní údajov bol napísaný vek 999) alebo ide o skutočnú, ale odľahlú hodnotu (príjem miliardára)? opraviť chyby; Neodstraňujte skutočné odľahlé hodnoty, pretože predstavujú údaje. Odstránenie odľahlej hodnoty „pretože vás obťažuje“ skresľuje údaje smerom k výsledku.
5. Kódovanie a konzistencia. Štandardizujte kategórie ("Muž", "muž", "E" všetko do jedného kódu), uveďte dátumy do jedného formátu, jednotky do jednej stupnice, zistite duplicitné riadky. Toto je najmenej riziková fáza, v ktorej AI pomáha najlepšie.
6. Zdokumentujte a zmrazte. Zaznamenajte každý krok s kódom a riadkom komentára, pričom nespracované a vyčistené údaje uchovávajte oddelene. Takže keď sa rozhodca spýta "prečo boli tieto pozorovania upustené?" odpoveď máš pripravenú.
Upozornenie: Nerozhodujte sa o čistení na základe výsledkov. Vymazanie riadku s nápisom „Keď vymažete tento riadok, koeficient sa stane významným“ je najzákernejšia forma p-hackingu, ktorú uvidíme v ďalšej časti.
Porovnávacia tabuľka: chýbajúce dátové metódy
Metóda
Kedy je to vhodné?
riziko
Úloha AI
Odstrániť riadok
MCAR, nízka chybovosť
Vzorka sa zmenšuje, odchýlka v MAR/MNAR
Napíše kód; rozhodnete sa
Priradenie priemeru/mediánu
Rýchla predbežná analýza
Znižuje rozptyl, skrýva vzťah
Je to jednoduché, ale neodporúča sa to; by mal varovať
Viacnásobné priradenie (MI)
MAR, dôležité premenné
Ak nie je nainštalovaný správne, bude to zavádzajúce
Odporúčaný kód a balík (myši)
Modelovanie mechanizmov
MNAR
Komplexné, náročné na predpoklady
len koncept; vyžaduje sa odborník
Štyri kopírovateľné výzvy
1. Profilovanie údajov:
Vaša úloha: asistent čistenia dát. Údaje nezdieľam, chcem kód R. Mám data.frame s názvom 'digit'; premenné: id, vek (číselný), príjem (číselný), vzdelanie (kategóriový), kraj (kategorický), dátum (dátum). Úloha: napíšte kód, ktorý vytvorí typ, chýbajúce číslo a sadzbu pre každú premennú, súhrnnú štatistiku pre číselné a tabuľku frekvencie pre kategorické. Pridať riadok komentára.
2. Diagnostika chýbajúcich údajov:
Napíšte kód, ktorý preskúma chýbajúci vzor pre „číslicové“ údaje uvedené vyššie: - miera chýbania každej premennej, - jednoduchá tabuľka/graf zobrazujúci vzťah chýbajúcich údajov k iným premenným. Pozriem sa na výstup kódu a urobím rozlíšenie MCAR/MAR/MNAR; Vy len vyrábate diagnostický nástroj, NErozhodujte o spôsobe priradenia.
3. Kontrola odľahlých hodnôt (nevypúšťa sa):
Napíšte kód pre premennú „príjem“, ktorá skúma odľahlé hodnoty BEZ VYMAZANIA: boxplot, hranice založené na IQR a tabuľku so zoznamom odľahlých pozorovaní + hodnôt. Uvidím, či sú to chyby alebo skutočné. Pridajte automatické mazanie.
4. Štandardizácia kódovania:
V premennej 'vzdelanie' sú hodnoty zapísané zmiešane: "Primary school","primary school","PRIMARY","High school","high school","University","univ". Napíšte R kód, ktorý ich prekóduje do konzistentných kategórií; Ukážte prehľadne tabuľku mapovania, aby som mohol potvrdiť každú konverziu. Hodnotu, ktorú nepoznáte, nastavte na „NEZNÁMY“.
Slabá výzva / Silná výzva
Slabá výzva:
Vyčistite údaje, vyplňte medzery, vyhoďte odľahlé hodnoty.
Táto požiadavka je nebezpečná: dáva slepú autoritu AI. Aký typ chýba, aký druh náplne, aká protichodná pravda - nič z toho nie je jasné. Výsledkom môže byť tajne skreslený súbor údajov.
Výkonná výzva:
Vaša úloha: pomocník pri upratovaní, vy nerozhodujete. Postupujte krok za krokom a napíšte kód, ktorý informuje o vplyve KAŽDÉHO kroku: 1) zobrazte chýbajúci vzor (NEODSTRAŇUJTE/VYPLŇUJTE), 2) uveďte zoznam odľahlých kandidátov (NEODSTRAŇUJTE), 3) opravte nezrovnalosti kategórií s mapovacou tabuľkou. Po každom kroku vytlačte počet riadkov a súhrnnú štatistiku, aby som mohol vidieť a potvrdiť zmenu. Automatické priradenie/vymazanie vloženie.
Rozdiel je jasný: silná vôľa stavia AI ako asistenta pod dohľadom, ktorý vytvára reverzibilné a zdokumentované kroky.
tri mini prípady
Prípad 1 – Pasca na priemerné priradenie. Údaje o príjmoch jedného analytika pre 5 000 ľudí chýbali 18 %. Povedal AI, aby „vyplnila medzery“; AI ich všetky spriemerovala. Výsledok: rozptyl príjmov sa znížil o 22 % a koeficient vzťahu vzdelanie – príjem sa ukázal byť slabší ako predtým. Správny spôsob: nedostatok bol MAR (vzhľadom na vzdelanie), bolo potrebné vyplniť viacnásobným zadaním (myši). Poučenie: spôsob plnenia závisí od mechanizmu.
Prípad 2 – Čistenie odľahlých hodnôt zvráti nález. V údajoch o jednej firme boli 3 veľmi veľké firmy (0,6 % z celkového pozorovania). Tieto boli vymazané návrhom AI na „čistenie“; Koeficient úspor z rozsahu sa zmenil z kladných na záporné. Tieto 3 spoločnosti však boli skutočnými a dôležitou súčasťou odvetvia. Správnym spôsobom bolo namiesto odstraňovania hlásenia s úplným aj robustným odhadom. Ponaučenie: skutočné odľahlé hodnoty sú dáta, nie šum.
Prípad 3 – Tichá chyba kódovania. Na jednom paneli sa premenná dátumu objavila v dvoch rôznych formátoch („2020-03-01“ a „01/03/2020“). Keď si ich kombinačný kód vytvorený AI pomýlil s rôznymi hodnotami, 1 400 pozorovaní sa nezhodovalo a miery rastu sa stali smiešnymi. Nevadilo by, keby analytik nekontroloval počet riadkov. Lekcia: Počty pozorovaní a kontroly zdravého rozumu po každom kroku sú nevyhnutnosťou.
Časté chyby
- Slepo vyplniť medzeru priemerom. Znižuje rozptyl, skrýva neistotu a vytvára skreslenie v MAR/MNAR. Najprv klasifikujte mechanizmus.
- Odstránenie odľahlej hodnoty „pretože to obťažuje“. Skutočné odľahlé hodnoty predstavujú údaje; mazanie je ohýbanie výsledku. Napravte, čo je zlé, ponechajte to, čo je skutočné.
- Načítavanie nespracovaných údajov. Nikdy neupravujte nespracované údaje; Vykonajte všetko čistenie pomocou kódu v samostatnej kópii, aby ste sa k nemu mohli vrátiť.
- Nemeranie vplyvu krokov. Ak sa po každom kroku nekontroluje počet riadkov a súhrnná štatistika, nahromadia sa tiché chyby.
- Výsledkom je čistenie. Logika „Keď pridáte tento riadok, výsledok sa zlepší“ je p-hacking; Čistenie by sa malo naplánovať pred a nezávisle od výsledku analýzy.
Tip: Uchovajte si tabuľku „pred/po“, ktorá uvádza rovnaké základné štatistiky (priemer, medián, počet pozorovaní, niekoľko korelácií) vedľa seba pred a po vyčistení. Nečakaný skok je najlepšou predzvesťou skrytej chyby.
V súhrne
Čistenie dát je časovo najnáročnejšia a najnáročnejšia fáza empirickej práce. Umelá inteligencia je v tomto výkonný generátor kódu, ale nedokáže zavolať: klasifikujete chýbajúci typ údajov (MCAR/MAR/MNAR), určíte, či je odľahlá hodnota chybou alebo skutočnou, každý krok ponecháte reverzibilný a zdokumentovaný. Namiesto udelenia slepej „jasnej“ autority AI vytvorte postupný pracovný postup, ktorého vplyv sa meria a overuje. Kontrola počtu pozorovaní a súhrnných štatistík po každom kroku je najlepším liekom na tiché chyby.
Aplikačná úloha
Vyberte aspoň dve premenné, ktoré obsahujú chýbajúce a odľahlé hodnoty v množine údajov (vaše vlastné údaje alebo vzorová množina). Vyžiadajte si diagnostický kód od AI prostredníctvom výzvy „krok za krokom, neodstraňujte/nevyplňujte“ vyššie a spustite ho. Klasifikujte nedostatok ako MCAR/MAR/MNAR a svoje zdôvodnenie napíšte jednou vetou. Preskúmajte protichodných kandidátov jedného po druhom a rozhodnite, ktorý z nich je omyl a ktorý je skutočný. Nakoniec vytvorte tabuľku „pred-po“ pred/po čistení a nahláste, ak sa vyskytnú nejaké neočakávané zmeny.
kontrolný zoznam
- [ ] Vyčistil som nespracované údaje v samostatnej kópii bez toho, aby som ich zmenil.
- [ ] Nedostatok som klasifikoval ako MCAR/MAR/MNAR a podľa toho som zvolil metódu.
- [ ] Skúmal som odľahlé hodnoty jednu po druhej, či ide o chyby alebo skutočné; Nezmazal som to naslepo.
- [ ] Po každom kroku čistenia som skontroloval počet pozorovaní a súhrnné štatistiky.
- [ ] Všetky kroky som zdokumentoval kódom a riadkom komentára; reverzibilné.
- [ ] Čistenie som založil na znalosti procesu, ktorý vytvára údaje, nie na výsledku analýzy.