FastTreeBinaryTrainer 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> entraîner un modèle de classification binaire d’arborescence de décision à l’aide de FastTree.
public sealed class FastTreeBinaryTrainer : Microsoft.ML.Trainers.FastTree.BoostingFastTreeTrainerBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryTrainer.Options,Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>,Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>
type FastTreeBinaryTrainer = class
inherit BoostingFastTreeTrainerBase<FastTreeBinaryTrainer.Options, BinaryPredictionTransformer<CalibratedModelParametersBase<FastTreeBinaryModelParameters, PlattCalibrator>>, CalibratedModelParametersBase<FastTreeBinaryModelParameters, PlattCalibrator>>
Public NotInheritable Class FastTreeBinaryTrainer
Inherits BoostingFastTreeTrainerBase(Of FastTreeBinaryTrainer.Options, BinaryPredictionTransformer(Of CalibratedModelParametersBase(Of FastTreeBinaryModelParameters, PlattCalibrator)), CalibratedModelParametersBase(Of FastTreeBinaryModelParameters, PlattCalibrator))
- Héritage
Remarques
Pour créer ce formateur, utilisez FastTree ou FastTree(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 | La probabilité calculée en calibrant le score d’avoir true comme étiquette. La valeur de probabilité est dans la plage [0, 1]. |
Caractéristiques de l’entraîneur
Tâche d’apprentissage automatique | Classification binaire |
La normalisation est-elle requise ? | Non |
La mise en cache est-elle requise ? | Non |
NuGet requis en plus de Microsoft.ML | Microsoft.ML.FastTree |
Exportable vers ONNX | Oui |
Détails de l’algorithme d’apprentissage
FastTree est une implémentation efficace de l’algorithme de renforcement de dégradé MART . Le boosting de gradient est une technique d’apprentissage automatique pour les problèmes de régression. Il génère chaque arbre de régression de manière progressive, en utilisant une fonction de perte prédéfinie pour mesurer l'erreur à chaque étape et la corriger à la suivante. Par conséquent, ce modèle de prédiction est en fait un ensemble de modèles de prédiction plus faibles. Dans les problèmes de régression, le boosting génère une série d’arborescences de ce type par étapes, puis sélectionne l’arbre optimal à l’aide d’une fonction de perte dérivable arbitraire.
MART apprend un ensemble d’arbres de régression qui est un arbre de décision dont les feuilles contiennent des valeurs scalaires. Un arbre de décision (ou de régression) est un graphique de flux binaire de forme arborescente où, à chaque nœud intérieur, quelqu'un choisir l’un des deux nœuds enfants vers lesquels continuer, en fonction de la valeur de l'une des caractéristiques de l'entrée. Au niveau de chaque nœud terminal, une valeur est retournée. Dans les nœuds intérieurs, la décision est basée sur le test x <= v où x est la valeur de la fonctionnalité dans l’exemple d’entrée et v est l’une des valeurs possibles de cette fonctionnalité. Les fonctions qui peuvent être générées par un arbre de régression sont toutes les fonctions de constante successives.
L’ensemble d’arbres est obtenu en calculant à chaque étape un arbre de régression qui est une approximation du gradient de la fonction de perte et en l’ajoutant à l’arbre précédent avec des coefficients qui minimisent la perte du nouvel arbre. La sortie de l'ensemble produit par MART sur une instance donnée est la somme des sorties d'arborescence.
- En cas de problème de classification binaire, la sortie est convertie en probabilité à l'aide d'une forme d'étalonnage.
- En cas de problème de régression, la sortie est la valeur prédite de la fonction.
- En cas de problème de classement, les instances sont classées par la valeur de sortie de l’ensemble.
Pour plus d’informations, consultez les pages suivantes :
- Wikipédia : Boosting dégradé (boosting de l’arbre dégradé).
- Estimation de fonction gourmande : machine à boosting de gradient.
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>) |
GroupIdColumn |
Colonne groupID facultative attendue par les formateurs de classement. (Hérité de TrainerEstimatorBaseWithGroupId<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> entraîner un modèle de classification binaire d’arborescence de décision à l’aide de FastTree. (Hérité de FastTreeTrainerBase<TOptions,TTransformer,TModel>) |
Méthodes
Fit(IDataView, IDataView) |
Effectue l’apprentissage à FastTreeBinaryTrainer l’aide de données d’entraînement et de validation, retourne un BinaryPredictionTransformer<TModel>. |
Fit(IDataView) |
Entraîne et retourne un ITransformer. (Hérité de TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
Pour IEstimator<TTransformer> entraîner un modèle de classification binaire d’arborescence de décision à l’aide de FastTree. (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é. |