FastTreeBinaryTrainer Clase

Definición

para IEstimator<TTransformer> entrenar un modelo de clasificación binaria de árbol de decisión mediante 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))
Herencia

Comentarios

Para crear este instructor, use FastTree o FastTree(Options).

Columnas de entrada y salida

Los datos de la columna de etiquetas de entrada deben ser Boolean. Los datos de columna de las características de entrada deben ser un vector de tamaño conocido de Single.

Este instructor genera las siguientes columnas:

Nombre de columna de salida Tipo de columna Descripción
Score Single Puntuación sin enlazar calculada por el modelo.
PredictedLabel Boolean Etiqueta de predicción, según el signo de la puntuación. Una puntuación negativa se asigna a false y una positiva a true.
Probability Single Probabilidad calculada mediante la calibración de la puntuación de tener true como etiqueta. El valor de probabilidad está en el intervalo [0, 1].

Características del entrenador

Tarea de Machine Learning Clasificación binaria
¿Se requiere normalización? No
¿Se requiere el almacenamiento en caché? No
NuGet necesario además de Microsoft.ML Microsoft.ML.FastTree
Exportable a ONNX

Detalles del algoritmo de entrenamiento

FastTree es una implementación eficaz del algoritmo de potenciación de gradiente MART . La potenciación del gradiente es una técnica de aprendizaje automático para problemas de regresión. Genera cada árbol de regresión de forma gradual, usando una función de pérdida predefinida para medir el error en cada paso y corregirlo en el siguiente. Por tanto, el modelo de predicción es en realidad un conjunto de modelos de predicción más débiles. En los problemas de regresión, la potenciación genera una serie de árboles por pasos y, después, selecciona el árbol óptimo mediante una función arbitraria de pérdida diferenciable.

MART aprende un conjunto de árboles de regresión, que es un árbol de decisión con valores escalares en las hojas. Un árbol de decisión (o regresión) es un diagrama de flujo de árbol binario, donde, en cada nodo interior, uno decide con cuál de los dos nodos secundarios continuar, en función del valor de una de las características de entrada. En cada nodo hoja, se devuelve un valor. En los nodos interiores, la decisión se basa en la prueba x <= v, donde x es el valor de la característica en el ejemplo de entrada y v es uno de los valores posibles de esta característica. Las funciones que puede producir un árbol de regresión son todas las funciones constantes definidas a trozos.

El conjunto de árboles se genera calculando, en cada paso, un árbol de regresión que aproxima el gradiente de la función de pérdida y agregándolo al árbol anterior con coeficientes que minimizan la pérdida del nuevo árbol. La salida del conjunto generado por MART en una instancia determinada es la suma de las salidas del árbol.

  • Si hay algún problema de clasificación binaria, la salida se convierte en una probabilidad usando alguna forma de calibración.
  • En el caso de un problema de regresión, la salida es el valor predicho de la función.
  • Si hay un problema de clasificación, las instancias se ordenan por el valor de salida del conjunto.

Para obtener más información, consulte:

Consulte la sección Consulte también los vínculos a ejemplos de uso.

Campos

FeatureColumn

Columna de características que espera el instructor.

(Heredado de TrainerEstimatorBase<TTransformer,TModel>)
GroupIdColumn

Columna groupID opcional que esperan los instructores de clasificación.

(Heredado de TrainerEstimatorBaseWithGroupId<TTransformer,TModel>)
LabelColumn

Columna de etiqueta que espera el instructor. Puede ser null, que indica que la etiqueta no se usa para el entrenamiento.

(Heredado de TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Columna de peso que espera el entrenador. Puede ser null, lo que indica que el peso no se usa para el entrenamiento.

(Heredado de TrainerEstimatorBase<TTransformer,TModel>)

Propiedades

Info

para IEstimator<TTransformer> entrenar un modelo de clasificación binaria de árbol de decisión mediante FastTree.

(Heredado de FastTreeTrainerBase<TOptions,TTransformer,TModel>)

Métodos

Fit(IDataView, IDataView)

Entrena un FastTreeBinaryTrainer mediante datos de entrenamiento y validación, devuelve un BinaryPredictionTransformer<TModel>.

Fit(IDataView)

Entrena y devuelve un ITransformer.

(Heredado de TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

para IEstimator<TTransformer> entrenar un modelo de clasificación binaria de árbol de decisión mediante FastTree.

(Heredado de TrainerEstimatorBase<TTransformer,TModel>)

Métodos de extensión

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

Anexe un "punto de control de almacenamiento en caché" a la cadena del estimador. Esto garantizará que los estimadores de nivel inferior se entrenarán con los datos almacenados en caché. Resulta útil tener un punto de control de almacenamiento en caché antes de que los instructores tomen varios pases de datos.

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

Dado un estimador, devuelva un objeto de ajuste que llamará a un delegado una vez Fit(IDataView) que se llame. A menudo, es importante que un estimador devuelva información sobre lo que cabe, por lo que el Fit(IDataView) método devuelve un objeto con tipo específico, en lugar de simplemente un general ITransformer. Sin embargo, al mismo tiempo, IEstimator<TTransformer> a menudo se forman en canalizaciones con muchos objetos, por lo que es posible que tengamos que crear una cadena de estimadores a través EstimatorChain<TLastTransformer> de donde el estimador para el que queremos obtener el transformador está enterrado en algún lugar de esta cadena. En ese escenario, podemos a través de este método adjuntar un delegado al que se llamará una vez que se llame a fit.

Se aplica a

Consulte también