FastForestBinaryTrainer Classe

Définition

Pour IEstimator<TTransformer> entraîner un modèle de classification binaire d’arbre de décision à l’aide de Fast Forest.

public sealed class FastForestBinaryTrainer : Microsoft.ML.Trainers.FastTree.RandomForestTrainerBase<Microsoft.ML.Trainers.FastTree.FastForestBinaryTrainer.Options,Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Trainers.FastTree.FastForestBinaryModelParameters>,Microsoft.ML.Trainers.FastTree.FastForestBinaryModelParameters>
type FastForestBinaryTrainer = class
    inherit RandomForestTrainerBase<FastForestBinaryTrainer.Options, BinaryPredictionTransformer<FastForestBinaryModelParameters>, FastForestBinaryModelParameters>
Public NotInheritable Class FastForestBinaryTrainer
Inherits RandomForestTrainerBase(Of FastForestBinaryTrainer.Options, BinaryPredictionTransformer(Of FastForestBinaryModelParameters), FastForestBinaryModelParameters)
Héritage

Remarques

Pour créer ce formateur, utilisez FastForest ou FastForest(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.

Cet entraîneur génère les colonnes suivantes :

Nom de la 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 et 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 Machine Learning 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 Oui

Détails de l’algorithme d’apprentissage

Les arbres de décision sont des modèles non paramétriques qui effectuent une séquence de tests simples sur les entrées. Cette procédure de décision les mappe aux sorties trouvées dans le jeu de données d’entraînement dont les entrées étaient similaires à l’instance en cours de traitement. Une décision est prise à chaque nœud de la structure de données d’arborescence binaire en fonction d’une mesure de similarité qui mappe chaque instance de manière récursive à travers les branches de l’arbre jusqu’à ce que le nœud feuille approprié soit atteint et que la décision de sortie retournée.

Les arbres de décision présentent plusieurs avantages :

  • Ils sont efficaces à la fois dans le calcul et l’utilisation de la mémoire pendant l’entraînement et la prédiction.
  • Ils peuvent représenter des limites de décision non linéaires.
  • Ils effectuent une sélection et une classification de fonctionnalités intégrées.
  • Elles sont résilientes en présence de caractéristiques bruyantes.

La forêt rapide est une implémentation de forêt aléatoire. Le modèle se compose d’un ensemble d’arbres de décision. Chaque arbre d’une forêt décisionnelle génère une distribution gaussienne par prédiction. Une agrégation est effectuée sur l’ensemble d’arbres pour trouver une distribution gaussienne la plus proche de la distribution combinée pour tous les arbres du modèle. Ce classifieur de forêt de décision se compose d’un ensemble d’arbres de décision.

En règle générale, les modèles d’ensemble offrent une meilleure couverture et une meilleure précision que des arbres de décision uniques. Chaque arbre d’une forêt décisionnelle génère une distribution gaussienne.

Pour plus d’informations, consultez :

Consultez la section Voir aussi pour obtenir des liens vers des exemples d’utilisation.

Champs

Nom Description
FeatureColumn

Colonne de fonctionnalités 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 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

Nom Description
Info

Pour IEstimator<TTransformer> entraîner un modèle de classification binaire d’arbre de décision à l’aide de Fast Forest.

(Hérité de FastTreeTrainerBase<TOptions,TTransformer,TModel>)

Méthodes

Nom Description
Fit(IDataView, IDataView)

Effectue l’apprentissage à FastForestBinaryTrainer l’aide de données d’entraînement et de validation, retourne un BinaryPredictionTransformer<TModel>.

Fit(IDataView)

Effectue l’apprentissage et retourne un ITransformer.

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

Pour IEstimator<TTransformer> entraîner un modèle de classification binaire d’arbre de décision à l’aide de Fast Forest.

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

Méthodes d’extension

Nom Description
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>)

En fonction d’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 pour un estimateur de retourner 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 devrons peut-être construire 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é.

S’applique à

Voir aussi