Vyčištění chybějící datové komponenty
Tento článek popisuje komponentu v návrháři služby Azure Machine Learning.
Tato komponenta slouží k odebrání, nahrazení nebo odvození chybějících hodnot.
Datoví vědci často kontrolují chybějící hodnoty a pak provádějí různé operace pro opravu dat nebo vložení nových hodnot. Cílem těchto čisticích operací je zabránit problémům způsobeným chybějícími daty, které mohou nastat při trénování modelu.
Tato komponenta podporuje více typů operací pro vyčištění chybějících hodnot, mezi které patří:
- Nahrazení chybějících hodnot zástupným symbolem, střední hodnotou nebo jinou hodnotou
- Úplné odebrání řádků a sloupců s chybějícími hodnotami
- Odvození hodnot na základě statistických metod
Použití této komponenty nezmění zdrojovou datovou sadu. Místo toho vytvoří v pracovním prostoru novou datovou sadu, kterou můžete použít v následujícím pracovním postupu. Novou vyčištěnou datovou sadu můžete také uložit pro opakované použití.
Tato komponenta také vypíše definici transformace, která slouží k vyčištění chybějících hodnot. Tuto transformaci můžete znovu použít u jiných datových sad, které mají stejné schéma, pomocí komponenty Použít transformaci .
Jak používat vyčištění chybějících dat
Tato komponenta umožňuje definovat operaci čištění. Můžete také uložit operaci čištění, abyste ji mohli později použít na nová data. Postup vytvoření a uložení procesu čištění najdete v následujících částech:
Důležité
Metoda čištění, kterou používáte pro zpracování chybějících hodnot, může výrazně ovlivnit vaše výsledky. Doporučujeme experimentovat s různými metodami. Zvažte odůvodnění použití konkrétní metody a kvalitu výsledků.
Nahrazení chybějících hodnot
Pokaždé, když u sady dat použijete komponentu Vyčistit chybějící data, použije se stejná operace čištění u všech vybraných sloupců. Proto pokud potřebujete vyčistit různé sloupce pomocí různých metod, použijte samostatné instance komponenty.
Přidejte do kanálu komponentu Vyčistit chybějící data a připojte datovou sadu s chybějícími hodnotami.
Pokud chcete sloupce vyčistit, zvolte sloupce, které obsahují chybějící hodnoty, které chcete změnit. Můžete zvolit více sloupců, ale ve všech vybraných sloupcích musíte použít stejnou metodu nahrazení. Proto obvykle potřebujete vyčistit řetězcové sloupce a číselné sloupce samostatně.
Pokud chcete například zkontrolovat chybějící hodnoty ve všech číselných sloupcích:
Vyberte součást Vyčistit chybějící data a v pravém panelu komponenty klikněte na Upravit sloupec .
V části Zahrnout vyberte v rozevíracím seznamu typy sloupců a pak vyberte Numeric.
Jakákoli metoda čištění nebo nahrazení, kterou zvolíte, musí být použitelná pro všechny sloupce ve výběru. Pokud data v libovolném sloupci nejsou kompatibilní se zadanou operací, vrátí komponenta chybu a kanál zastaví.
V případě minimálního poměru chybějících hodnot zadejte minimální počet chybějících hodnot požadovaných k provedení operace.
Tuto možnost použijete v kombinaci s poměrem maximální chybějící hodnoty k definování podmínek, za kterých se u datové sady provádí operace čištění. Pokud chybí příliš mnoho nebo příliš málo řádků, nelze operaci provést.
Zadané číslo představuje poměr chybějících hodnot ke všem hodnotám ve sloupci. Ve výchozím nastavení je vlastnost Minimální chybějící poměr hodnot nastavena na hodnotu 0. To znamená, že chybějící hodnoty se vyčistí, i když chybí jenom jedna hodnota.
Upozorňující
Tuto podmínku musí splnit každý sloupec a každý sloupec, aby se použila zadaná operace. Předpokládejme například, že jste vybrali tři sloupce a pak nastavili minimální poměr chybějících hodnot na 0,2 (20 %), ale pouze jeden sloupec má ve skutečnosti 20 % chybějících hodnot. V tomto případě by operace čištění platila pouze pro sloupec s více než 20 % chybějícími hodnotami. Ostatní sloupce by se proto nezměnily.
Pokud máte nějaké pochybnosti o tom, jestli se chybějící hodnoty změnily, vyberte možnost vygenerovat sloupec indikátoru chybějící hodnoty. K datové sadě se připojí sloupec, který určuje, jestli každý sloupec splňuje zadaná kritéria pro minimální a maximální rozsahy.
V poli Maximální poměr chybějících hodnot zadejte maximální počet chybějících hodnot, které lze pro operaci provést.
Můžete například chtít nahradit chybějící hodnotu pouze v případě, že 30 % nebo méně řádků obsahuje chybějící hodnoty, ale ponechte hodnoty tak, jak je, pokud více než 30 % řádků neobsahuje hodnoty.
Číslo definujete jako poměr chybějících hodnot ke všem hodnotám ve sloupci. Ve výchozím nastavení je poměr maximální chybějící hodnoty nastaven na hodnotu 1. To znamená, že chybějící hodnoty se vyčistí, i když chybí 100 % hodnot ve sloupci.
V režimu čištění vyberte jednu z následujících možností nahrazení nebo odebrání chybějících hodnot:
Vlastní hodnota nahrazení: Tuto možnost použijte k určení zástupné hodnoty (například 0 nebo NA), která se vztahuje na všechny chybějící hodnoty. Hodnota, kterou zadáte jako náhradu, musí být kompatibilní s datovým typem sloupce.
Nahradit střední hodnotou: Vypočítá střední hodnotu sloupce a použije střední hodnotu jako náhradní hodnotu pro každou chybějící hodnotu ve sloupci.
Platí pouze pro sloupce, které obsahují celočíselné, dvojité nebo logické datové typy.
Nahradit mediánem: Vypočítá medián sloupce a použije medián jako náhradu za chybějící hodnotu ve sloupci.
Platí pouze pro sloupce, které obsahují celočíselné nebo dvojité datové typy.
Nahradit režimem: Vypočítá režim sloupce a použije režim jako náhradní hodnotu pro každou chybějící hodnotu ve sloupci.
Platí pro sloupce, které obsahují celočíselné, dvojité, logické nebo kategorické datové typy.
Odebrat celý řádek: Úplně odebere všechny řádky v datové sadě, které mají jednu nebo více chybějících hodnot. To je užitečné, pokud chybějící hodnotu lze považovat za náhodně chybějící.
Odebrat celý sloupec: Úplně odebere libovolný sloupec v datové sadě, který obsahuje jednu nebo více chybějících hodnot.
Možnost Nahradit hodnotu je k dispozici, pokud jste vybrali možnost Vlastní substituční hodnota. Zadejte novou hodnotu, která se má použít jako náhradní hodnota pro všechny chybějící hodnoty ve sloupci.
Tuto možnost můžete použít pouze ve sloupcích, které mají celé číslo, Double, Boolean nebo String.
Vygenerujte sloupec indikátoru chybějící hodnoty: Tuto možnost vyberte, pokud chcete zjistit, jestli hodnoty ve sloupci splňovaly kritéria pro vyčištění chybějících hodnot. Tato možnost je užitečná zejména při nastavování nové operace čištění a chcete zajistit, aby fungovala tak, jak je navržena.
Odešlete kanál.
Výsledky
Komponenta vrátí dva výstupy:
Vyčištěná datová sada: Datová sada složená z vybraných sloupců s chybějícími hodnotami zpracovanými podle zadaného sloupce spolu se sloupcem indikátoru, pokud jste tuto možnost vybrali.
Sloupce, které nejsou vybrány pro čištění, jsou také "předány".
Transformace čištění: Transformace dat používaná k čištění, která se dá uložit do pracovního prostoru a použít ji na nová data později.
Použití uložené operace čištění na nová data
Pokud potřebujete často opakovat čisticí operace, doporučujeme uložit recept na čištění dat jako transformaci, abyste mohli znovu použít stejnou datovou sadu. Uložení transformace čištění je užitečné zejména v případě, že je nutné často znovu importovat a vyčistit data, která mají stejné schéma.
Přidejte do kanálu komponentu Použít transformaci .
Přidejte datovou sadu, kterou chcete vyčistit, a připojte datovou sadu k pravému vstupnímu portu.
Rozbalte skupinu Transformace v levém podokně návrháře. Vyhledejte uloženou transformaci a přetáhněte ji do kanálu.
Připojte uloženou transformaci k levému vstupnímu portu použít transformaci.
Když použijete uloženou transformaci, nemůžete vybrat sloupce, na které se transformace použije. Důvodem je to, že transformace již byla definována a automaticky se vztahuje na sloupce zadané v původní operaci.
Předpokládejme však, že jste v podmnožině číselných sloupců vytvořili transformaci. Tuto transformaci můžete použít u datové sady smíšených typů sloupců bez vyvolání chyby, protože chybějící hodnoty se mění pouze v odpovídajících číselných sloupcích.
Odešlete kanál.
Další kroky
Podívejte se na sadu komponent dostupných pro Azure Machine Learning.