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


LbfgsLogisticRegressionBinaryTrainer Класс

Определение

Прогнозирование IEstimator<TTransformer> целевого объекта с помощью модели линейной логистической регрессии, обученной с помощью метода L-BFGS.

public sealed class LbfgsLogisticRegressionBinaryTrainer : Microsoft.ML.Trainers.LbfgsTrainerBase<Microsoft.ML.Trainers.LbfgsLogisticRegressionBinaryTrainer.Options,Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.LinearBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>,Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.LinearBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>
type LbfgsLogisticRegressionBinaryTrainer = class
    inherit LbfgsTrainerBase<LbfgsLogisticRegressionBinaryTrainer.Options, BinaryPredictionTransformer<CalibratedModelParametersBase<LinearBinaryModelParameters, PlattCalibrator>>, CalibratedModelParametersBase<LinearBinaryModelParameters, PlattCalibrator>>
Public NotInheritable Class LbfgsLogisticRegressionBinaryTrainer
Inherits LbfgsTrainerBase(Of LbfgsLogisticRegressionBinaryTrainer.Options, BinaryPredictionTransformer(Of CalibratedModelParametersBase(Of LinearBinaryModelParameters, PlattCalibrator)), CalibratedModelParametersBase(Of LinearBinaryModelParameters, PlattCalibrator))
Наследование

Комментарии

Чтобы создать этот обучающее средство, используйте LbfgsLogisticRegression или LbfgsLogisticRegression(Options).

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

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

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

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

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

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

Функция оценки

Линейная логистическая регрессия — это вариант линейной модели. Он сопоставляет вектор признаков $\textbf{x} \in {\mathbb R}^n$ с скалярным с помощью $\hat{y}\left( \textbf{x} \right) = \textbf{w}^T \textbf{x} + b = \sum_{j=1}^n w_j x_j + b$, где $x_j$ является значением $j$-th компонента, $j$-th элемент $\textbf{w}$ является коэффициентом $j$-th компонента, и $b$ — это узнаваемая предвзятость. Соответствующая вероятность получения истинной метки : $\frac{1}{1 + e^{\hat{y}\left( \textbf{x} \right)}}$.

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

Реализованная методика оптимизации основана на ограниченной памяти метода Broyden-Fletcher-Goldfarb-Shanno (L-BFGS). L-BFGS — это квази-Ньютоновский метод , который заменяет затраты на затраты на вычисления гессийской матрицы приближением, но по-прежнему пользуется быстрой конвергенцией, как метод Ньютон , где вычисляется полная матрица Гессиана. Так как приближение L-BFGS использует только ограниченное количество исторических состояний для вычисления следующего направления шага, оно особенно подходит для проблем с вектором признаков с высокой размерности. Число исторических состояний является пользовательским параметром, использование большего числа может привести к лучшему приближению к матрице Hessian, но и к более высокой стоимости вычислений на шаг.

Регуляризация — это метод, который может привести к тому, что проблема может оказаться более острой, вводя ограничения, которые предоставляют информацию для дополнения данных и которая предотвращает переобучение путем наказания величины модели, как правило, измеряемой некоторыми нормными функциями. Такой подход позволяет улучшить обобщение модели, реализованное с помощью выбора оптимальной сложности в компромиссной частоте исключений. Регуляризация предполагает добавление штрафа, связанного со значениями коэффициентов, к погрешности гипотезы. К точной модели с предельными коэффициентами будет применен больший штраф. При этом для менее точной модели с более приемлемыми значениями штраф будет меньше.

Этот учащийся поддерживает упорядочение эластичной сети: линейное сочетание L1-норм (LASSO), $|| \textbf{w} || _1$, и L2-норм (ridge), $|| \textbf{w} || Регуляризация _2^2$ . Регуляризация норм L1 и L2-норм имеют различные эффекты и использование, которые являются взаимодополняющими в определенных отношениях. Использование L1-норм может увеличить разреженность обученного $\textbf{w}$. При работе с высокомерными данными он сокращает небольшие весовые коэффициенты неуместных признаков до 0, поэтому при создании прогнозов ресурсы не будут потрачены на эти плохие функции. Если используется нормализация норм L1, алгоритм обучения — OWL-QN. Нормализация норм L2 предпочтительнее для данных, которые не разрежены, и она в значительной степени наказывает существование больших весов.

Агрессивная регуляризация (т. е. присвоение больших коэффициентов терминам регуляризации L1-norm или L2-норм) может нанести ущерб прогнозной емкости за счет исключения важных переменных из модели. Поэтому при применении логистической регрессии важно выбирать правильные коэффициенты регуляризации.

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

Поля

FeatureColumn

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

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

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

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

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

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

Свойства

Info

Прогнозирование IEstimator<TTransformer> целевого объекта с помощью модели линейной логистической регрессии, обученной с помощью метода L-BFGS.

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

Методы

Fit(IDataView, LinearModelParameters)

Продолжает обучение LbfgsLogisticRegressionBinaryTrainer использования уже обученного modelParameters и возвращает BinaryPredictionTransformer<TModel>значение .

Fit(IDataView)

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

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

Прогнозирование IEstimator<TTransformer> целевого объекта с помощью модели линейной логистической регрессии, обученной с помощью метода L-BFGS.

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

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

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

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

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

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

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

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