Mnoho reálných souborů dat může z různých důvodů obsahovat chybějící hodnoty. Často jsou zakódovány jako NaN, prázdná místa nebo jiné zástupné znaky. Trénování modelu s datovou sadou, která obsahuje mnoho chybějících hodnot, může drasticky ovlivnit kvalitu modelu strojového učení. Některé algoritmy, například estimátory scikit-learn, předpokládají, že všechny hodnoty jsou číselné a mají a drží smysluplnou hodnotu.

Jedním ze způsobů, jak se s tímto problémem vypořádat, je zbavit se pozorování, která mají chybějící data. Riskujete však ztrátu datových bodů s cennými informacemi. Lepší strategií by bylo chybějící hodnoty imputovat. Jinými slovy, musíme tyto chybějící hodnoty odvodit z existující části dat. Existují tři hlavní typy chybějících údajů:

  • Zcela náhodně chybějící (MCAR)
  • Náhodně chybějící (MAR)
  • Nezcela náhodně chybějící (NMAR)

V tomto článku se však zaměřím na 6 populárních způsobů imputace dat pro průřezové datové soubory ( časové řady jsou jiný příběh ).

To je snadné. Prostě necháte algoritmus, aby si s chybějícími daty poradil. Některé algoritmy mohou zohlednit chybějící hodnoty a naučit se nejlepší imputační hodnoty pro chybějící data na základě redukce tréninkových ztrát (tj. XGBoost). Některé jiné mají možnost je prostě ignorovat (např. LightGBM – use_missing=false). Jiné algoritmy však zpanikaří a vyhodí chybu stěžující si na chybějící hodnoty (tj. Scikit learn – LinearRegression). V takovém případě budete muset chybějící data zpracovat a vyčistit, než je předáte algoritmu.

Podívejme se na další způsoby imputace chybějících hodnot před trénováním:

Poznámka: Všechny níže uvedené příklady používají datovou sadu California Housing Dataset od Scikit-learn.

2- Imputace pomocí (průměrných/středních) hodnot:

Tato metoda funguje tak, že se vypočítá průměr/střední hodnota nechybějících hodnot ve sloupci a poté se chybějící hodnoty v rámci každého sloupce nahradí samostatně a nezávisle na ostatních. Lze ji použít pouze u číselných dat.

Mean Imputation

Pros:

  • Snadné a rychlé.
  • Pracuje dobře s malými číselnými soubory dat.

Nevýhody:

  • Nezohledňuje korelace mezi rysy. Funguje pouze na úrovni sloupců.
  • Dává špatné výsledky u kódovaných kategoriálních rysů (NEPOUŽÍVAT na kategoriální rysy).
  • Není příliš přesný.
  • Nezohledňuje nejistotu v imputacích.
Mediální/mediánová imputace

3- Imputace pomocí (nejčastějších) nebo (nulových/konstantních) hodnot:

Nejčastější je další statistická strategie pro imputování chybějících hodnot a ANO! Pracuje s kategoriálními rysy (řetězce nebo číselné reprezentace) nahrazením chybějících dat nejčastějšími hodnotami v rámci každého sloupce.

Pros:

  • Funguje dobře s kategoriálními rysy.

Proti:

  • Nezohledňuje také korelace mezi rysy.
  • Může do dat vnést zkreslení.
Nejčastější imputace

Nulová nebo konstantní imputace – jak název napovídá – nahrazuje chybějící hodnoty buď nulou, nebo libovolnou zadanou konstantní hodnotou

4- Imputace pomocí k-NN:

Algoritmus k nejbližších sousedů se používá pro jednoduchou klasifikaci. Algoritmus využívá „podobnost rysů“ k předpovědi hodnot jakýchkoli nových datových bodů. To znamená, že novému bodu je přiřazena hodnota na základě toho, jak moc se podobá bodům v trénovací množině. To může být velmi užitečné při předpovědích chybějících hodnot tím, že se najdou nejbližší sousedé k pozorování s chybějícími údaji a poté se imputují na základě nechybějících hodnot v okolí. Podívejme se na ukázkový kód využívající knihovnu Impyute, která poskytuje jednoduchý a snadný způsob použití KNN pro imputace:

KNN Imputace pro datovou sadu Kalifornské bydlení

Jak to funguje?

Vytvoří základní imputaci průměru a poté použije výsledný kompletní seznam pro konstrukci KDTree. Poté použije výsledný KDTree k výpočtu nejbližších sousedů (NN). Poté, co najde k-NN, vezme jejich vážený průměr.

Pros:

  • Může být mnohem přesnější než metody imputace průměru, mediánu nebo nejčastějšího výskytu (Záleží na souboru dat).

Nevýhody:

  • Výpočetně nákladné. KNN pracuje tak, že ukládá celou trénovací sadu dat do paměti.
  • K-NN je poměrně citlivá na odlehlé hodnoty v datech (na rozdíl od SVM)

5-. Imputace pomocí vícerozměrné imputace řetězovou rovnicí (MICE)

Hlavní kroky používané při vícerozměrné imputaci

Tento typ imputace funguje tak, že se chybějící data doplní vícekrát. Vícenásobná imputace (MI) je mnohem lepší než jednoduchá imputace, protože lépe měří nejistotu chybějících hodnot. Přístup zřetězených rovnic je také velmi flexibilní a dokáže si poradit s různými proměnnými různých typů dat (tj. spojitými nebo binárními) a také se složitostmi, jako jsou hranice nebo vzory vynechání šetření. Další informace o mechanice algoritmu naleznete ve výzkumné knize

MICE imputace pomocí impyute

6- Imputation Using Deep Learning (Datawig):

Tato metoda funguje velmi dobře s kategoriálními a nečíselnými znaky. Jedná se o knihovnu, která se učí modely strojového učení pomocí hlubokých neuronových sítí k imputování chybějících hodnot v datovém rámci. Podporuje také CPU i GPU pro trénování.

Imputace pomocí Datawig

Pros:

  • V porovnání s jinými metodami je poměrně přesná.
  • Má některé funkce, které si poradí s kategorickými daty (Feature Encoder).
  • Podporuje CPU a GPU.

Nevýhody:

  • Jednosloupcová imputace.
  • Může být poměrně pomalá u velkých souborů dat.
  • Musíte určit sloupce, které obsahují informace o cílovém sloupci, který bude imputován.

Stochastická regresní imputace:

Je dosti podobná regresní imputaci, která se snaží předpovědět chybějící hodnoty regresí z jiných souvisejících proměnných ve stejném souboru dat plus nějaká náhodná reziduální hodnota.

Extrapolace a interpolace:

Snaží se odhadnout hodnoty z jiných pozorování v rozsahu diskrétního souboru známých datových bodů.

Hot-Deck imputace:

Funguje tak, že náhodně vybere chybějící hodnotu ze souboru příbuzných a podobných proměnných.

Závěrem lze říci, že neexistuje dokonalý způsob, jak nahradit chybějící hodnoty v souboru dat. Každá strategie může fungovat lépe pro určité soubory dat a typy chybějících údajů, ale může fungovat mnohem hůře u jiných typů souborů dat. Existují určitá pevně stanovená pravidla pro rozhodování, kterou strategii použít pro konkrétní typy chybějících hodnot, ale kromě toho byste měli experimentovat a ověřit, který model funguje pro váš soubor dat nejlépe.

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.