Vyčištění chybějících dat

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 v datech a pak provádějí různé operace k opravě dat nebo vložení nových hodnot. Cílem těchto operací čištění je zabránit problémům způsobeným chybějícími daty, ke kterým může dojít při trénování modelu.

Tato komponenta podporuje několik typů operací pro "čištění" chybějících hodnot, včetně:

  • 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
  • Odvozování hodnot na základě statistických metod

Při použití této komponenty se zdrojová datová sada nezmění. Místo toho ve vašem pracovním prostoru vytvoří novou datovou sadu, kterou můžete použít v následujícím pracovním postupu. Můžete také uložit novou vyčištěnou datovou sadu pro opakované použití.

Tato komponenta také vypíše definici transformace použité 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í. Operaci čištění můžete také uložit, 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žijete ke zpracování chybějících hodnot, může výrazně ovlivnit výsledky. Doporučujeme experimentovat s různými metodami. Zvažte odůvodnění použití konkrétní metody i kvalitu výsledků.

Nahrazení chybějících hodnot

Pokaždé, když použijete komponentu Vyčistit chybějící data na sadu dat, použije se stejná operace čištění na všechny sloupce, které vyberete. Proto pokud potřebujete vyčistit různé sloupce pomocí různých metod, použijte samostatné instance komponenty.

  1. Přidejte do kanálu komponentu Vyčistit chybějící data a připojte datovou sadu, která obsahuje chybějící hodnoty.

  2. V části Sloupce, které chcete vyčistit, zvolte sloupce obsahující 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 sloupce řetězců a číselné sloupce samostatně.

    Pokud například chcete zkontrolovat chybějící hodnoty ve všech číselných sloupcích:

    1. Vyberte komponentu Vyčistit chybějící data a v pravém panelu komponenty klikněte na upravit sloupec .

    2. V části Zahrnout vyberte v rozevíracím seznamu Typy sloupců a pak vyberte Číselné.

    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 jsou data v libovolném sloupci nekompatibilní se zadanou operací, vrátí komponenta chybu a zastaví kanál.

  3. Jako Minimální poměr chybějících hodnot zadejte minimální počet chybějících hodnot požadovaných pro operaci, která se má provést.

    Tuto možnost použijete v kombinaci s poměrem maximálních chybějících hodnot k definování podmínek, za kterých se v datové sadě provádí operace čištění. Pokud chybí příliš mnoho řádků 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í hodnota poměru nastavena na hodnotu 0. To znamená, že chybějící hodnoty se vyčistí i v případě, že chybí jenom jedna hodnota.

    Upozornění

    Tuto podmínku musí splňovat každý sloupec, aby se zadaná operace použila. Předpokládejme například, že jste vybrali tři sloupce a pak jste 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 se operace vyčištění použila pouze u sloupce, u který chybí více než 20 % hodnot. Ostatní sloupce by se proto nezměnily.

    Pokud máte pochybnosti o tom, jestli byly chybějící hodnoty změněny, vyberte možnost Generovat sloupec indikátoru chybějící hodnoty. K datové sadě se připojí sloupec, který označuje, jestli každý sloupec splňuje zadaná kritéria pro minimální a maximální rozsah.

  4. V části Maximální poměr chybějících hodnot zadejte maximální počet chybějících hodnot, které mohou být k dispozici pro operaci, která se má provést.

    Můžete například chtít provést nahrazení chybějících hodnot pouze v případě, že 30 % nebo méně řádků obsahuje chybějící hodnoty, ale hodnoty ponechte tak, jak jsou, pokud více než 30 % řádků obsahuje chybějící 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ích chybějících hodnot nastaven na 1. To znamená, že chybějící hodnoty se vyčistí, i když chybí 100 % hodnot ve sloupci.

  5. V části Režim čištění vyberte jednu z následujících možností pro nahrazení nebo odebrání chybějících hodnot:

    • Vlastní hodnota nahrazení: Tuto možnost použijte k zadání zástupné hodnoty (například 0 nebo NA), která bude platit pro 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é mají datové typy Integer, Double nebo Boolean.

    • Nahradit mediánem: Vypočítá hodnotu mediánu sloupce a použije hodnotu mediánu jako náhradu za všechny chybějící hodnoty ve sloupci.

      Platí pouze pro sloupce, které mají datové typy Integer nebo Double.

    • 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é mají datové typy Integer, Double, Boolean nebo Categorical.

    • 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 je možné chybějící hodnotu považovat za náhodně chybějící.

    • Odebrat celý sloupec: Úplně odebere všechny sloupce v datové sadě, které mají jednu nebo více chybějících hodnot.

  6. Možnost Nahradit hodnotu je k dispozici, pokud jste vybrali možnost Vlastní hodnota nahrazení. Zadejte novou hodnotu, která se použije jako náhradní hodnota pro všechny chybějící hodnoty ve sloupci.

    Všimněte si, že tuto možnost můžete použít pouze ve sloupcích, které mají celočíselné číslo, dvojité, logické hodnoty nebo řetězec.

  7. Vygenerovat sloupec indikátoru chybějící hodnoty: Tuto možnost vyberte, pokud chcete zobrazit určitou informaci o tom, jestli hodnoty ve sloupci splňují kritéria pro čištění chybějících hodnot. Tato možnost je zvlášť užitečná, když nastavujete novou operaci čištění a chcete se ujistit, že funguje tak, jak má.

  8. 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 zadání a sloupcem indikátoru, pokud jste tuto možnost vybrali.

    Sloupce, které nejsou vybrané pro čištění, se také předávají.

  • Transformace čištění: Transformace dat použitá k čištění, kterou můžete uložit v pracovním prostoru a později použít na nová data.

Použití uložené operace čištění u nových dat

Pokud potřebujete operace čištění často opakovat, doporučujeme, abyste svůj recept na čištění dat uložili jako transformaci, abyste je mohli znovu použít se stejnou datovou sadou. Uložení transformace čištění je užitečné zejména v případě, že musíte často znovu importovat a pak vyčistit data, která mají stejné schéma.

  1. Přidejte do kanálu komponentu Použít transformaci .

  2. Přidejte datovou sadu, kterou chcete vyčistit, a připojte ji ke vstupnímu portu vpravo.

  3. Rozbalte skupinu Transformace v levém podokně návrháře. Vyhledejte uloženou transformaci a přetáhněte ji do kanálu.

  4. 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. Je to proto, že transformace již byla definována a automaticky se použije na sloupce zadané v původní operaci.

    Předpokládejme však, že jste vytvořili transformaci pro podmnožinu číselných sloupců. Tuto transformaci můžete použít na datovou sadu se smíšenými typy sloupců bez vyvolání chyby, protože chybějící hodnoty se mění pouze v odpovídajících číselných sloupcích.

  5. Odešlete kanál.

Další kroky

Projděte si sadu komponent dostupných pro Azure Machine Learning.