Condividi tramite


FastTreeBinaryTrainer Classe

Definizione

Oggetto per il training di un modello di classificazione binaria dell'albero IEstimator<TTransformer> delle decisioni usando 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))
Ereditarietà

Commenti

Per creare questo trainer, usare FastTree o FastTree(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 trainer

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

Dettagli dell'algoritmo di training

FastTree è un'implementazione efficiente dell'algoritmo di aumento della sfumatura MART . L'incremento dei gradienti è una tecnica di apprendimento automatico per i problemi di regressione. Compila ogni albero di regressione in modo dettagliato, usando una funzione di perdita predefinita per misurare l'errore per ogni passaggio e correggerlo nel successivo. Questo modello di stima è quindi un insieme di modelli di stima più deboli. Nei problemi di regressione, aumentare la compilazione di una serie di tali alberi in modo dettagliato e quindi selezionare l'albero ottimale usando una funzione di perdita differenziabile arbitraria.

MART apprende un insieme di alberi di regressione, ovvero un albero decisionale con valori scalari nelle sue foglie. Un albero delle decisioni (o regressione) è un grafico di flusso ad albero binario, dove in ogni nodo interno uno decide quale dei due nodi figlio continuare in base a uno dei valori di funzionalità dell'input. In ogni nodo foglia viene restituito un valore. Nei nodi interni, la decisione si basa sul test x <= v dove x è il valore della funzionalità nell'esempio di input e v è uno dei valori possibili di questa funzionalità. Le funzioni che possono essere generate da un albero di regressione sono tutte le funzioni costanti a tratti.

L'insieme di alberi viene prodotto calcolando, in ogni passaggio, un albero di regressione che approssima la sfumatura della funzione di perdita e lo aggiunge all'albero precedente con coefficienti che riducono al minimo la perdita del nuovo albero. L'output dell'insieme prodotto da MART in un'istanza specifica è la somma degli output degli alberi.

  • In caso di problema di classificazione binaria, l'output viene convertito in una probabilità usando una forma di calibrazione.
  • In caso di problema di regressione, l'output è il valore stimato della funzione.
  • In caso di problema di classificazione, le istanze vengono ordinate dal valore di output dell'ensemble.

Per altre informazioni, vedere:

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>)
GroupIdColumn

Colonna groupID facoltativa prevista dal formatore di classificazione.

(Ereditato da TrainerEstimatorBaseWithGroupId<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 per il training di un modello di classificazione binaria dell'albero IEstimator<TTransformer> delle decisioni usando FastTree.

(Ereditato da FastTreeTrainerBase<TOptions,TTransformer,TModel>)

Metodi

Fit(IDataView, IDataView)

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

Fit(IDataView)

Esegue il training e restituisce un ITransformeroggetto .

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

Oggetto per il training di un modello di classificazione binaria dell'albero IEstimator<TTransformer> delle decisioni usando FastTree.

(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