GamBinaryTrainer 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.
Para IEstimator<TTransformer> treinar um modelo de classificação binária com modelos aditivos generalizados (GAM).
public sealed class GamBinaryTrainer : Microsoft.ML.Trainers.FastTree.GamTrainerBase<Microsoft.ML.Trainers.FastTree.GamBinaryTrainer.Options,Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.GamBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>,Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.GamBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>
type GamBinaryTrainer = class
inherit GamTrainerBase<GamBinaryTrainer.Options, BinaryPredictionTransformer<CalibratedModelParametersBase<GamBinaryModelParameters, PlattCalibrator>>, CalibratedModelParametersBase<GamBinaryModelParameters, PlattCalibrator>>
Public NotInheritable Class GamBinaryTrainer
Inherits GamTrainerBase(Of GamBinaryTrainer.Options, BinaryPredictionTransformer(Of CalibratedModelParametersBase(Of GamBinaryModelParameters, PlattCalibrator)), CalibratedModelParametersBase(Of GamBinaryModelParameters, PlattCalibrator))
- Herança
Comentários
Para criar esse treinador, use Gam ou Gam(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 associado 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. |
|
Probability |
Single | A probabilidade calculada calibrando a pontuação de ter true como o rótulo. O valor da probabilidade está no intervalo [0, 1]. |
Características do Treinador
| Tarefa de machine learning | Classificação binária |
| A normalização é necessária? | No |
| O cache é necessário? | No |
| NuGet necessário além de Microsoft.ML | Microsoft.ML.FastTree |
| Exportável para ONNX | No |
Detalhes do algoritmo de treinamento
Modelos aditivos generalizados ou GAMs modelam os dados como um conjunto de recursos linearmente independentes semelhantes a um modelo linear. Para cada recurso, o treinador de GAM aprende uma função não linear, chamada de "função shape", que computa a resposta como uma função do valor do recurso. (Por outro lado, um modelo linear se ajusta a uma resposta linear (por exemplo, uma linha) a cada recurso.) Para pontuar uma entrada, as saídas de todas as funções de forma são resumidas e a pontuação é o valor total.
Este treinador gam é implementado usando árvores superficiais aumentadas por gradiente (por exemplo, tocos de árvore) para aprender funções de forma nãoparamétricas e é baseado no método descrito em Lou, Caruana e Gehrke. "Modelos inteligíveis para classificação e regressão." KDD'12, Pequim, China. 2012. Após o treinamento, uma interceptação é adicionada para representar a previsão média sobre o conjunto de treinamento e as funções de forma são normalizadas para representar o desvio da previsão média. Isso resulta em modelos que são facilmente interpretados simplesmente inspecionando a interceptação e as funções de forma. Veja o exemplo abaixo para obter um exemplo de como treinar um modelo GAM e inspecionar e interpretar os resultados.
Verifique a seção Consulte Também para obter links para exemplos do uso.
Campos
| Nome | Description |
|---|---|
| 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
| Nome | Description |
|---|---|
| Info |
Para IEstimator<TTransformer> treinar um modelo de classificação binária com modelos aditivos generalizados (GAM). (Herdado de GamTrainerBase<TOptions,TTransformer,TPredictor>) |
Métodos
| Nome | Description |
|---|---|
| Fit(IDataView, IDataView) |
Treina um GamBinaryTrainer usando dados de treinamento e validação, retorna um BinaryPredictionTransformer<TModel>. |
| Fit(IDataView) |
Treina e retorna um ITransformer. (Herdado de TrainerEstimatorBase<TTransformer,TModel>) |
| GetOutputSchema(SchemaShape) |
Para IEstimator<TTransformer> treinar um modelo de classificação binária com modelos aditivos generalizados (GAM). (Herdado de TrainerEstimatorBase<TTransformer,TModel>) |
Métodos de Extensão
| Nome | Description |
|---|---|
| AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Acrescente um 'ponto de verificação de cache' à cadeia do avaliador. Isso garantirá que os avaliadores 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 têm várias passagens de dados. |
| WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Dado um avaliador, retorne um objeto de encapsulamento que chamará um delegado uma vez Fit(IDataView) chamado. Geralmente, é importante que um avaliador 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 criar uma cadeia de avaliadores por meio EstimatorChain<TLastTransformer> de onde o avaliador para o qual queremos obter o transformador está enterrado em algum lugar nessa cadeia. Para esse cenário, podemos por meio desse método anexar um delegado que será chamado assim que o ajuste for chamado. |