LinearSvmTrainer Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
O IEstimator<TTransformer> modelo de classificação binária linear treinado com o SVM Linear para prever um destino usando um modelo de classificação binária linear.
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)
- Herança
Comentários
Para criar esse treinador, use LinearSvm ou LinearSvm(Options)..
Colunas de entrada e saída
Os dados da coluna de rótulo de entrada devem ser Boolean. Os dados da coluna de recursos de entrada devem ser um vetor de tamanho conhecido de Single. Este treinador gera as seguintes colunas:
Nome da Coluna de Saída | Tipo de coluna | Descrição |
---|---|---|
Score |
Single | A pontuação não associada calculada pelo modelo. |
PredictedLabel |
Boolean | O rótulo previsto com base no sinal da pontuação. Uma pontuação negativa é mapeada para false e uma pontuação positiva é mapeada para true . |
Características do Treinador
Ferramenta de machine learning | Classificação binária |
A normalização é necessária? | Sim |
O cache é necessário? | No |
NuGet necessário além de Microsoft.ML | Nenhum |
Exportável para ONNX | Sim |
Detalhes do algoritmo de treinamento
O SVM Linear implementa um algoritmo que localiza um hiperplano no espaço de recursos para classificação binária, resolvendo um problema de SVM. Por exemplo, com valores de recurso $f_0, f_1,..., f_{D-1}$, a previsão é fornecida determinando em que lado do hiperplano o ponto se enquadra. Isso é o mesmo que o sinal da soma ponderada das feautures, ou seja, $\sum_{i = 0}^{D-1} \left(w_i * f_i \right) + b$, onde $w_0, w_1,..., w_{D-1}$ são os pesos calculados pelo algoritmo e $b$ é o viés calculado pelo algoritmo.
O SVM Linear implementa o método PEGASOS, que alterna entre etapas de descida de gradiente e etapas de projeção estocásticas, introduzidas neste artigo por Shalev-Shwartz, Singer e Srebro.
Verifique a seção Consulte Também para obter links para exemplos de uso.
Campos
FeatureColumn |
A coluna de recursos que o treinador espera. (Herdado de TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
A coluna de rótulo que o treinador espera. Pode ser |
WeightColumn |
A coluna de peso que o treinador espera. Pode ser |
Propriedades
Info |
O IEstimator<TTransformer> modelo de classificação binária linear treinado com o SVM Linear para prever um destino usando um modelo de classificação binária linear. (Herdado de OnlineLinearTrainer<TTransformer,TModel>) |
Métodos
Fit(IDataView, LinearModelParameters) |
Continua o treinamento de um usando um OnlineLinearTrainer<TTransformer,TModel> já treinado |
Fit(IDataView) |
Treina e retorna um ITransformer. (Herdado de TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
O IEstimator<TTransformer> modelo de classificação binária linear treinado com o SVM Linear para prever um destino usando um modelo de classificação binária linear. (Herdado de TrainerEstimatorBase<TTransformer,TModel>) |
Métodos de Extensão
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Acrescente um "ponto de verificação de cache" à cadeia de estimativas. Isso garantirá que os estimadores downstream serão treinados em relação aos dados armazenados em cache. É útil ter um ponto de verificação de cache antes dos treinadores que fazem várias passagens de dados. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Dado um estimador, retorne um objeto de encapsulamento que chamará um delegado uma vez Fit(IDataView) chamado. Geralmente, é importante que um estimador retorne informações sobre o que estava em forma, e é por isso que o Fit(IDataView) método retorna um objeto especificamente tipado, em vez de apenas um geral ITransformer. No entanto, ao mesmo tempo, IEstimator<TTransformer> muitas vezes são formados em pipelines com muitos objetos, portanto, talvez seja necessário construir uma cadeia de estimadores por meio EstimatorChain<TLastTransformer> de onde o estimador para o qual queremos que o transformador seja enterrado em algum lugar nesta cadeia. Para esse cenário, podemos por meio desse método anexar um delegado que será chamado quando fit for chamado. |