Поделиться через


GamBinaryTrainer Класс

Определение

Обучение IEstimator<TTransformer> модели двоичной классификации с помощью обобщенных аддитивных моделей (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))
Наследование

Комментарии

Чтобы создать этот тренер, используйте Gam или Gam(Options).

Входные и выходные столбцы

Входные данные столбца меток должны иметь тип Boolean. Входные данные столбцов должны быть вектором известного Singleразмера.

Этот алгоритм обучения выводит следующие столбцы:

Имя выходного столбца Тип столбца Описание
Score Single Несвязанная оценка, вычисляемая моделью.
PredictedLabel Boolean Прогнозируемая метка, зависящая от знака оценки. Отрицательная оценка соответствует значению false, а положительная — значению true.
Probability Single Вероятность, вычисляемая путем калибровки оценки значения true в качестве метки. Значение вероятности находится в диапазоне [0, 1].

Характеристики тренера

Задача машинного обучения Двоичная классификация
Требуется ли нормализация? нет
Требуется ли кэширование? нет
Обязательный NuGet в дополнение к Microsoft.ML Microsoft.ML.FastTree
Экспортируемый в ONNX нет

Сведения о алгоритме обучения

Обобщенные аддитивные модели или GAM моделируют данные как набор линейных независимых функций, аналогичных линейной модели. Для каждой функции тренер GAM изучает нелинейную функцию, называемую "функцией фигуры", которая вычисляет ответ как функцию значения функции. (В отличие от этого, линейная модель соответствует линейному ответу (например, линии) к каждой функции.) Для оценки входных данных суммируются выходные данные всех функций фигуры, а оценка — общее значение.

Этот тренер GAM реализуется с помощью мелких градиентных бустных деревьев (например, пней деревьев) для изучения функций непараметрической формы и основан на методе, описанном в Лу, Каруана и Gehrke. "Intelligible Models for Classification and Regression" (Intelligible Models for Classification and Regression). KDD'12, Пекин, Китай. 2012. После обучения будет добавлен перехват для представления среднего прогноза по набору обучения, а функции фигуры нормализуются для представления отклонения от среднего прогноза. Это приводит к тому, что модели, которые легко интерпретируются, просто проверяя перехват и функции фигуры. В приведенном ниже примере приведен пример обучения модели GAM и проверки и интерпретации результатов.

Ознакомьтесь с разделом "См. также" ссылки на примеры использования.

Поля

FeatureColumn

Столбец признаков, который ожидает тренер.

(Унаследовано от TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Столбец меток, который ожидает тренер. Может иметь значение null, указывающее, что метка не используется для обучения.

(Унаследовано от TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Столбец веса, который ожидает тренер. Может быть null, что указывает, что вес не используется для обучения.

(Унаследовано от TrainerEstimatorBase<TTransformer,TModel>)

Свойства

Info

Обучение IEstimator<TTransformer> модели двоичной классификации с помощью обобщенных аддитивных моделей (GAM).

(Унаследовано от GamTrainerBase<TOptions,TTransformer,TPredictor>)

Методы

Fit(IDataView, IDataView)

Обучает как обучающие GamBinaryTrainer , так и проверочный данные, возвращает значение BinaryPredictionTransformer<TModel>.

Fit(IDataView)

Поезда и возвращается ITransformer.

(Унаследовано от TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

Обучение IEstimator<TTransformer> модели двоичной классификации с помощью обобщенных аддитивных моделей (GAM).

(Унаследовано от TrainerEstimatorBase<TTransformer,TModel>)

Методы расширения

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

Добавьте "контрольную точку кэширования" в цепочку оценщика. Это обеспечит обучение подчиненных оценщиков на основе кэшированных данных. Рекомендуется создать контрольную точку кэширования перед обучением, которые принимают несколько передач данных.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

Учитывая оценщик, возвращает объект-оболочку, который будет вызывать делегат один раз Fit(IDataView) . Часто важно, чтобы оценщик возвращал сведения о том, что было в форме, поэтому Fit(IDataView) метод возвращает специально типизированный объект, а не просто общий ITransformer. Однако, в то же время, IEstimator<TTransformer> часто формируются в конвейеры со многими объектами, поэтому нам может потребоваться построить цепочку оценщиков, где EstimatorChain<TLastTransformer> оценщик, для которого мы хотим получить преобразователь, похоронен где-то в этой цепочке. В этом сценарии мы можем подключить делегат, который будет вызываться после вызова соответствия.

Применяется к

См. также раздел