FastTreeBinaryTrainer 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 de árvore de decisão usando o FastTree.
public sealed class FastTreeBinaryTrainer : Microsoft.ML.Trainers.FastTree.BoostingFastTreeTrainerBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryTrainer.Options,Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>,Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>
type FastTreeBinaryTrainer = class
inherit BoostingFastTreeTrainerBase<FastTreeBinaryTrainer.Options, BinaryPredictionTransformer<CalibratedModelParametersBase<FastTreeBinaryModelParameters, PlattCalibrator>>, CalibratedModelParametersBase<FastTreeBinaryModelParameters, PlattCalibrator>>
Public NotInheritable Class FastTreeBinaryTrainer
Inherits BoostingFastTreeTrainerBase(Of FastTreeBinaryTrainer.Options, BinaryPredictionTransformer(Of CalibratedModelParametersBase(Of FastTreeBinaryModelParameters, PlattCalibrator)), CalibratedModelParametersBase(Of FastTreeBinaryModelParameters, PlattCalibrator))
- Herança
Comentários
Para criar esse treinador, use FastTree ou FastTree(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 . |
|
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
Ferramenta 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 | Sim |
Detalhes do algoritmo de treinamento
FastTree é uma implementação eficiente do algoritmo de aumento de gradiente MART . O aumento de gradiente é uma técnica de aprendizado de máquina para problemas de regressão. Ele cria cada árvore de regressão por etapas usando uma função de perda predefinida para medir o erro em cada etapa e corrigi-lo na próxima. Portanto, o modelo de previsão é na verdade um conjunto de modelos de previsão mais fracos. Nos problemas de regressão, o aumento cria uma série dessas árvores por etapas e seleciona a árvore ideal usando uma função de perda diferenciável arbitrária.
O MART aprende um conjunto de árvores de regressão, que é uma árvore de decisão com valores escalares nas folhas. Uma árvore de decisão (ou de regressão) é um fluxograma semelhante a uma árvore binária, na qual em cada nó interior é decidido para qual dos dois nós filho o processo deve continuar com base em um dos valores de recurso da entrada. Em cada nó folha, um valor é retornado. Nos nós interiores, a decisão é baseada no teste x <= v em que x é o valor do recurso no exemplo de entrada e v é um dos valores possíveis desse recurso. As funções que podem ser produzidas por uma árvore de regressão são constante funções de partes.
O conjunto de árvores é produzido por computação, em cada etapa, uma árvore de regressão que aproxima o gradiente da função de perda e o adiciona à árvore anterior com coeficientes que minimizam a perda da nova árvore. A saída do ensemble produzido por MART em uma determinada instância é a soma das saídas da árvore.
- No caso de um problema de classificação binária, a saída é convertida em uma probabilidade usando alguma forma de calibragem.
- No caso de um problema de regressão, a saída é o valor previsto da função.
- No caso de um problema de classificação, as instâncias são ordenadas pelo valor de saída do conjunto.
Para obter mais informações, consulte:
- Wikipédia: aumento de gradiente (aumento de árvore de gradiente).
- Aproximação de função greedy: um computador de gradient boosting.
Verifique a seção Consulte Também para obter links para exemplos de uso.
Campos
FeatureColumn |
A coluna de recursos esperada pelo treinador. (Herdado de TrainerEstimatorBase<TTransformer,TModel>) |
GroupIdColumn |
A coluna groupID opcional esperada pelos treinadores de classificação. (Herdado de TrainerEstimatorBaseWithGroupId<TTransformer,TModel>) |
LabelColumn |
A coluna de rótulo esperada pelo treinador. Pode ser |
WeightColumn |
A coluna de peso que o treinador espera. Pode ser |
Propriedades
Info |
Para IEstimator<TTransformer> treinar um modelo de classificação binária de árvore de decisão usando o FastTree. (Herdado de FastTreeTrainerBase<TOptions,TTransformer,TModel>) |
Métodos
Fit(IDataView, IDataView) |
Treina um FastTreeBinaryTrainer uso de 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 de árvore de decisão usando o FastTree. (Herdado de TrainerEstimatorBase<TTransformer,TModel>) |
Métodos de Extensão
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Acrescente um 'ponto de verificação de cache' à cadeia do avaliador. Isso garantirá que os estimadores downstream sejam treinados em relação aos dados armazenados em cache. É útil ter um ponto de verificação de cache antes dos treinadores que levam vários passes de dados. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Dado um avaliador, retorne um objeto de encapsulamento que chamará um delegado uma vez Fit(IDataView) que seja 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 estimador para o qual queremos obter o transformador está enterrado em algum lugar nesta cadeia. Para esse cenário, podemos por meio desse método anexar um delegado que será chamado assim que o ajuste for chamado. |