PairwiseCouplingTrainer 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í párového párového klasifikátoru více tříd, který používá zadaný binární klasifikátor.
public sealed class PairwiseCouplingTrainer : Microsoft.ML.Trainers.MetaMulticlassTrainer<Microsoft.ML.Data.MulticlassPredictionTransformer<Microsoft.ML.Trainers.PairwiseCouplingModelParameters>,Microsoft.ML.Trainers.PairwiseCouplingModelParameters>
type PairwiseCouplingTrainer = class
inherit MetaMulticlassTrainer<MulticlassPredictionTransformer<PairwiseCouplingModelParameters>, PairwiseCouplingModelParameters>
Public NotInheritable Class PairwiseCouplingTrainer
Inherits MetaMulticlassTrainer(Of MulticlassPredictionTransformer(Of PairwiseCouplingModelParameters), PairwiseCouplingModelParameters)
- Dědičnost
-
MetaMulticlassTrainer<MulticlassPredictionTransformer<PairwiseCouplingModelParameters>,PairwiseCouplingModelParameters>PairwiseCouplingTrainer
Poznámky
K vytvoření tohoto trenéra použijte PairwiseCoupling.
Vstupní a výstupní sloupce
Vstupní data sloupce popisku musí být klíčovým typem a sloupec funkce musí být vektorem Singleznámé velikosti .
Tento trenér vypíše následující sloupce:
Název výstupního sloupce | Typ sloupce | Description |
---|---|---|
Score |
Vektor Single | Skóre všech tříd. Vyšší hodnota znamená, že vyšší pravděpodobnost spadá do přidružené třídy. Pokud má prvek i-th největší hodnotu, bude predikovaný index popisku i. Všimněte si, že i je index založený na nule. |
PredictedLabel |
typ klíče | Index predikovaného popisku. Pokud je jeho hodnota i, skutečný popisek by byl i-th kategorie v typu vstupního popisku s hodnotou klíče. |
Charakteristiky trenéra
Úloha strojového učení | Vícetřídní klasifikace |
Vyžaduje se normalizace? | Závisí na podkladovém binárním klasifikátoru. |
Vyžaduje se ukládání do mezipaměti? | Yes |
Povinné nuGet kromě Microsoft.ML | Žádné |
Exportovatelný do ONNX | No |
Podrobnosti o trénovacím algoritmu
V této strategii se binární klasifikační algoritmus natrénuje na jednotlivých dvojicích tříd. Dvojice nejsou seřazené, ale vytvoří se s nahrazením: takže pokud existují tři třídy, 0, 1, 2, vytrénujeme klasifikátory pro páry (0,0), (0,1), (0,2), (1,1), (1,2) a (2,2). U každého binárního klasifikátoru se vstupní datový bod považuje za pozitivní příklad, pokud je v některé ze dvou tříd v páru, a v opačném případě se jedná o záporný příklad. V době předpovědi se pravděpodobnosti pro každou dvojici tříd považují za pravděpodobnost, že je v některé třídě páru daná data, a konečné prediktivní pravděpodobnosti z této třídy se počítají vzhledem k pravděpodobnosti, že příklad je v libovolném páru.
To vám umožní využít trenéry, kteří nemají přirozeně vícetřídovou možnost, například pomocí FastTreeBinaryTrainer příkazu k vyřešení problému s více třídami. Alternativně může ML.NET umožnit řešení "jednoduššího" problému i v případech, kdy má trenér možnost multitřídy, ale použití přímo není praktické z důvodu, obvykle omezení paměti. Zatímco logistická regrese s více třídami je spíše principiálnější způsob, jak vyřešit problém s více třídami, vyžaduje, aby trenér ukládaly mnohem zprostředkující stav ve formě historie L-BFGS pro všechny třídy současně, a ne jen jeden po druhém, jak by bylo potřeba pro model klasifikace párových spojek.
V části Viz také najdete odkazy na příklady použití.
Vlastnosti
Info |
Pro IEstimator<TTransformer> trénování párového párového klasifikátoru více tříd, který používá zadaný binární klasifikátor. (Zděděno od MetaMulticlassTrainer<TTransformer,TModel>) |
Metody
Fit(IDataView) |
Zapadá data do transformátoru. |
GetOutputSchema(SchemaShape) |
Získá výstupní sloupce. (Zděděno od MetaMulticlassTrainer<TTransformer,TModel>) |
Metody rozšíření
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Připojte k řetězci odhadu kontrolní bod ukládání do mezipaměti. Tím zajistíte, aby se podřízené estimátory natrénovaly na data uložená 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>) |
Pokud získáte odhadátor, vraťte obtékání objektu, 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ě zadaný objekt, a 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ězec odhadovačů prostřednictvím EstimatorChain<TLastTransformer> toho, kde je odhadovač, IEstimator<TTransformer> pro který chceme získat transformátor, uložen 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 volání fit. |