GamBinaryTrainer Classe

Definizione

Oggetto IEstimator<TTransformer> per il training di un modello di classificazione binaria con modelli additivi generalizzati (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))
Ereditarietà

Commenti

Per creare questo formatore, usare Gam o Gam (Options).To create this trainer, use Gam or Gam(Options).

Colonne di input e output

I dati della colonna dell'etichetta di input devono essere Boolean. I dati delle colonne delle funzionalità di input devono essere un vettore di dimensioni note di Single.

Questo formatore restituisce le colonne seguenti:

Nome colonna di output Tipo di colonna Descrizione
Score Single Punteggio non associato calcolato dal modello.
PredictedLabel Boolean L'etichetta stimata, in base al segno del punteggio. Un punteggio negativo esegue il mapping a false e un punteggio negativo esegue il mapping a true.
Probability Single Probabilità calcolata calibrando il punteggio di avere true come etichetta. Il valore di probabilità è compreso nell'intervallo [0, 1].

Caratteristiche del formatore

Attività di Machine Learning Classificazione binaria
La normalizzazione è necessaria? No
La memorizzazione nella cache è necessaria? No
NuGet richiesto oltre a Microsoft.ML Microsoft.ML.FastTree
Esportabile in ONNX No

Dettagli algoritmo di training

Modelli additivi generalizzati o GAM modellano i dati come set di funzionalità indipendenti linearmente simili a un modello lineare. Per ogni funzionalità, il formatore GAM apprende una funzione non lineare, denominata "funzione shape", che calcola la risposta come funzione del valore della funzionalità. Al contrario, un modello lineare adatta una risposta lineare (ad esempio una linea) a ogni funzionalità. Per assegnare un punteggio a un input, gli output di tutte le funzioni della forma vengono sommati e il punteggio è il valore totale.

Questo formatore GAM viene implementato usando alberi con boosting sfumato superficiale (ad esempio gli stumpi ad albero) per apprendere le funzioni di forma nonparametrica ed è basato sul metodo descritto in Lou, Caruana e Gehrke. "Modelli intelligibili per la classificazione e la regressione". KDD'12, Pechino, Cina. 2012. Dopo il training, viene aggiunta un'intercettazione per rappresentare la stima media nel set di training e le funzioni della forma vengono normalizzate per rappresentare la deviazione dalla stima media. In questo modo si ottengono modelli che vengono facilmente interpretati semplicemente controllando l'intercetta e le funzioni della forma. Vedere l'esempio seguente per un esempio di come eseguire il training di un modello GAM ed esaminare e interpretare i risultati.

Vedere la sezione Vedere anche per i collegamenti ad esempi di utilizzo.

Campi

FeatureColumn

Colonna di funzionalità prevista dal formatore.

(Ereditato da TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Colonna dell'etichetta prevista dal formatore. Può essere null, che indica che l'etichetta non viene usata per il training.

(Ereditato da TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Colonna di peso prevista dal formatore. Può essere null, che indica che il peso non viene usato per il training.

(Ereditato da TrainerEstimatorBase<TTransformer,TModel>)

Proprietà

Info

Oggetto IEstimator<TTransformer> per il training di un modello di classificazione binaria con modelli additivi generalizzati (GAM).

(Ereditato da GamTrainerBase<TOptions,TTransformer,TPredictor>)

Metodi

Fit(IDataView)

Esegue il training e restituisce un oggetto ITransformer.

(Ereditato da TrainerEstimatorBase<TTransformer,TModel>)
Fit(IDataView, IDataView)

Esegue il training di un GamBinaryTrainer oggetto usando sia i dati di training che di convalida, restituisce un oggetto BinaryPredictionTransformer<TModel>.

GetOutputSchema(SchemaShape)

Oggetto IEstimator<TTransformer> per il training di un modello di classificazione binaria con modelli additivi generalizzati (GAM).

(Ereditato da TrainerEstimatorBase<TTransformer,TModel>)

Metodi di estensione

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

Aggiungere un "checkpoint di memorizzazione nella cache" alla catena di stima. Ciò garantisce che gli estimatori downstream vengano sottoposti a training in base ai dati memorizzati nella cache. È utile avere un checkpoint di memorizzazione nella cache prima che i formatori eseseguono più passaggi di dati.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

Dato un estimator, restituire un oggetto wrapping che chiamerà un delegato una volta Fit(IDataView) chiamato. È spesso importante che uno strumento di stima restituisca informazioni sull'adattamento, motivo per cui il Fit(IDataView) metodo restituisce un oggetto tipizzato in modo specifico, anziché solo un oggetto generale ITransformer. Tuttavia, allo stesso tempo, IEstimator<TTransformer> vengono spesso formati in pipeline con molti oggetti, quindi potrebbe essere necessario creare una catena di estimatori tramite EstimatorChain<TLastTransformer> dove lo strumento di stima per il quale si vuole ottenere il trasformatore è sepolto in una posizione in questa catena. Per questo scenario, è possibile collegare un delegato che verrà chiamato una volta chiamato fit.

Si applica a

Vedi anche