GamRegressionTrainer Класс

Определение

Для IEstimator<TTransformer> обучения регрессии модели с обобщенными аддитивными моделями (GAM).

public sealed class GamRegressionTrainer : Microsoft.ML.Trainers.FastTree.GamTrainerBase<Microsoft.ML.Trainers.FastTree.GamRegressionTrainer.Options,Microsoft.ML.Data.RegressionPredictionTransformer<Microsoft.ML.Trainers.FastTree.GamRegressionModelParameters>,Microsoft.ML.Trainers.FastTree.GamRegressionModelParameters>
type GamRegressionTrainer = class
    inherit GamTrainerBase<GamRegressionTrainer.Options, RegressionPredictionTransformer<GamRegressionModelParameters>, GamRegressionModelParameters>
Public NotInheritable Class GamRegressionTrainer
Inherits GamTrainerBase(Of GamRegressionTrainer.Options, RegressionPredictionTransformer(Of GamRegressionModelParameters), GamRegressionModelParameters)
Наследование

Комментарии

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

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

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

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

Имя выходного столбца Тип столбца Описание
Score Single Несвязанная оценка, прогнозируемая моделью.

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

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

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

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

Этот тренер GAM реализуется с помощью мелкого градиента увеличенных деревьев (например, пни деревьев) для изучения функций непараметрических форм и основан на методе, описанном в Лу, Каруана и Герке. "Intelligible Models for Classification and Regression" (Модели intelligible для классификации и регрессии). 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)

Тренирует и возвращает .ITransformer

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

Обучает GamRegressionTrainer использование обучающих и проверочных данных, возвращает значение RegressionPredictionTransformer<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> оценщик, для которого мы хотим получить преобразователь, похоронен где-то в этой цепочке. В этом сценарии мы можем подключить делегат, который будет вызываться после вызова соответствия.

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

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