FastTreeRankingTrainer Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Pro IEstimator<TTransformer> trénování modelu řazení rozhodovacího stromu pomocí FastTree.
public sealed class FastTreeRankingTrainer : Microsoft.ML.Trainers.FastTree.BoostingFastTreeTrainerBase<Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options,Microsoft.ML.Data.RankingPredictionTransformer<Microsoft.ML.Trainers.FastTree.FastTreeRankingModelParameters>,Microsoft.ML.Trainers.FastTree.FastTreeRankingModelParameters>
type FastTreeRankingTrainer = class
inherit BoostingFastTreeTrainerBase<FastTreeRankingTrainer.Options, RankingPredictionTransformer<FastTreeRankingModelParameters>, FastTreeRankingModelParameters>
Public NotInheritable Class FastTreeRankingTrainer
Inherits BoostingFastTreeTrainerBase(Of FastTreeRankingTrainer.Options, RankingPredictionTransformer(Of FastTreeRankingModelParameters), FastTreeRankingModelParameters)
- Dědičnost
Poznámky
K vytvoření tohoto trenéra použijte FastTree nebo FastTree(Options).
Vstupní a výstupní sloupce
Datový typ vstupního popisku musí být klíč typu nebo Single. Hodnota popisku určuje relevanci, kde vyšší hodnoty označují vyšší význam. Pokud je popiskem klíč typ, pak je index klíče hodnotou relevance, kde nejmenší index je nejméně relevantní. Pokud je popisek Single, větší hodnoty označují větší význam. Sloupec funkce musí být vektorem Single známé velikosti a vstupní sloupec skupiny řádků musí být typ klíče .
Tento trenér vypíše následující sloupce:
| Název výstupního sloupce | Typ sloupce | Description |
|---|---|---|
Score |
Single | Nevázané skóre vypočítané modelem k určení předpovědi. |
Charakteristiky trenéra
| Úloha strojového učení | Ranking |
| Vyžaduje se normalizace? | No |
| Vyžaduje se ukládání do mezipaměti? | No |
| Požadovaný NuGet kromě Microsoft.ML | Microsoft.ML.FastTree |
| Exportovatelné do ONNX | No |
Podrobnosti trénovacího algoritmu
FastTree je efektivní implementace algoritmu přechodu MART . Zvýšení přechodu je technika strojového učení pro regresní problémy. Sestaví každý regresní strom krokově, pomocí předdefinované funkce ztráty změří chybu pro každý krok a opraví ho v dalším kroku. Takže tento prediktivní model je ve skutečnosti soubor slabších prediktivních modelů. Při regresních problémech vytváří zvýšení řady takových stromů krokově moudrým způsobem a pak vybere optimální strom pomocí libovolné rozdílné funkce ztráty.
MART se učí soubor regresních stromů, což je rozhodovací strom se skalárními hodnotami v listech. Rozhodovací strom (neboli regrese) je vývojový diagram podobný binárnímu stromu, kde se v každém vnitřním uzlu rozhodne, který ze dvou podřízených uzlů bude pokračovat na základě jedné z hodnot funkcí ze vstupu. Na každém uzlu typu list se vrátí hodnota. V vnitřních uzlech je rozhodnutí založeno na testovacím x <= v, kde x je hodnota funkce ve vstupní ukázce a v je jednou z možných hodnot této funkce. Funkce, které lze vytvořit regresním stromem, jsou všechny konstantní funkce po kusu.
Soubor stromů je vytvořen výpočtem, v každém kroku regresní strom, který přibližuje přechod funkce ztráty a přidá ho do předchozího stromu s koeficienty, které minimalizují ztrátu nového stromu. Výstupem souboru vytvořeného mart 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í určité formy kalibrace.
- V případě problému s regresí je výstup predikovanou hodnotou funkce.
- V případě problému s řazením jsou instance seřazeny podle výstupní hodnoty souboru.
Další informace najdete tady:
- Wikipedie: Zvýšení přechodu (zvýšení gradientní strom).
- Aproximace funkce Greedy: Gradient boosting machine.
V části Viz také najdete odkazy na příklady použití.
Pole
| Name | Description |
|---|---|
| FeatureColumn |
Sloupec funkcí, který trenér očekává. (Zděděno od TrainerEstimatorBase<TTransformer,TModel>) |
| GroupIdColumn |
Volitelný sloupec groupID, který očekává trenér hodnocení. (Zděděno od TrainerEstimatorBaseWithGroupId<TTransformer,TModel>) |
| LabelColumn |
Sloupec popisku, který trenér očekává. Může to být |
| WeightColumn |
Váhový sloupec, který trenér očekává. Může být |
Vlastnosti
| Name | Description |
|---|---|
| Info |
Pro IEstimator<TTransformer> trénování modelu řazení rozhodovacího stromu pomocí FastTree. (Zděděno od FastTreeTrainerBase<TOptions,TTransformer,TModel>) |
Metody
| Name | Description |
|---|---|
| Fit(IDataView, IDataView) |
Trénuje FastTreeRankingTrainer pomocí trénovacích i ověřovacích dat, vrátí hodnotu RankingPredictionTransformer<TModel>. |
| Fit(IDataView) |
Vlaky a vrací .ITransformer (Zděděno od TrainerEstimatorBase<TTransformer,TModel>) |
| GetOutputSchema(SchemaShape) |
Pro IEstimator<TTransformer> trénování modelu řazení rozhodovacího stromu pomocí FastTree. (Zděděno od TrainerEstimatorBase<TTransformer,TModel>) |
Metody rozšíření
| Name | Description |
|---|---|
| AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Připojte kontrolní bod ukládání do mezipaměti do řetězu odhadce. Tím zajistíte, aby podřízené estimátory byly natrénovány proti datům uloženým v mezipaměti. Před průchodem více dat je užitečné mít kontrolní bod ukládání do mezipaměti. |
| WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Vzhledem k estimátoru vraťte objekt obtékání, který jednou zavolá delegáta Fit(IDataView) . Často je důležité, aby estimátor vrátil informace o tom, co bylo vhodné, což je důvod, proč Fit(IDataView) metoda vrací konkrétní typ objekt, spíše než jen obecný ITransformer. Ve stejnou dobu se však často vytvářejí do kanálů s mnoha objekty, takže možná budeme muset vytvořit řetěz odhadců prostřednictvím IEstimator<TTransformer> místa, kde odhadovač, EstimatorChain<TLastTransformer> pro který chceme získat transformátor, je někde v tomto řetězu. Pro tento scénář můžeme prostřednictvím této metody připojit delegáta, který bude volána po zavolání fit. |