LinearSvmTrainer Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Pour IEstimator<TTransformer> prédire une cible à l’aide d’un modèle de classification binaire linéaire entraîné avec la machine virtuelle SVM linéaire.
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)
- Héritage
Remarques
Pour créer ce formateur, utilisez LinearSvm ou LinearSvm(Options).
Colonnes d’entrée et de sortie
Les données de la colonne d’étiquettes d’entrée doivent être Boolean. Les données de colonne des caractéristiques d’entrée doivent être un vecteur de taille connue de Single. Ce formateur génère les colonnes suivantes :
Nom de colonne de sortie | Type de colonne | Description |
---|---|---|
Score |
Single | Score non lié calculé par le modèle. |
PredictedLabel |
Boolean | Étiquette prédite, en fonction du signe du score. Un score négatif est mappé à false , tandis qu’un score positif est mappé à true . |
Caractéristiques de l’entraîneur
Tâche d’apprentissage automatique | Classification binaire |
La normalisation est-elle requise ? | Oui |
La mise en cache est-elle requise ? | Non |
NuGet requis en plus de Microsoft.ML | Aucun |
Exportable vers ONNX | Oui |
Détails de l’algorithme d’apprentissage
La machine virtuelle SVM linéaire implémente un algorithme qui recherche un hyperplane dans l’espace de fonctionnalité pour la classification binaire, en résolvant un problème SVM. Par exemple, avec des valeurs de fonctionnalité $f_0, f_1,..., f_{D-1}$, la prédiction est donnée en déterminant quel côté de l’hyperplane le point tombe. C’est le même que le signe de la somme pondérée des feautures, c’est-à-dire $\sum_{i = 0}^{D-1} \left(w_i * f_i \right) + b$, où $w_0, w_1,..., w_{D-1}$ sont les poids calculés par l’algorithme, et $b$ est le biais calculé par l’algorithme.
La SVM linéaire implémente la méthode PEGASOS, qui alterne entre les étapes de descente de dégradé stochastique et les étapes de projection, introduites dans ce document par Shalev-Shwartz, Singer et Srebro.
Consultez la section Voir également pour obtenir des liens vers des exemples d’utilisation.
Champs
FeatureColumn |
Colonne de caractéristique attendue par l’entraîneur. (Hérité de TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
Colonne d’étiquette attendue par le formateur. Peut être |
WeightColumn |
Colonne de poids attendue par l’entraîneur. Peut être |
Propriétés
Info |
Pour IEstimator<TTransformer> prédire une cible à l’aide d’un modèle de classification binaire linéaire entraîné avec la machine virtuelle SVM linéaire. (Hérité de OnlineLinearTrainer<TTransformer,TModel>) |
Méthodes
Fit(IDataView, LinearModelParameters) |
Poursuit la formation d’un OnlineLinearTrainer<TTransformer,TModel> utilisateur déjà formé |
Fit(IDataView) |
Entraîne et retourne un ITransformer. (Hérité de TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
Pour IEstimator<TTransformer> prédire une cible à l’aide d’un modèle de classification binaire linéaire entraîné avec la machine virtuelle SVM linéaire. (Hérité de TrainerEstimatorBase<TTransformer,TModel>) |
Méthodes d’extension
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Ajoutez un « point de contrôle de mise en cache » à la chaîne d’estimateur. Cela garantit que les estimateurs en aval seront entraînés par rapport aux données mises en cache. Il est utile d’avoir un point de contrôle de mise en cache avant les formateurs qui prennent plusieurs passes de données. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Étant donné un estimateur, retournez un objet de création de package de package qui appellera un délégué une fois Fit(IDataView) appelé. Il est souvent important pour un estimateur de retourner des informations sur ce qui a été adapté, c’est pourquoi la Fit(IDataView) méthode retourne un objet spécifiquement typé, plutôt que simplement un général ITransformer. Toutefois, en même temps, IEstimator<TTransformer> sont souvent formés en pipelines avec de nombreux objets. Nous pouvons donc avoir besoin de créer une chaîne d’estimateurs via EstimatorChain<TLastTransformer> laquelle l’estimateur pour lequel nous voulons obtenir le transformateur est enterré quelque part dans cette chaîne. Pour ce scénario, nous pouvons par le biais de cette méthode attacher un délégué qui sera appelé une fois l’ajustement appelé. |