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 párového klasifikátoru s více třídami, 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 typ klíče a sloupec funkce musí být známým vektorem Singlevelikosti .
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 větší pravděpodobnost spadá do přidružené třídy. Pokud má prvek i-th největší hodnotu, předpovězený index popisku by byl i. Všimněte si, že i je index založený na nule. |
PredictedLabel |
klíč typ | Index predikovaného popisku. Pokud je hodnota i, skutečný popisek by byl i-th kategorií ve vstupním typu popisku s hodnotou klíče. |
Charakteristiky trenéra
| Úloha strojového učení | Klasifikace s více třídami |
| Vyžaduje se normalizace? | Závisí na podkladovém binárním klasifikátoru. |
| Vyžaduje se ukládání do mezipaměti? | Ano |
| Požadovaný NuGet kromě Microsoft.ML | None |
| Exportovatelné do ONNX | No |
Podrobnosti trénovacího algoritmu
V této strategii se natrénuje binární klasifikační algoritmus pro každou dvojici tříd. Dvojice nejsou seřazené, ale vytvoří se s nahrazením: takže pokud by existovaly tři třídy, 0, 1, 2, trénovali bychom klasifikátory pro páry (0,0), (0,1), (0,2), (1,1), (1,2) a (2,2). Pro každý binární klasifikátor je vstupní datový bod považován za pozitivní příklad, pokud je v některé ze dvou tříd v páru, a jinak negativní 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é z tříd páru vzhledem k datům, a konečné prediktivní pravděpodobnosti z této třídy se počítají s ohledem na pravděpodobnost, že je příklad v libovolné dvojici.
To vám umožní zneužít trenéry, které nemají přirozeně vícetřídovou možnost, například pomocí FastTreeBinaryTrainer možnosti vyřešit problém 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 vícetřídovou možnost, 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 řešení problému s vícetřídami, vyžaduje, aby trenér ukládal mnohem zprostředkující stav ve formě historie L-BFGS pro všechny třídy současně, spíše než jen jeden po druhém, jak by bylo potřeba pro klasifikační model párové spojky.
Odkazy na příklady použití najdete v části Viz také.
Vlastnosti
| Name | Description |
|---|---|
| Info |
Pro IEstimator<TTransformer> trénování párového párového párového klasifikátoru s více třídami, který používá zadaný binární klasifikátor. (Zděděno od MetaMulticlassTrainer<TTransformer,TModel>) |
Metody
| Name | Description |
|---|---|
| Fit(IDataView) |
Odpovídá datům do transformátoru. |
| GetOutputSchema(SchemaShape) |
Získá výstupní sloupce. (Zděděno od MetaMulticlassTrainer<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. |