Compartir a través de


LinearSvmTrainer Clase

Definición

IEstimator<TTransformer> que se va a predecir un destino mediante un modelo de clasificación binaria lineal entrenado con SVM lineal.

public sealed class LinearSvmTrainer : Microsoft.ML.Trainers.OnlineLinearTrainer<Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Trainers.LinearBinaryModelParameters>,Microsoft.ML.Trainers.LinearBinaryModelParameters>
type LinearSvmTrainer = class
    inherit OnlineLinearTrainer<BinaryPredictionTransformer<LinearBinaryModelParameters>, LinearBinaryModelParameters>
Public NotInheritable Class LinearSvmTrainer
Inherits OnlineLinearTrainer(Of BinaryPredictionTransformer(Of LinearBinaryModelParameters), LinearBinaryModelParameters)
Herencia

Comentarios

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

Columnas de entrada y salida

Los datos de la columna de etiquetas de entrada deben ser Boolean. Los datos de columna de 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.

Características del entrenador

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

Detalles del algoritmo de entrenamiento

Linear SVM implementa un algoritmo que encuentra un hiperplano en el espacio de características para la clasificación binaria mediante la resolución de un problema de SVM. Por ejemplo, con los valores de características $f_0, f_1,..., f_{D-1}$, la predicción se da al determinar en qué lado del hiperplano entra el punto. Es lo mismo que el signo de la suma ponderada de las feautures, es decir, $\sum_{i = 0}^{D-1} \left(w_i * f_i \right) + b$, donde $w_0, w_1,..., w_{D-1}$ son los pesos calculados por el algoritmo y $b$ es el sesgo calculado por el algoritmo.

Linear SVM implementa el método PEGASOS, que alterna entre pasos de descenso de degradado estocástico y pasos de proyección, introducidos en este documento por Shalev-Shwartz, Singer y Srebro.

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

IEstimator<TTransformer> que se va a predecir un destino mediante un modelo de clasificación binaria lineal entrenado con SVM lineal.

(Heredado de OnlineLinearTrainer<TTransformer,TModel>)

Métodos

Fit(IDataView, LinearModelParameters)

Continúa el entrenamiento de un OnlineLinearTrainer<TTransformer,TModel> objeto mediante un objeto ya entrenado modelParameters y devuelve un ITransformer.

(Heredado de OnlineLinearTrainer<TTransformer,TModel>)
Fit(IDataView)

Entrena y devuelve un ITransformerobjeto .

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

IEstimator<TTransformer> que se va a predecir un destino mediante un modelo de clasificación binaria lineal entrenado con SVM lineal.

(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 bajada se entrenarán con 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) . 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 se enterró 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