Partilhar via


NaiveBayesMulticlassTrainer Classe

Definição

Para IEstimator<TTransformer> treinar um modelo Naive Bayes de várias classes que dá suporte a valores de recursos binários.

public sealed class NaiveBayesMulticlassTrainer : Microsoft.ML.Trainers.TrainerEstimatorBase<Microsoft.ML.Data.MulticlassPredictionTransformer<Microsoft.ML.Trainers.NaiveBayesMulticlassModelParameters>,Microsoft.ML.Trainers.NaiveBayesMulticlassModelParameters>
type NaiveBayesMulticlassTrainer = class
    inherit TrainerEstimatorBase<MulticlassPredictionTransformer<NaiveBayesMulticlassModelParameters>, NaiveBayesMulticlassModelParameters>
Public NotInheritable Class NaiveBayesMulticlassTrainer
Inherits TrainerEstimatorBase(Of MulticlassPredictionTransformer(Of NaiveBayesMulticlassModelParameters), NaiveBayesMulticlassModelParameters)
Herança

Comentários

Para criar este treinador, use NaiveBayes.

Colunas de entrada e saída

Os dados da coluna do rótulo de entrada devem ser do tipo chave e a coluna de recurso deve 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 Vetor de Single As pontuações de todas as classes. Um valor mais alto significa maior probabilidade de se enquadrar na classe associada. Se o elemento iº elemento tiver o maior valor, o índice de rótulo previsto será i. Observe que i é o índice baseado em zero.
PredictedLabel tipo de chave O índice do rótulo previsto. Se seu valor for i, o rótulo real será a iº categoria no tipo de rótulo de entrada com valor de chave.

Características do Treinador

Ferramenta de machine learning Classificação multiclasse
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

Naive Bayes é um classificador probabilístico que pode ser usado para problemas de várias classes. Usando o teorema de Bayes, a probabilidade condicional de um exemplo pertencente a uma classe pode ser calculada com base na contagem de exemplo para cada grupo de combinação de recursos. No entanto, o Classificador naive Bayes só será viável se o número de recursos e os valores que cada recurso pode levar for relativamente pequeno. Ele pressupõe independência entre a presença de recursos em uma classe, mesmo que eles possam ser dependentes uns dos outros. Este treinador de várias classes aceita valores de recurso "binários" do tipo float: valores de recurso maiores que zero são tratados como true e valores de recurso menores ou iguais a 0 são tratados como false.

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 null, o que indica que o rótulo não é usado para treinamento.

(Herdado de TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

A coluna de peso que o treinador espera. Pode ser null, o que indica que o peso não é usado para treinamento.

(Herdado de TrainerEstimatorBase<TTransformer,TModel>)

Propriedades

Info

Informações auxiliares sobre o treinador em termos de suas funcionalidades e requisitos.

Métodos

Fit(IDataView)

Treina e retorna um ITransformer.

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

Para IEstimator<TTransformer> treinar um modelo Naive Bayes de várias classes que dá suporte a valores de recursos binários.

(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.

Aplica-se a

Confira também