LinearSvmTrainer Třída

Definice

Predikce IEstimator<TTransformer> cíle pomocí lineárního binárního klasifikačního modelu natrénovaného lineárním SVM

public sealed class LinearSvmTrainer : Microsoft.ML.Trainers.OnlineLinearTrainer<Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Trainers.LinearBinaryModelParameters>,Microsoft.ML.Trainers.LinearBinaryModelParameters>
type LinearSvmTrainer = class
    inherit OnlineLinearTrainer<BinaryPredictionTransformer<LinearBinaryModelParameters>, LinearBinaryModelParameters>
Public NotInheritable Class LinearSvmTrainer
Inherits OnlineLinearTrainer(Of BinaryPredictionTransformer(Of LinearBinaryModelParameters), LinearBinaryModelParameters)
Dědičnost

Poznámky

K vytvoření tohoto trenéra použijte LinearSvm nebo LinearSvm(Options).

Vstupní a výstupní sloupce

Vstupní data sloupce štítku musí být Boolean. Vstupními funkcemi musí být data sloupců známým vektorem Singlevelikosti . Tento trenér vypíše následující sloupce:

Název výstupního sloupce Typ sloupce Description
Score Single Nevázané skóre, které model vypočítal.
PredictedLabel Boolean Předpovězený popisek, který je založen na znaménku skóre. Záporné skóre se mapuje na false a pozitivní skóre se mapuje na true.

Charakteristiky trenéra

Úloha strojového učení Binární klasifikace
Vyžaduje se normalizace? Ano
Vyžaduje se ukládání do mezipaměti? No
Požadovaný NuGet kromě Microsoft.ML None
Exportovatelné do ONNX Ano

Podrobnosti trénovacího algoritmu

Lineární SVM implementuje algoritmus, který najde v prostoru funkcí hyperplane pro binární klasifikaci tím, že vyřeší problém SVM. Například s hodnotami funkcí $f_0, f_1,..., f_{D-1}$, je předpověď dána určením strany nadrovnice, do které části bodu spadá. To je stejné jako znaménko váženého součtu feauture, tj. $\sum_{i = 0}^{D-1} \left(w_i * f_i \right) + b$, kde $w_0, w_1,..., w_{D-1}$ jsou váhy vypočítané algoritmem a $b$ je odchylka vypočítaná algoritmem.

Lineární SVM implementuje metodu PEGASOS, která se střídá mezi stochastickým gradientním sestupem a projekčními kroky, představenými v tomto dokumentu Shalev-Shwartz, Singer a Srebro.

Odkazy na příklady použití najdete v části Viz také.

Pole

Name Description
FeatureColumn

Sloupec funkcí, který trenér očekává.

(Zděděno od TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Sloupec popisku, který trenér očekává. Může to být null, což označuje, že popisek se nepoužívá pro trénování.

(Zděděno od TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Váhový sloupec, který trenér očekává. Může být null, což označuje, že hmotnost není použita pro trénování.

(Zděděno od TrainerEstimatorBase<TTransformer,TModel>)

Vlastnosti

Name Description
Info

Predikce IEstimator<TTransformer> cíle pomocí lineárního binárního klasifikačního modelu natrénovaného lineárním SVM

(Zděděno od OnlineLinearTrainer<TTransformer,TModel>)

Metody

Name Description
Fit(IDataView, LinearModelParameters)

Pokračuje v trénování OnlineLinearTrainer<TTransformer,TModel> pomocí již natrénovaného modelParameters a vrátí hodnotu ITransformer.

(Zděděno od OnlineLinearTrainer<TTransformer,TModel>)
Fit(IDataView)

Vlaky a vrací .ITransformer

(Zděděno od TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

Predikce IEstimator<TTransformer> cíle pomocí lineárního binárního klasifikačního modelu natrénovaného lineárním SVM

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

Platí pro

Viz také