Sdílet prostřednictvím


Transformace počítání sestavení

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).

Dokumentace ke studiu ML (Classic) se vyřazuje z provozu a v budoucnu se nemusí aktualizovat.

Vytvoří transformaci, která změní počet tabulek na funkce, abyste mohli transformaci použít na více datových sad.

Kategorie: Učení s počty

Poznámka

Platí pro: Machine Learning Studio (classic)

Podobné moduly s přetahováním jsou k dispozici v Azure Machine Learning návrháři.

Přehled modulu

Tento článek popisuje, jak pomocí modulu Transformace počítání sestavení v Machine Learning Studiu (klasickém) analyzovat trénovací data. Z těchto dat vytvoří modul tabulku počtů a také sadu funkcí založených na počtu, které lze použít v prediktivním modelu.

Tabulka count obsahuje společné rozdělení všech sloupců funkcí na zadaný sloupec popisku. Tyto statistiky jsou užitečné při určování, které sloupce mají největší hodnotu informací. Funkce na základě počtu je užitečná, protože tyto funkce jsou kompaktnější než původní trénovací data, ale zachycuje všechny nejužitečnější informace. Pomocí parametrů modulu můžete přizpůsobit způsob transformace počtů na novou sadu funkcí založených na počtu.

Po vygenerování počtů a jejich transformaci na funkce můžete proces uložit jako transformaci pro opětovné použití se souvisejícími daty. Sadu funkcí můžete také upravit, aniž byste museli generovat novou sadu počtů nebo slučovat počty a funkce s jinou sadu počtů a funkcí.

Možnost opětovného použití a opětovného použití funkcí založených na počtu je užitečná například v těchto scénářích:

  • Nová data budou k dispozici za účelem zlepšení pokrytí nebo vyvážení datové sady.
  • Původní počty a funkce byly založeny na velmi velké datové sadě, kterou nechcete znovu zpracovat. Sloučením počtů, které můžete aktualizovat novými daty.
  • Chcete zajistit, aby se stejná sada funkcí založených na počtu použila na všechny datové sady, které používáte v experimentu.

Jak nakonfigurovat transformaci počítání sestavení

Transformaci funkcí založenou na počtu můžete vytvořit přímo z datové sady a znovu ji spustit při každém spuštění experimentu. Nebo můžete vygenerovat sadu počtů a pak ji sloučit s novými daty a vytvořit aktualizovanou tabulku počtů.

  • Vytváření funkcí založených na počtu z datové sady

    Začněte tady, pokud jste ještě nevytykaly počty. Modul Transformace počítání sestavení slouží k vytvoření tabulek počtu a automatickému vygenerování sady funkcí.

    Tento proces vytvoří transformaci funkce, kterou můžete použít u datové sady pomocí modulu Použít transformaci.

  • Sloučení počtů a funkcí z více datových sad

    Pokud jste už vygeneroval tabulku počtu z předchozí datové sady, vygenerujte počty jenom pro nová data nebo importujte existující tabulku počtu vytvořenou v dřívější verzi Machine Learning. Pak tyto dvě sady tabulek počtu sloučíte.

    Tento proces vytvoří novou transformaci funkcí, kterou můžete použít u datové sady pomocí modulu Použít transformaci .

Vytváření funkcí založených na počtu z datové sady

  1. V Machine Learning Studio (classic) přidejte do experimentu modul Build Counting Transform (Transformace počítání sestavení). Modul najdete v části Transformace dat v kategorii Učení s počty.

  2. Připojení datovou sadu, kterou chcete použít jako základ pro naše funkce založené na počtu.

  3. Pomocí možnosti Počet tříd můžete zadat počet hodnot ve sloupci popisku.

    • V případě jakéhokoli problému s binární klasifikací zadejte 2.
    • V případě klasifikačního problému s více než dvěma možnými výstupy musíte předem zadat přesný počet tříd, které se mají spočítat. Pokud zadáte číslo, které je menší než skutečný počet tříd, modul vrátí chybu.
    • Pokud vaše datová sada obsahuje více hodnot třídy a hodnoty popisků tříd nejsou sekvenční, musíte pomocí možnosti Upravit metadata určit, že sloupec obsahuje hodnoty kategorií.
  4. U možnosti Bity hashovací funkce určete, kolik bitů se má použít při hashování hodnot.

    Obecně je bezpečné přijmout výchozí hodnoty, pokud nevíte, že je potřeba počítat mnoho hodnot a že může být potřeba vyšší počet bitů.

  5. V části Hodnota hashovací funkce můžete volitelně zadat hodnotu, která se má dosaďovat pomocí hashovací funkce. Ruční nastavení předsíně se obvykle provádí v případě, že chcete zajistit, aby výsledky hash byly deterministické napříč běhy stejného experimentu.

  6. Pomocí možnosti Typ modulu určete typ dat, která budete počítat, v závislosti na režimu úložiště:

    • Datová sada: Tuto možnost vyberte, pokud počítáte data uložená jako datová sada v Machine Learning Studiu (klasickém).

    • Objekt blob: Tuto možnost vyberte, pokud jsou vaše zdrojová data použitá k sestavení uložená jako objekt blob bloku Windows Azure Storage.

    • MapReduce: Tuto možnost vyberte, pokud chcete ke zpracování dat volat funkce Map/Reduce.

      Pokud chcete použít tuto možnost, musí být nová data poskytnuta jako objekt blob v úložišti Windows Azure a musíte mít přístup k nasazenému clusteru HDInsight. Když experiment spustíte, spustí se v clusteru úloha mapování/redukce, která provede počítání.

      U velmi velkých datových sad doporučujeme tuto možnost použít, kdykoli je to možné. I když vám za používání služby HDInsight můžou být účtovány další náklady, výpočty u velkých datových sad můžou být ve službě HDInsight rychlejší.

      Další informace naleznete v tématu https://azure.microsoft.com/services/hdinsight/.

  7. Po zadání režimu úložiště dat zadejte další informace o připojení k požadovaným datům:

    • Pokud používáte data ze systému Hadoop nebo úložiště objektů blob, zadejte umístění clusteru a přihlašovací údaje.
    • Pokud jste v experimentu dříve pro přístup k datům použili modul Import dat, musíte znovu zadat název účtu a přihlašovací údaje. Modul Transformace počítání sestavení přistupuje k úložišti dat samostatně, aby mohl číst data a sestavovat požadované tabulky.
  8. Jako Sloupec popisku nebo index vyberte jeden sloupec jako sloupec popisku.

    Sloupec popisku je povinný. Sloupec už musí být označený jako popisek, jinak dojde k chybě.

  9. Použijte možnost Vybrat sloupce, které se mají spočítat, a vyberte sloupce, pro které se mají počty generovat.

    Obecně platí, že nejlepšími kandidáty jsou vysoce dimenzionální sloupce a všechny ostatní sloupce, které s těmito sloupci korelují.

  10. Pomocí možnosti Count table type (Počet typů tabulek) můžete zadat formát, který se použije k uložení tabulky count.

    • Slovník: Vytvoří tabulku počtu slovníků. Všechny hodnoty sloupců ve vybraných sloupcích jsou považovány za řetězce a jsou zatřiďovány pomocí bitového pole o velikosti až 31 bitů. Proto jsou všechny hodnoty sloupců reprezentovány nezá záporným 32bitovým celým číslem.

      Tuto možnost byste obecně měli použít pro menší datové sady (méně než 1 GB) a pro větší datové sady použít možnost CMSketch .

      Po výběru této možnosti nakonfigurujte počet bitů používaný funkcí hash a nastavte počáteční hodnotu pro inicializaci funkce hash.

    • CMSketch: Vytvoří tabulku minimálního náčrtu počtu. Při použití této možnosti se ke zlepšení efektivity paměti a omezení pravděpodobnosti kolize hodnot hash používá více nezávislých funkcí hash s menším rozsahem. Parametry pro hashování velikosti bitu a hodnoty hash nemají na tuto možnost žádný vliv.

  11. Spusťte experiment.

    Modul vytvoří transformaci featurizace , kterou můžete použít jako vstup modulu Použít transformaci. Výstupem modulu Použít transformaci je transformovaná datová sada, kterou můžete použít k trénování modelu.

    Volitelně můžete transformaci uložit, pokud chcete sloučit sadu funkcí založených na počtu s jinou sadu funkcí založených na počtu. Další informace najdete v tématu Transformace počtu sloučení.

Sloučení počtů a funkcí z více datových sad

  1. V Machine Learning Studio (classic) přidejte do experimentu modul Transformace počítání sestavení a připojte datovou sadu obsahující nová data, která chcete přidat.

  2. Pomocí možnosti Typ modulu určete zdroj nových dat. Data můžete sloučit z různých zdrojů.

    • Datová sada: Tuto možnost vyberte, pokud jsou nová data k dispozici jako datová sada v Machine Learning Studiu (klasickém).

    • Objekt blob: Tuto možnost vyberte, pokud se nová data poskytují jako objekt blob bloku Windows Azure Storage.

    • MapReduce: Tuto možnost vyberte, pokud chcete ke zpracování dat volat funkce Map/Reduce.

      Pokud chcete použít tuto možnost, musí být nová data poskytnuta jako objekt blob v úložišti Windows Azure a musíte mít přístup k nasazenému clusteru HDInsight. Když experiment spustíte, spustí se v clusteru úloha mapování/redukce, která provede počítání.

      Další informace najdete v tématu https://azure.microsoft.com/services/hdinsight/.

  3. Po zadání režimu úložiště dat zadejte další informace o připojení k novým datům:

    • Pokud používáte data ze systému Hadoop nebo úložiště objektů blob, zadejte umístění clusteru a přihlašovací údaje.

    • Pokud jste v experimentu dříve pro přístup k datům použili modul Import dat, musíte znovu zadat název účtu a přihlašovací údaje. Důvodem je to, že modul Transformace počítání sestavení přistupuje k úložišti dat samostatně, aby mohl číst data a sestavovat požadované tabulky.

  4. Při slučování počtů musí být následující možnosti přesně stejné v obou tabulkách s počtem:

    • Number of classes
    • Bity funkce hash
    • Počáteční hodnota funkce hash
    • Vyberte sloupce, které se mají spočítat.

    Sloupec popisku může být jiný, pokud obsahuje stejný počet tříd.

  5. Použijte možnost typ tabulky Count k určení formátu a cíle aktualizované tabulky Count.

    Tip

    Formát tabulek počtu dvou položek, které mají být v úmyslu sloučeny, musí být stejný. Jinými slovy, pokud jste uložili dřívější tabulku Count pomocí formátu slovníku , nemůžete ji sloučit s počty uloženými pomocí formátu CMSketch .

  6. Spusťte experiment.

    Modul vytvoří transformaci featurization , kterou můžete použít jako vstup do modulu použít transformaci . Výstupem modulu použít transformaci je transformovaná datová sada, která se dá použít ke výukě modelu.

  7. Chcete-li sloučit tuto sadu počtů s existující sadou funkcí založených na počtu, přečtěte si téma transformace počtu sloučení.

Příklady

V těchto článcích najdete další informace o algoritmu počítání a účinnosti modelování na základě počtu v porovnání s jinými metodami.

Následující experimenty v Azure AI Gallery ukazují, jak použít učení na základě počtu k sestavení různých prediktivních modelů:

Parametry modulu

Pro všechny možnosti se používají následující parametry:

Název Typ Rozsah Volitelné Výchozí Description
Number of classes Integer >= 2 Vyžadováno 2 Počet tříd pro popisek.
Bity funkce hash Integer [12; 31] Vyžadováno 20 Počet bitů rozsahu funkce hash.
Počáteční hodnota funkce hash Integer Libovolný Vyžadováno 1 Počáteční hodnota funkce hash.
Typ modulu Vyžadováno Datová sada Typ modulu, který se má použít při generování tabulky Count
Typ tabulky Count CountTableType vybrat ze seznamu Vyžadováno Slovník Zadejte formát tabulky Count.

Při výběru možnosti objektu BLOB platí následující možnosti.

Název Typ Rozsah Volitelné Výchozí Description
Název objektu blob Řetězec Libovolný Vyžadováno Název vstupního objektu BLOB. Nezahrnujte název kontejneru.
Název účtu Řetězec Libovolný Vyžadováno Název účtu úložiště
Klíč účtu SecureString Libovolný Vyžadováno Klíč účtu úložiště
Název kontejneru Řetězec Libovolný Vyžadováno Kontejner objektů blob Azure, který obsahuje vstupní objekt BLOB.
Počet sloupců Řetězec Libovolný Vyžadováno Indexované indexy skupin sloupců, které se mají provést počítání.
Sloupec popisku Integer >= 1 Vyžadováno 1 Index sloupce popisku založený na jednom.
Formát objektu BLOB Libovolný Vyžadováno CSV Formát textového souboru objektu BLOB

následující parametry platí při použití MapReduce k vygenerování počtů:

Název Typ Rozsah Volitelné Výchozí Description
Název výchozího účtu úložiště Řetězec Libovolný Vyžadováno žádné Název účtu úložiště, který obsahuje vstupní objekt BLOB.
Výchozí klíč účtu úložiště SecureString Libovolný Vyžadováno žádné Klíč účtu úložiště, který obsahuje vstupní objekt BLOB.
Výchozí název kontejneru Řetězec Libovolný Vyžadováno žádné Název kontejneru objektů blob, do kterého se má zapsat tabulka Count
Identifikátor URI clusteru Řetězec Libovolný Vyžadováno žádné Identifikátor URI clusteru HDInsight Hadoop.
Uživatelské jméno Řetězec Libovolný Vyžadováno žádné Uživatelské jméno pro přihlášení ke clusteru HDInsight Hadoop.

Následující parametry definují formát tabulky Count:

Název Typ Rozsah Volitelné Výchozí Description
Typ tabulky Count CountTableType Seznam Vyžadováno Slovník Typ tabulky Count
Index nebo název sloupce popisku ColumnSelection Povinný, pokud se tabulka Count uložila jako datová sada žádné Vyberte sloupec popisek.
Vyberte sloupce, které se mají spočítat. ColumnSelection Povinný, pokud se tabulka Count uložila jako datová sada Vyberte sloupce pro počítání. Tyto sloupce se považují za funkce kategorií.
Hloubka tabulky náčrtů CM Integer >= 1 Povinné, pokud tabulka Count používá formát CMSketch 4 Hloubka tabulky skicí CM, která se rovná počtu funkcí hash.
Šířka tabulky skicy CM Integer [1; 31] Povinné, pokud tabulka Count používá formát CMSketch 20 Šířka tabulky skicí CM, což je počet bitů rozsahu funkce hash.
Index sloupce popisku nebo NameColumn ColumnSelection Povinný, pokud se tabulka Count uložila jako datová sada Vybere sloupec popisku.
Vyberte sloupce, které se mají spočítat. ColumnSelection Povinný, pokud se tabulka Count uložila jako datová sada Vybere sloupce pro počítání. Tyto sloupce se považují za funkce kategorií.
Typ tabulky Count Povinný, pokud se tabulka Count uložila jako datová sada Slovník Určuje typ tabulky Count.
Hloubka tabulky náčrtů CM Integer >= 1 Povinný, pokud se tabulka Count uložila jako CMSketch 4 Hloubka tabulky skica v CM, která se rovná počtu funkcí hash.
Šířka tabulky skicy CM Integer [1; 31] Povinný, pokud se tabulka Count uložila jako CMSketch 20 Šířka tabulky skica CM, což je počet bitů rozsahu funkce hash.

Výstupy

Název Typ Description
Počítání transformace Rozhraní ITransform Transformace počítání.

Výjimky

Výjimka Description
Chyba 0003 K výjimce dojde v případě, že jeden nebo více vstupů má hodnotu null nebo je prázdné.
Chyba 0,0004 K výjimce dojde, pokud je parametr menší nebo roven konkrétní hodnotě.
Chyba 0,005 K výjimce dojde, pokud je parametr menší než konkrétní hodnota.
Chyba 0007 K výjimce dojde, pokud je parametr větší než konkrétní hodnota.
Chyba 0009 K výjimce dojde, pokud je název účtu úložiště Azure nebo kontejneru nesprávně zadaný.
Chyba 0065 K výjimce dojde, pokud je název objektu blob Azure zadán nesprávně.
Chyba 0011 K výjimce dojde, pokud se předaný argument sady sloupců nevztahuje na žádný sloupec DataSet.
Chyba 0049 V případě, že není možné analyzovat soubor, dojde k výjimce.
Chyba 1000 Interní výjimka knihovny
Chyba 0059 K výjimce dojde, pokud nelze analyzovat index sloupce zadaný v ovládacím prvku pro výběr sloupce.
Chyba 0060 K výjimce dojde, pokud je v rámci výběru sloupce zadán rozsah sloupce mimo rozsah.
Chyba 0089 K výjimce dojde, pokud je zadaný počet tříd menší než skutečný počet tříd v datové sadě, která se používá pro počítání.

seznam chyb, které jsou specifické pro moduly studia (classic), najdete v článku kódy chyb Machine Learning.

seznam výjimek rozhraní API najdete v tématu Machine Learning REST API chybové kódy.

Viz také

Učení s počty