LinearSvmTrainer Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
que IEstimator<TTransformer> 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 etiqueta de entrada deben ser Boolean. Los datos de columna de características de entrada deben ser un vector conocido de Single. Este instructor genera las columnas siguientes:
| Nombre de columna de salida | Tipo de columna | Description |
|---|---|---|
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 puntuación positiva se asigna a true. |
Características del entrenador
| Tarea de aprendizaje automático | Clasificación binaria |
| ¿Se requiere normalización? | Yes |
| ¿Se requiere el almacenamiento en caché? | No |
| NuGet necesario además de Microsoft.ML | Ninguno |
| Exportable a ONNX | Yes |
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ística $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 los pasos de descenso de degradado estocástico y los pasos de proyección, introducidos en este documento por Shalev-Shwartz, Singer y Srebro.
Consulte la sección Ver también para obtener vínculos a ejemplos de uso.
Campos
| Nombre | Description |
|---|---|
| FeatureColumn |
Columna de características que el instructor espera. (Heredado de TrainerEstimatorBase<TTransformer,TModel>) |
| LabelColumn |
Columna de etiqueta que el entrenador espera. Puede ser |
| WeightColumn |
Columna de peso que espera el entrenador. Puede ser |
Propiedades
| Nombre | Description |
|---|---|
| Info |
que IEstimator<TTransformer> 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
| Nombre | Description |
|---|---|
| Fit(IDataView, LinearModelParameters) |
Continúa el entrenamiento de un OnlineLinearTrainer<TTransformer,TModel> mediante un objeto ya entrenado |
| Fit(IDataView) |
Entrena y devuelve un ITransformer. (Heredado de TrainerEstimatorBase<TTransformer,TModel>) |
| GetOutputSchema(SchemaShape) |
que IEstimator<TTransformer> 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
| Nombre | Description |
|---|---|
| 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 se ha ajustado, por lo que el Fit(IDataView) método devuelve un objeto específicamente tipado, 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. |