GamBinaryTrainer Classe

Définition

Pour IEstimator<TTransformer> l’entraînement d’un modèle de classification binaire avec des modèles additifs généralisés (GAM).

public sealed class GamBinaryTrainer : Microsoft.ML.Trainers.FastTree.GamTrainerBase<Microsoft.ML.Trainers.FastTree.GamBinaryTrainer.Options,Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.GamBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>,Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.GamBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>
type GamBinaryTrainer = class
    inherit GamTrainerBase<GamBinaryTrainer.Options, BinaryPredictionTransformer<CalibratedModelParametersBase<GamBinaryModelParameters, PlattCalibrator>>, CalibratedModelParametersBase<GamBinaryModelParameters, PlattCalibrator>>
Public NotInheritable Class GamBinaryTrainer
Inherits GamTrainerBase(Of GamBinaryTrainer.Options, BinaryPredictionTransformer(Of CalibratedModelParametersBase(Of GamBinaryModelParameters, PlattCalibrator)), CalibratedModelParametersBase(Of GamBinaryModelParameters, PlattCalibrator))
Héritage

Remarques

Pour créer ce formateur, utilisez Gam ou Gam(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.
Probability Single Probabilité calculée en calibrant le score d’avoir la valeur true comme étiquette. La valeur de probabilité est comprise dans la plage [0, 1].

Caractéristiques de l’entraîneur

Tâche d’apprentissage automatique Classification binaire
La normalisation est-elle nécessaire ? Non
La mise en cache est-elle requise ? Non
NuGet requis en plus de Microsoft.ML Microsoft.ML.FastTree
Exportable vers ONNX Non

Détails de l’algorithme d’apprentissage

Modèles additifs généralisés ou gaMs, modélisez les données sous la forme d’un ensemble de caractéristiques indépendantes linéairement similaires à un modèle linéaire. Pour chaque fonctionnalité, l’entraîneur GAM apprend une fonction non linéaire, appelée « fonction de forme », qui calcule la réponse comme fonction de la valeur de la fonctionnalité. (En revanche, un modèle linéaire correspond à une réponse linéaire (par exemple, une ligne) à chaque caractéristique.) Pour noter une entrée, les sorties de toutes les fonctions de forme sont additionnées et le score est la valeur totale.

Ce formateur GAM est mis en œuvre à l’aide d’arbres dégradés peu profonds (p. ex. des stumps d’arbre) pour apprendre des fonctions de forme non paramétriques, et est basé sur la méthode décrite dans Lou, Caruana et Gehrke. « Modèles intelligibles pour la classification et la régression ». KDD'12, Beijing, Chine. 2012. Après l’entraînement, un intercept est ajouté pour représenter la prédiction moyenne sur le jeu d’entraînement, et les fonctions de forme sont normalisées pour représenter l’écart par rapport à la prédiction moyenne. Cela entraîne l’interprétation simple des modèles en inspectant les fonctions d’interception et de forme. Consultez l’exemple ci-dessous pour obtenir un exemple d’apprentissage d’un modèle GAM et d’inspection et d’interprétation des résultats.

Consultez la section Voir aussi 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 l’entraîneur. Peut être null, ce qui indique que l’étiquette n’est pas utilisée pour l’entraînement.

(Hérité de TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Colonne de poids attendue par l’entraîneur. Peut être null, ce qui indique que le poids n’est pas utilisé pour l’entraînement.

(Hérité de TrainerEstimatorBase<TTransformer,TModel>)

Propriétés

Info

Pour IEstimator<TTransformer> l’entraînement d’un modèle de classification binaire avec des modèles additifs généralisés (GAM).

(Hérité de GamTrainerBase<TOptions,TTransformer,TPredictor>)

Méthodes

Fit(IDataView)

Effectue l’apprentissage et retourne un ITransformer.

(Hérité de TrainerEstimatorBase<TTransformer,TModel>)
Fit(IDataView, IDataView)

Effectue l’apprentissage d’une utilisation à la fois des données d’entraînement GamBinaryTrainer et de validation, retourne un BinaryPredictionTransformer<TModel>.

GetOutputSchema(SchemaShape)

Pour IEstimator<TTransformer> l’entraînement d’un modèle de classification binaire avec des modèles additifs généralisés (GAM).

(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 restrictions qui appellera un délégué une fois Fit(IDataView) appelé. Il est souvent important qu’un estimateur retourne des informations sur ce qui était 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 par EstimatorChain<TLastTransformer> le biais de 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é.

S’applique à

Voir aussi