Seskupení dat do přihrádek
Důležité
Podpora studia Machine Learning (Classic) skončí 31. srpna 2024. Doporučujeme do tohoto data přejít na službu Azure Machine Learning.
Od 1. prosince 2021 nebude možné vytvářet nové prostředky studia Machine Learning (Classic). Do 31. srpna 2024 můžete pokračovat v používání stávajících prostředků studia Machine Learning (Classic).
- Přečtěte si informace o přesouvání projektů strojového učení z ML Studia (classic) na Azure Machine Learning.
- Přečtěte si další informace o Azure Machine Learning.
Dokumentace ke studiu ML (Classic) se vyřazuje z provozu a v budoucnu se nemusí aktualizovat.
Vloží číselná data do intervalů.
Kategorie: Škálování a redukce
Poznámka
Platí jenom pro: Machine Learning Studio (jenom Classic)
Podobné moduly pro přetažení jsou k dispozici v návrháři Azure Machine Learning.
Přehled modulu
Tento článek popisuje, jak pomocí modulu Seskupit data do přihrádek v nástroji Machine Learning Studio (classic) seskupit čísla nebo změnit distribuci průběžných dat.
Modul Seskupování dat do přihrádek podporuje více možností binningu dat. Můžete přizpůsobit způsob nastavení okrajů přihrádky a způsob rozdělení hodnot do přihrádek. Můžete například:
- Ručně zadejte řadu hodnot, které mají sloužit jako hranice intervalu.
- Výpočet skóre entropie pro určení hodnot informací pro každou oblast za účelem optimalizace intervalů v prediktivním modelu. + Přiřaďte hodnoty intervalům pomocí kvantilí nebo pořadí percentilů.
- Řídit počet hodnot v každém intervalu lze také řídit.
- Vynuťte rovnoměrné rozdělení hodnot do intervalů.
Další informace o binningu a seskupování
Binning nebo seskupování dat (někdy označovaných jako kvantizace) je důležitý nástroj pro přípravu číselných dat pro strojové učení a je užitečný ve scénářích, jako jsou tyto:
Sloupec průběžných čísel má pro efektivní modelování příliš mnoho jedinečných hodnot, takže hodnoty automaticky nebo ručně přiřadíte skupinám, abyste vytvořili menší sadu samostatných oblastí.
Můžete například použít entropy skóre vygenerované group data do přihrádek k identifikaci optimálních seskupení datových hodnot a tyto skupiny použít jako funkce v modelu.
Nahraďte sloupec čísel kategorickými hodnotami, které představují konkrétní oblasti.
Můžete například chtít seskupit hodnoty ve sloupci věku zadáním vlastních rozsahů, například 1–15, 16–22, 23–30 atd. pro demografické údaje uživatelů.
Datová sada má několik extrémních hodnot, všechny dobře mimo očekávaný rozsah a tyto hodnoty mají na trénovaný model vliv. Pokud chcete zmírnit předsudky v modelu, můžete data transformovat na jednotnou distribuci pomocí metody quantiles (nebo stejné výšky).
Pomocí této metody modul Seskupit data do přihrádek určuje ideální umístění přihrádky a šířky intervalů, aby se zajistilo, že do každého intervalu spadá přibližně stejný počet vzorků. V závislosti na zvolené metodě normalizace se hodnoty v intervalech buď transformují na percentily, nebo se mapují na číslo intervalu.
Příklady binningu
Následující diagram znázorňuje rozdělení číselných hodnot před a po binningu pomocí metody quantiles . Všimněte si, že v porovnání s nezpracovanými daty nalevo jsou data při intervalu a transformována na jednotkově normální měřítko.
Další přístup k binningu je ukázaný ve vzorku detekce rakoviny prsu , ve kterém se data skupiny do přihrádek používají k přiřazení pacientů k různým kontrolním a testovacím skupinám, aby bylo zaručeno, že každá skupina má stejný počet pacientů.
Vzhledem k tomu, že existuje tolik způsobů, jak seskupit data, doporučujeme experimentovat s různými metodami a hodnotami. Část Příklady obsahuje odkazy na ukázkové experimenty, které ukazují, jak používat různé binningové algoritmy.
Konfigurace skupinových dat do přihrádek
Přidejte do experimentu modul Group Data Into Bins (Classic). Tento modul najdete v kategorii Transformace dat v části Škálování a redukce.
Připojení datovou sadu, která obsahuje číselná data do intervalu. Kvantování lze použít pouze u sloupců obsahujících číselná data.
Pokud datová sada obsahuje nečíselné sloupce, pomocí modulu Vybrat sloupce v datové sadě vyberte podmnožinu sloupců, se kterými chcete pracovat.
Zadejte režim binningu. Režim binningu určuje další parametry, proto nejprve vyberte možnost režimu Binning . Podporují se následující typy binningu:
Entropy MDL: Tato metoda vyžaduje, abyste vybrali sloupec, který chcete předpovědět, a sloupec nebo sloupce, které chcete seskupit do intervalů. Pak provede předání dat a pokusí se určit počet intervalů, které minimalizují entropii. Jinými slovy, zvolí řadu intervalů, které umožní datovému sloupci nejlépe předpovědět cílový sloupec. Potom vrátí číslo intervalu přidružené k jednotlivým řádkům dat ve sloupci s názvem
<colname>quantized
.Pokud metoda Entropy MDL nemůže najít způsob, jak na začátku přihrádku dat vytvořit dobrou předpověď, přiřadí všechna data k jednotnému intervalu. To neznamená, že sloupec není dobrý prediktor. V tomto případě můžete použít jiné metody k vyhledání počtu intervalů, které by minimalizovaly entropii, a zajistit lepší prediktor dat.
Tato metoda nevrací skutečné skóre entropie.
Quantiles: Metoda quantile přiřadí hodnoty intervalům na základě pořadí percentilu. Quantiles se také označuje jako binning stejné výšky.
Rovná se šířka: Pomocí této možnosti je nutné zadat celkový počet intervalů. Hodnoty z datového sloupce se umístí do intervalů, aby každý interval byl stejný mezi počátečními a koncovými hodnotami. V důsledku toho můžou mít některé intervaly více hodnot, pokud jsou data kolem určitého bodu zahlcená.
Vlastní hrany: Můžete zadat hodnoty, které začínají jednotlivé intervaly. Hraniční hodnota je vždy dolní hranicí intervalu. Předpokládejme například, že chcete seskupit hodnoty do dvou intervalů, jednu s hodnotami většími než 0 a jednu s hodnotami menšími nebo rovna 0. V tomto případě byste pro hrany přihrádek zadali 0 v seznamu okrajů oddělených čárkami. Výstup modulu by byl 1 a 2, což označuje index intervalu pro každou hodnotu řádku.
Equal Width with Custom Start and Stop: This method is like the Equal Width option, but you can specify lower and upper bin hranice.
Počet intervalů: Pokud používáte režimy Entropy MDL, Quantiles a Equal Width binning, použijte tuto možnost k určení počtu intervalů nebo kvantilí, které chcete vytvořit.
Pro sloupce, které chcete přihrát, vyberte pomocí selektoru sloupců sloupce, které mají hodnoty, které chcete přihrát. Sloupce musí být číselný datový typ.
Stejné pravidlo binningu se použije u všech příslušných sloupců, které zvolíte. Proto pokud potřebujete přihrádku některých sloupců pomocí jiné metody, použijte pro každou sadu sloupců samostatnou instanci data skupiny do intervalů .
Upozornění
Pokud zvolíte sloupec, který není povolený typ, vygeneruje se chyba za běhu. Modul vrátí chybu, jakmile najde libovolný sloupec nepovoleného typu. Pokud se zobrazí chyba, zkontrolujte všechny vybrané sloupce. Chyba neobsahuje seznam všech neplatných sloupců.
V režimu výstupu uveďte, jak chcete vypíšete kvantované hodnoty.
Připojit: Vytvoří nový sloupec s intervalovanými hodnotami a připojí ho ke vstupní tabulce.
Místo: Nahradí původní hodnoty novými hodnotami v datové sadě.
ResultOnly: Vrátí pouze sloupce výsledků.
Pokud vyberete režim binningu Quantiles , pomocí možnosti normalizace Quantile určete, jak se hodnoty normalizují před řazením do kvantilí. Všimněte si, že normalizace hodnot transformuje hodnoty, ale nemá vliv na konečný počet intervalů. Příklad najdete v tématu Účinky různých metod normalizace.
Podporují se následující typy normalizace:
Procento: Hodnoty se normalizují v rozsahu [0,100]
PQuantile: Hodnoty se normalizují v rozsahu [0,1]
QuantileIndex: Hodnoty se normalizují v rozsahu [1,počet intervalů]
Pokud zvolíte možnost Vlastní hrany, zadejte do textového pole + čárkami oddělený seznam čísel oddělených čárkami, který chcete použít jako hrany přihrádky. Hodnoty označují bod, který rozděluje intervaly, a proto pokud zadáte jednu hodnotu hrany přihrádky, vygenerují se dvě přihrádky; Pokud zadáte dvě hraniční hodnoty přihrádky, vygenerují se tři intervaly atd.
Hodnoty musí být seřazené, aby se intervaly vytvořily od nejnižších po nejvyšší.
Pokud použijete možnost Rovná se šířka s vlastním spuštěním a zastavením, musíte zadat hranice intervalů.
Definujte dolní mez prvního intervalu zadáním hodnoty do textového pole Pozice prvního okraje .
Definujte dolní mez posledního intervalu zadáním hodnoty do textového pole Pozice posledního okraje .
Označte sloupce jako kategorické: Tuto možnost vyberte, pokud chcete automaticky přidat příznak metadat do sloupce s intervalovanými hodnotami. Příznak metadat označuje, že kvantované sloupce by se měly zpracovávat jako kategorické proměnné.
Spusťte experiment nebo vyberte tento modul a klikněte na Tlačítko Spustit.
Výsledky
Modul Seskupit data do přihrádek vrátí datovou sadu, ve které byl každý prvek binován v souladu se zadaným režimem.
Vrátí také transformaci Binningu, což je funkce, která se dá předat modulu Použít transformaci pro přihrádku nových vzorků dat pomocí stejného režimu binningu a parametrů.
Pokud chcete zjistit, jak dobře binningová metoda funguje jako prediktor, můžete kliknout na výstup datové sady ze skupin dat do intervalů a porovnat sloupec popisku s přihrádkou. Pokud je seskupení do intervalů prediktivní, měly by se hodnoty v matici křížových tabulátorů soustředit na několik buněk.
Tip
Mějte na paměti, že pokud na trénovacích datech používáte binning, musíte použít stejnou metodu binningu pro data, která používáte k testování a predikci. Patří sem metoda binningu, umístění přihrádek a šířka přihrádek.
Pokud chcete zajistit, aby se data vždy transformovala pomocí stejné metody binningu, doporučujeme uložit užitečné transformace dat a pak je použít u jiných datových sad pomocí modulu Použít transformaci .
Příklady
Příklady použití kvantizace ve scénářích strojového učení najdete v galerii Azure AI:
- Detekce rakoviny prsu: V tomto vzorku se binning používá k rozdělení pacientů do stejných skupin pomocí pole ID pacienta.
- Predikce zpoždění letu: Používá kvantitní normalizaci k seřazení případů do 10 intervalů.
- Analýza mínění na Twitteru: Skóre jsou seskupené do pěti intervalů představujících skóre hodnocení.
Technické poznámky
Tato část obsahuje podrobnosti o implementaci, tipy a odpovědi na nejčastější dotazy.
Účinky různých metod normalizace
Pokud vyberete možnost , normalizace Quantile, hodnoty se před binningem transformují. Proto metoda, kterou zvolíte pro normalizaci, má silný vliv na číselné hodnoty.
Následující tabulka například ukazuje, jak se hodnoty v jednom sloupci transformují fLength
z datové sady Teleskop s každou z metod normalizace. Sloupec , fLength
byl vybrán náhodně pro ilustraci výstupních hodnot z každé možnosti a nemá normální rozdělení.
Zdroj (fLength) | pQuantile | QuantileIndex | Procenta |
---|---|---|---|
28.7967 | 0.363636 | 4 | 36.363636 |
31.6036 | 0.454545 | 5 | 45.454545 |
162.052 | 0.909091 | 10 | 90.909091 |
23.8172 | 0.272727 | 3 | 27.272727 |
Výsledky binningu jsou pro každou metodu podobné.
Následující obrázek znázorňuje rozdělení hodnot ve sloupci před a po binningu pomocí výchozích 10 intervalů.
Podrobnosti o implementaci
Během kvantování se každé číslo namapuje na interval porovnáním jeho hodnoty s hodnotami okrajů přihrádky.
Pokud je například hodnota 1,5 a hrany intervalů jsou 1, 2 a 3, bude prvek namapován na interval číslo 2. Hodnota 0,5 by se namapovala na číslo intervalu 1 (interval podtečení) a hodnota 3,5 by se namapovala na číslo 4 (interval přetečení).
Pokud je sloupec do intervalu (kvantifikovat) řídký, použije se při naplnění výsledného sloupce posun indexu intervalu (kvantitní posun). Posun se vybere tak, aby řídké 0 vždy chodilo do intervalu s indexem 0 (jinými slovy quantile s hodnotou 0).
Řídké nuly se šíří ze vstupu do výstupního sloupce.
Zpracování zhuštěných sloupců vždy vytváří výsledky s minimálním indexem intervalu rovnajícím se hodnotě 1; to znamená, že minimální kvantitní hodnota se rovná minimální hodnotě ve sloupci. Zpracování řídkého sloupce současně vytvoří výsledek s proměnným minimálním indexem intervalu (minimální hodnota quantile).
Všechny hodnoty NaN a chybějící hodnoty se šíří ze vstupního sloupce do výstupního sloupce. Jedinou výjimkou je případ, kdy modul vrátí quantile indexy. V takovém případě se všechny sítě NaN upřednostní na chybějící hodnoty.
Indexy přihrádek jsou založené na 1. Toto je přirozená konvence pro kvantantile (1st quantile, 2. quantile atd.). Jedinou výjimkou je případ, kdy je sloupec do intervalu řídký.
Očekávané vstupy
Název | Typ | Description |
---|---|---|
Datová sada | Tabulka dat | Datová sada, která se má analyzovat |
Parametry modulu
Name | Rozsah | Typ | Výchozí | Description |
---|---|---|---|---|
Režim binningu | Seznam | QuantizationMode | Kvantily | Volba metody binningu |
Sloupce do intervalu | Libovolný | ColumnSelection | NumericAll | Volba sloupců pro kvantizaci |
Režim výstupu | Libovolný | Výstup | Uveďte, jak mají být kvantované sloupce výstupem. | |
Označení sloupců jako kategorických | Libovolný | Logická hodnota | true | Označuje, jestli mají být výstupní sloupce označené jako kategorické. |
Počet intervalů | >=1 | Integer | 10 | Zadejte požadovaný počet intervalů. |
Kvantile normalizace | Libovolný | BinningNormalization | Volba metody normalizace kvantilí | |
Pozice prvního okraje | Libovolný | Float | 0,0 | Zadejte hodnotu prvního okraje přihrádky. |
Šířka intervalu | Libovolný | Float | 0,5 | Určení vlastní šířky intervalu |
Poslední pozice okraje | Libovolný | Float | 1.0 | Zadejte hodnotu posledního okraje intervalu. |
Seznam okrajů oddělených čárkami | Libovolný | Řetězec | Zadejte seznam čísel oddělených čárkami, které se mají použít jako hrany intervalu. |
Výstupy
Název | Typ | Description |
---|---|---|
Kvantovaná datová sada | Tabulka dat | Datová sada s kvantizovanými sloupci |
Binningová transformace | ITransform – rozhraní | Transformace, která použije kvantizaci datové sady |
Výjimky
Výjimka | Description |
---|---|
Chyba 0003 | K výjimce dochází v případě, že jeden nebo více vstupů je null nebo prázdný. |
Chyba 0004 | K výjimce dochází, pokud je parametr menší nebo roven konkrétní hodnotě. |
Chyba 0011 | K výjimce dochází v případě, že se předaný argument sady sloupců sloupců datové sady nevztahuje na žádný sloupec datové sady. |
Chyba 0021 | K výjimce dochází, pokud je počet řádků v některých datových sadách předaných modulu příliš malý. |
Chyba 0024 | K výjimce dochází v případě, že datová sada neobsahuje sloupec popisku. |
Chyba 0020 | K výjimce dochází, pokud je počet sloupců v některých datových sadách předaných modulu příliš malý. |
Chyba 0038 | K výjimce dochází, pokud by počet očekávaných prvků měl být přesnou hodnotou, ale není. |
Chyba 0005 | K výjimce dochází, pokud je parametr menší než konkrétní hodnota. |
Chyba 0002 | K výjimce dochází v případě, že jeden nebo více parametrů nelze analyzovat nebo převést ze zadaného typu na požadovaný podle typu cílové metody. |
Chyba 0019 | K výjimce dochází v případě, že sloupec bude obsahovat seřazené hodnoty, ale ne. |
Chyba 0039 | K výjimce dochází, pokud operace selhala. |
Chyba 0075 | K výjimce dochází, když se při kvantování datové sady používá neplatná funkce binningu. |
Seznam chyb specifických pro moduly Studio (Classic) najdete v tématu Machine Learning Kódy chyb.
Seznam výjimek rozhraní API najdete v tématu Machine Learning kódy chyb rozhraní REST API.