Sdílet prostřednictvím


Posílená regrese rozhodovacího stromu

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ří regresní model pomocí algoritmu posílené rozhodovacího stromu.

Kategorie: Machine Learning / Inicializace modelu / regrese

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 Boosted Decision Tree Regression (Posílená regrese rozhodovacího stromu) v Machine Learning Studiu (klasickém) vytvořit soubor regresních stromů pomocí zvýšení. Zvýšení znamená , že každý strom je závislý na předchozích stromech. Algoritmus se učí fitování reziduí stromů, které mu předcházely. Proto zvýšení ve struktury rozhodovacího stromu má tendenci ke zlepšení přesnosti s malým rizikem menšího pokrytí.

Tato regresní metoda je metoda učení pod dohledem, a proto vyžaduje datovou sadu s popiskem. Sloupec popisků musí obsahovat číselné hodnoty.

Poznámka

Tento modul používejte pouze s datovými sadami, které používají číselné proměnné.

Po nadefinování modelu ho vytrénování pomocí modulů Trénování modelu nebo Ladění hyperparametrů modelu.

Tip

Chcete se dozvědět více o vytvořených stromech? Po vytrénování modelu klikněte pravým tlačítkem na výstup modulu Trénování modelu (nebo na modul Vyladit hyperparametry modelu) a vyberte Vizualizovat, abyste viděli strom vytvořený při každé iteraci. Můžete přejít k podrobnostem rozdělení pro jednotlivé stromy a zobrazit pravidla pro jednotlivé uzly.

Další informace o posílených regresních stromech

Zvýšení výkonu je jednou z několika klasických metod pro vytváření souborových modelů spolu s baggingem, náhodnými doménovými strukturami atd. V Machine Learning Studio (classic) používají posílené rozhodovací stromy efektivní implementaci algoritmu TRŽ gradient boosting algoritmu. Gradientní zvýšení výkonu je technika strojového učení pro regresní problémy. Sestaví každý regresní strom krokovaným způsobem, pomocí předdefinované ztrátové funkce změří chybu v každém kroku a v dalším kroku ji opraví. Proto je predikční model ve skutečnosti souborem slabších predikčních modelů.

V případě regresních problémů se zvýšením postupně sestaví řada stromů a pak pomocí libovolně odlišitelné ztrátové funkce vybere optimální strom.

Další informace najdete v těchto článcích:

Metodu gradient boosting lze použít také pro problémy klasifikace jejich snížením na regresi pomocí vhodné ztrátové funkce. Další informace o implementaci posílených stromů pro úlohy klasifikace najdete v tématu Posílený rozhodovací strom se dvěma třídami.

Konfigurace posílené regrese rozhodovacího stromu

  1. Přidejte do experimentu modul Posílený rozhodovací strom. Tento modul najdete v části Machine Learning, Inicializovat, v kategorii Regrese.

  2. Nastavením možnosti Vytvořit režim školitele určete, jak chcete model vytrénovat.

    • Jeden parametr: Tuto možnost vyberte, pokud víte, jak chcete model nakonfigurovat, a zadejte konkrétní sadu hodnot jako argumenty.

    • Rozsah parametrů: Tuto možnost vyberte, pokud si nejste jistí nejlepšími parametry a chcete spustit úklid parametrů. Vyberte rozsah hodnot, které chcete iterovat, a funkce Vyladit model Hyperparametry iteruje přes všechny možné kombinace nastavení, které jste poskytli, aby se určily hyperparametry, které produkují optimální výsledky.

  3. Maximální počet listů na strom: Označuje maximální počet terminálových uzlů (listů), které lze vytvořit v libovolném stromu.

    Zvýšením této hodnoty můžete potenciálně zvětšit velikost stromu a získat lepší přesnost s rizikem přeučení a delší doby trénování.

  4. Minimální počet vzorků na uzel typu list: Určete minimální počet případů nutných k vytvoření libovolného koncového uzlu (list) ve stromu.

    Zvýšením této hodnoty zvýšíte prahovou hodnotu pro vytváření nových pravidel. Například s výchozí hodnotou 1 může i jeden případ způsobit vytvoření nového pravidla. Pokud zvýšíte hodnotu na 5, trénovací data musí obsahovat alespoň 5 případů, které splňují stejné podmínky.

  5. Učení rychlosti: Zadejte číslo v rozmezí 0 až 1, které definuje velikost kroku při učení. Rychlost učení určuje, jak rychle nebo pomalu se učící proces konverguje na optimální řešení. Pokud je velikost kroku příliš velká, můžete optimální řešení řešit. Pokud je velikost kroku příliš malá, trvá trénování déle, než se zkonverguje nejlepší řešení.

  6. Počet vytvořených stromů: Označuje celkový počet rozhodovacích stromů, které se vytvoří ve směsi. Vytvořením dalších rozhodovacích stromů můžete potenciálně získat lepší pokrytí, ale doba trénování se prodlužuje.

    Tato hodnota také určuje počet stromů zobrazených při vizualizaci natrénovaných modelů. Pokud chcete zobrazit nebo vytisknout strom ingle, můžete hodnotu nastavit na 1. To však znamená, že je vytvořen pouze jeden strom (strom s počáteční sadu parametrů) a nejsou provedeny žádné další iterace.

  7. Přediména náhodného čísla: Zadejte volitelné nezá záporné celé číslo, které se použije jako náhodná hodnota seedu. Zadáním předsázky zajistíte reprodukovatelnost napříč spuštěními, která mají stejná data a parametry.

    Ve výchozím nastavení je náhodná počáteční hodnota nastavená na 0, což znamená, že počáteční počáteční hodnota se získá ze systémových hodin.

  8. Povolit neznámé úrovně kategorií: Tuto možnost vyberte, pokud chcete vytvořit skupinu pro neznámé hodnoty v trénovací a ověřovací skupině. Pokud výběr této možnosti zrušíte, může model přijmout pouze hodnoty, které jsou obsaženy v trénovací data. Model může být pro známé hodnoty méně přesný, ale může poskytovat lepší předpovědi pro nové (neznámé) hodnoty.

  9. Přidejte trénovací datovou sadu a jeden z trénovacích modulů:

    Poznámka

    Pokud předáte rozsah parametrů do trénového modelu, použije se pouze první hodnota v seznamu rozsahů parametrů.

    Pokud modulu Vyladění modelu hyperparametrů předáte jednu sadu hodnot parametrů, bude modul, který očekává rozsah nastavení pro každý parametr, ignorovat tyto hodnoty a použije výchozí hodnoty pro toho, kdo se učí.

    Pokud vyberete možnost Rozsah parametrů a zadáte jednu hodnotu pro libovolný parametr, tato jedna hodnota se použije v průběhu úklidu, i když se jiné parametry v rozsahu hodnot změní.

  10. Spusťte experiment.

Výsledky

Po dokončení trénování:

  • Pokud chcete zobrazit strom, který byl vytvořen při každé iteraci, klikněte pravým tlačítkem na Modul Trénování modelu a vyberte Vytrénovaný model , který chcete vizualizovat. Pokud používáte možnost Tune Model Hyperparameters (Vyladit hyperparametry modelu), klikněte pravým tlačítkem na modul a vyberte Trained best model (Vytrénovaný nejlepší model) a vizualizujte nejlepší model.

    Kliknutím na jednotlivé stromy můžete přejít k podrobnostem rozdělení a zobrazit pravidla pro jednotlivé uzly.

  • Pokud chcete použít model pro bodování, připojte ho ke score modelu, abyste předpověděli hodnoty pro nové vstupní příklady.

  • Pokud chcete uložit snímek natrénovaný model, klikněte pravým tlačítkem na výstup trénování modelu a vyberte Uložit jako. Kopie vytrénovaný model, který uložíte, se při následných spuštěních experimentu ne aktualizována.

Příklady

Příklady použití posílených stromů ve strojové učení najdete v Azure AI Gallery:

Technické poznámky

Tato část obsahuje podrobnosti o implementaci, tipy a odpovědi na nejčastější dotazy.

Tip

Obecně platí, že rozhodovací stromy přináší lepší výsledky, když jsou vlastnosti poněkud související. Pokud mají funkce velký stupeň entropie (to znamená, že nejsou související), sdílejí jen málo vzájemných informací nebo žádné vzájemné informace a jejich řazení ve stromu nepřidá příliš prediktivní význam.

Podrobnosti o implementaci

Soubor stromů se v každém kroku produkuje výpočtem regresní strom, který přibližuje gradient ztrátové funkce a přidá ho do předchozího stromu s koeficienty, které minimalizují ztrátu nového stromu. Výstupem souboru vytvořeného TRŽištěm v dané instanci je součet výstupů stromu.

  • V případě problému s binární klasifikací se výstup převede na pravděpodobnost pomocí nějaké formy látky.

  • V případě regresních problémů je výstupem předpovězená hodnota funkce.

  • Pro problémy s řazením jsou instance seřazené podle výstupní hodnoty kompletu.

Parametry modulu

Name Rozsah Typ Výchozí Description
Maximální počet pochodů na strom >= 1 Integer 20 Zadejte maximální počet pochodů na strom.
Minimální počet vzorků na uzel na list >= 1 Integer 10 Zadejte minimální počet případů vyžadovaných k vytvoření uzlu na úrovni listu.
Rychlost učení klepat. Epsilon; 1,0] Float 0.2 Zadat počáteční rychlost učení
Celkový počet konstruovaných stromů >= 1 Integer 100 Zadejte maximální počet stromů, které se dají vytvořit během školení.
Počáteční počáteční číslo Libovolný Integer Poskytněte základ pro generátor náhodných čísel používaný modelem. Ve výchozím nastavení ponechte prázdné.
Povolení neznámých úrovní kategorií Libovolný Logická hodnota true Pokud má hodnotu true, vytvořte další úroveň pro každý sloupec kategorií. Úrovně v testovací sadě, které nejsou k dispozici v datové sadě školení, jsou namapovány na tuto další úroveň.

Výstupy

Název Typ Description
Nevlakový model Rozhraní ILearner Nevýukový model regrese

Viz také

Seznam modulů a-Z
Regrese