zisky:
- Schopnosť rozpoznať rôzne zdroje údajov (databázu, API, súbor, web scraping) a úskalia každého z nich a správne pochopiť schému
- Schopnosť vykonávať opakovateľné vzorkovanie vyhodnotením, či vzorka predstavuje populáciu a výberové skreslenie
- Schopnosť eliminovať únik údajov vo fáze zberu a dodržiavať právne/etické hranice položením otázky „Budem ich mať v čase predpovede“ v každom stĺpci?
Každá analýza je taká dobrá, aká dobrá je kvalita údajov, ktoré zbierate. Aj ten najpokročilejší model na svete prinesie nespoľahlivé výsledky, ak bude pracovať s údajmi, ktoré sú zozbierané nesprávne, vzorkované neobjektívne alebo obsahujú informácie o budúcnosti. V informatike je tento princíp zhrnutý ako „garbage in, garbage out“ (garbage in, garbage out). V tejto časti sa budeme zaoberať fázou zberu údajov: pochopenie zdroja, vzorkovanie, kladenie otázok týkajúcich sa kvality a pozor na riziko úniku údajov od prvého dňa. Umelá inteligencia je v tejto fáze silným pomocníkom; Píše SQL dotaz, sumarizuje API dokument, pripravuje dátovú zmluvu. Ale je to človek, kto rozhoduje o tom, aké údaje zhromažďujete a či vás tieto údaje reprezentujú.
Zoznámenie sa so zdrojmi údajov
Údaje pochádzajú z rôznych miest a každý zdroj má svoje vlastné úskalia. Databáza (štruktúrované údaje uložené v tabuľkách, zvyčajne dopytované pomocou SQL) je najbežnejším zdrojom; Je spoľahlivý, ale je potrebné dobre pochopiť jeho schému. API (Application Programming Interface) poskytuje živé dáta, ale nesie so sebou riziko rýchlostných obmedzení a zmien formátu. Súbory (CSV, Excel, JSON) sú flexibilné, ale náchylné na nekonzistentnosť formátu. Sťahovanie webu je mocné, ale má právne a etické limity; Nie každé miesto sa dá zoškrabať.
Upozornenie: Pre zoškrabovanie webu a automatický zber údajov dodržujte podmienky používania stránky, súbor robots.txt a KVKK/GDPR. Neoprávnené zhromažďovanie údajov zakladá právnu zodpovednosť. V kontexte informačnej bezpečnosti používajte nástroje na zber údajov iba v systémoch, na ktoré máte oprávnenie, a na účely obrany/analýzy; Neoprávnený prístup alebo škrabanie je zakázané.
Pochopenie schémy: zoznámenie sa s údajmi
Pred zhromaždením množiny údajov musíte pochopiť jej schému (názvy stĺpcov, ich typy údajov, ich významy a ich vzájomné vzťahy). AI je tu veľmi užitočná pri vytváraní „dátového slovníka“ – tabuľky vysvetľujúcej, čo jednotlivé stĺpce znamenajú. Ale vysvetlenia AI sú predpovede; Potvrďte skutočný význam každého stĺpca s tímom, ktorý vytvoril údaje. Napríklad stĺpec s názvom "stav" môže obsahovať 0/1/2; Iba pôvodný tím vie, či sú „nevybavené/schválené/zrušené“ alebo niečo iné.
Nasledujúca tabuľka sumarizuje základné typy zdrojov a upozornenia:
Zdroj
silná stránka
pasca
Ako pomáha AI
SQL databáza
Štrukturálne, spoľahlivé
Komplexné JOINy
Napíše koncept dotazu
API
živé dáta
Obmedzenie rýchlosti, zmena tvaru
Súhrny dokumentov, sťahovanie kódu
CSV/Excel
Flexibilné, rýchle
Nekonzistentnosť formátu
Čítať/analyzovať kód
zoškrabovanie webu
Široký dosah
Právny/etický limit
Analýza konceptu (v rámci orgánu)
Údaje denníka/udalosti
podrobne
obrovský objem
Filtrovací dotaz
Ilustrácia: predstavuje časť celok?
Väčšinu času pracujete so vzorkou (podmnožinou vybranou z populácie) a nie s celými údajmi. Kritická otázka znie: predstavuje táto vzorka populáciu? Výberové skreslenie je najbežnejšou pascou. Ak napríklad odoberiete vzorky používateľov iba z mobilnej aplikácie, neuvidíte používateľov webu a vaše výsledky budú zavádzajúce. Náhodné vzorkovanie (každý záznam má rovnakú šancu na výber) je vo väčšine prípadov najbezpečnejšie; ale v údajoch časových radov sa rozdelenie uskutočňuje chronologicky a nie náhodne (uvidíme to v jednotkách 7 a 10).
Únik povedomia od prvého dňa
Únik údajov je zdrojom väčšiny katastrof a zvyčajne vzniká počas fázy zberu údajov. Príklad: pri predpovedaní „bolo to zrušené“ ak k údajom pridáte stĺpec „dátum zrušenia“, model sa pozerá do budúcnosti. Počas fázy zhromažďovania položte jednu otázku pre každý stĺpec: „Budem mať tieto informácie v čase, keď robím predpoveď?“ Ak je odpoveď nie, tento stĺpec je netesný. Tejto téme sa budeme do hĺbky venovať v Unit 10; Ale uvedomenie by sa malo začať od prvého dňa.
tri mini prípady
Prípad 1 – Problém zastupovania. Jedna banka zbierala údaje len o schválených úveroch pre svoj model úverového rizika (18 500 záznamov). Odmietnutia v údajoch neboli. Model sa v skutočnom svete mýlil, pretože nikdy nevidel, ako by sa odmietnutí správali. Poučenie: vzorka by mala byť reprezentatívna pre celú populáciu, z ktorej sa rozhodujete.
Prípad 2 – Tichá zmena formy. Tím každý deň získaval údaje o cenách z rozhrania API. Jedného dňa poskytovateľ API zmenil menu z USD na EUR, ale názov domény zostal rovnaký. Údaje boli zhromažďované v nesprávnej jednotke počas 12 dní; 3 200 riadkov bolo poškodených. Lekcia: Pravidelne kontrolujte konzistenciu objemu a formátu v údajoch API.
Prípad 3 – Predčasný únik. Analytik zahrnul stĺpec „dôvod na zatvorenie účtu“ pri zhromažďovaní údajov pre odhad „minulosti“. Tento stĺpec bol vyplnený až po odchode zákazníka. Model poskytol 97% presnosť na testovacej súprave; Vo výrobe to nefungovalo, pretože tento stĺpec bol v čase predpovede prázdny. Ponaučenie: opýtajte sa každého stĺpca otázku "mám to v čase predpovede?"
Štyri kopírovateľné šablóny
1) Extrakcia dátového slovníka:
Vaša úloha: asistent vedcov údajov. Nižšie sú uvedené názvy stĺpcov a vzorové (anonymné) hodnoty tabuľky. Pre každý stĺpec uveďte jeho odhadovaný význam, typ údajov a potenciálne riziká kvality v tabuľke. Označte stĺpce, o ktorých si nie ste istí, ako „vyžaduje sa potvrdenie“; vytváranie významov.Stĺpce: [prilepte sem]
2) Vzorkovací kód (náhodný, opakovateľný):
Mám pandy df. Napíšte kód, ktorý extrahuje reprezentatívnu 5 % náhodnú vzorku z 200 000 riadkov. Použite random_state=42 (kvôli reprodukovateľnosti). Pridajte kód, aby ste skontrolovali, či je rozdelenie tried vzorky podobné populácii.
3) Otázka skenovania úniku:
Dám vám tento zoznam stĺpcov. Mojím cieľom je predpovedať „je to zrušené“ (0/1). Pri každom stĺpci vyhodnotiť, či ho v čase predikcie skutočne budem mať a označiť ako „bezpečný / podozrivý / únik“. Svoje zdôvodnenie napíšte jednou vetou. Stĺpce: [zoznam]
4) Návrh SQL pull dotazu:
V PostgreSQL mám tabuľky "objednávky" a "zákazníci". Napíšte dopyt JOIN, ktorý spojí objednávky za posledných 90 dní s mestom zákazníka a vráti celkovú sumu a počet objednávok za mesto. Vysvetlite dátumový filter a spôsob spracovania miest s NULL. Spustím dotaz a overím ho.
Slabá výzva / Silná výzva
Slabá výzva:
Vytiahnite mi dobrý vzor údajov z tejto databázy.
"Dobré" je nejednoznačné; Aký obraz, aké obdobie, aký rozmer, aký účel nie je jasné. AI vytvorí iba všeobecný, možno nesprávny dotaz.
Výkonná výzva:
Vaša úloha: SQL asistent. Mám tabuľku „transakcie“: id stĺpcov, id_zákazníka, dátum (časová pečiatka), suma (číselná), kanál (text: 'web'/'mobile'). Úloha: Napíšte opakovateľný (deterministický s ORDER BY) dotaz, ktorý vráti 10 000 reprezentatívnych riadkov z každého kanála pre rok 2024. Účel: Porovnávacia analýza kanálov. Uveďte predpoklady vášho dopytu.
Tu je tabuľka, účel, veľkosť a opakovateľnosť jasná.
Časté chyby
- Nespochybnenie reprezentatívnosti vzorky. Ľahko dostupné údaje nie sú presné údaje; skreslenie výberu skresľuje výsledok.
- Prispôsobenie významov stĺpcov AI. Zdrojový tím pozná význam; Nepoužívajte predpoveď AI bez jej potvrdenia.
- Nesleduje zmenu formátu/jednotky rozhrania API. Tichá zmena zhromažďuje poškodené údaje niekoľko dní.
- Ignorovanie úniku vo fáze zberu. Ak otázka „Mám to v čase predpovede“ nie je položená skoro, model bude mať falošný úspech.
- Zhromažďovanie neoprávnených alebo nezákonných údajov. Porušenie robots.txt, podmienok používania a KVKK je vážnym rizikom.
Tip: Uschovajte si jednostránkovú „údajovú kartu“ pre každý nový zdroj údajov: zdroj, dátum stiahnutia, počet riadkov, známe hranice a stĺpce s rizikom úniku. Táto karta ukladá otázku „čo boli tieto údaje“ a reprodukovateľnosť o mesiace neskôr.
V súhrne
Kvalita analýzy je obmedzená kvalitou zozbieraných údajov. Dobre poznať zdroj (databázu, API, súbor, scrape) a schému; uistite sa, že vzorka je reprezentatívna pre populáciu; Odstráňte únik od prvého dňa tak, že sa v každom stĺpci spýtate: „Mám to v čase predpovede?“ Umelá inteligencia je skvelým urýchľovačom pre prácu s dopytmi a dokumentmi, ale ľudia rozhodujú o tom, aké údaje budú zhromažďovať, a o ich reprezentatívnosti. Hranice autority, zákon a dôvernosť sú vždy na prvom mieste.
Aplikačná úloha
Vyberte si zdroj údajov (z vlastnej firmy alebo hypotetický). Získajte návrh dátového slovníka od AI pomocou šablóny „extrakcia dátového slovníka“ vyššie; Potom manuálne vyhodnoťte každý stĺpec, aby ste zistili, či nedošlo k úniku. Skúste nájsť aspoň jeden podozrivý/únikový stĺpec a jednou vetou napíšte, prečo je to riskantné.
kontrolný zoznam
- [ ] Potvrdil som zdroj údajov a schému so zdrojovým tímom?
- [ ] Skontroloval som, či je vzorka reprezentatívna pre populáciu?
- [ ] Položil som každému stĺpcu otázku "budem to mať v čase odhadu?"
- [ ] Urobil som vzorkovanie opakovateľné (pevné semeno)?
- [ ] Skontroloval som zákonné/etické (autorita, robots.txt, KVKK) limity zberu?