Condividi tramite


GamRegressionTrainer Classe

Definizione

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

public sealed class GamRegressionTrainer : Microsoft.ML.Trainers.FastTree.GamTrainerBase<Microsoft.ML.Trainers.FastTree.GamRegressionTrainer.Options,Microsoft.ML.Data.RegressionPredictionTransformer<Microsoft.ML.Trainers.FastTree.GamRegressionModelParameters>,Microsoft.ML.Trainers.FastTree.GamRegressionModelParameters>
type GamRegressionTrainer = class
    inherit GamTrainerBase<GamRegressionTrainer.Options, RegressionPredictionTransformer<GamRegressionModelParameters>, GamRegressionModelParameters>
Public NotInheritable Class GamRegressionTrainer
Inherits GamTrainerBase(Of GamRegressionTrainer.Options, RegressionPredictionTransformer(Of GamRegressionModelParameters), GamRegressionModelParameters)
Ereditarietà

Commenti

Per creare questo trainer, usare Gam o Gam(Options).

Colonne di input e output

I dati della colonna dell'etichetta di input devono essere Single. 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 stimato dal modello.

Caratteristiche del trainer

Attività di Machine Learning Regressione
È necessaria la normalizzazione? No
È necessaria la memorizzazione nella cache? No
NuGet richiesto oltre a Microsoft.ML Microsoft.ML.FastTree
Esportabile in ONNX No

Dettagli dell'algoritmo di training

Modelli additivi generalizzati o GAMs, modellare i dati come set di funzionalità linearmente indipendenti simili a un modello lineare. Per ogni funzionalità, il trainer GAM apprende una funzione non lineare, denominata "funzione forma", che calcola la risposta come funzione del valore della funzionalità. Invece, un modello lineare si adatta a 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 sfumatura superficiale (ad esempio gli stub ad albero) per imparare le funzioni di forma nonparametrica e si basa sul metodo descritto in Lou, Caruana e Gehrke. "Modelli intelligibile per la classificazione e la regressione". KDD'12, Pechino, Cina. 2012. Dopo il training, viene aggiunta un'intercetta per rappresentare la stima media del set di training e le funzioni della forma vengono normalizzate per rappresentare la deviazione dalla stima media. Ciò comporta 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.

Controllare la sezione Vedere anche per i collegamenti ad esempi dell'utilizzo.

Campi

FeatureColumn

Colonna di funzionalità prevista dal trainer.

(Ereditato da TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Colonna etichetta prevista dal trainer. 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 trainer. 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 regressione con modelli additivi generalizzati (GAM).

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

Metodi

Fit(IDataView, IDataView)

Esegue il training di un oggetto GamRegressionTrainer usando i dati di training e di convalida, restituisce un RegressionPredictionTransformer<TModel>oggetto .

Fit(IDataView)

Esegue il training e restituisce un ITransformeroggetto .

(Ereditato da TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

Oggetto IEstimator<TTransformer> per il training di un modello di regressione 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 sui dati memorizzati nella cache. È utile avere un checkpoint di memorizzazione nella cache prima dei training che accettano più passaggi di dati.

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

Dato un stimatore, restituire un oggetto wrapping che chiamerà un delegato una volta Fit(IDataView) chiamato. Spesso è importante che un stimatore restituisca informazioni su ciò che è stato adatto, che è il 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> sono spesso formati in pipeline con molti oggetti, quindi potrebbe essere necessario creare una catena di stima tramite EstimatorChain<TLastTransformer> dove lo stimatore per cui si vuole ottenere il trasformatore è sepolto da qualche parte in questa catena. Per questo scenario, è possibile collegare questo metodo a un delegato che verrà chiamato una volta chiamato fit.

Si applica a

Vedi anche