LinearSvmTrainer Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Прогнозирование IEstimator<TTransformer> целевого объекта с помощью модели линейной двоичной классификации, обученной с помощью Линейного SVM.
public sealed class LinearSvmTrainer : Microsoft.ML.Trainers.OnlineLinearTrainer<Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Trainers.LinearBinaryModelParameters>,Microsoft.ML.Trainers.LinearBinaryModelParameters>
type LinearSvmTrainer = class
inherit OnlineLinearTrainer<BinaryPredictionTransformer<LinearBinaryModelParameters>, LinearBinaryModelParameters>
Public NotInheritable Class LinearSvmTrainer
Inherits OnlineLinearTrainer(Of BinaryPredictionTransformer(Of LinearBinaryModelParameters), LinearBinaryModelParameters)
- Наследование
Комментарии
Чтобы создать этот обучатель, используйте LinearSvm или LinearSvm(Options).
Входные и выходные столбцы
Входные данные столбца меток должны иметь тип Boolean. Входные данные столбцов должны быть вектором известного Singleразмера. Этот алгоритм обучения выводит следующие столбцы:
Имя выходного столбца | Тип столбца | Описание |
---|---|---|
Score |
Single | Несвязанная оценка, вычисляемая моделью. |
PredictedLabel |
Boolean | Прогнозируемая метка, зависящая от знака оценки. Отрицательная оценка соответствует значению false , а положительная — значению true . |
Характеристики тренера
Задача машинного обучения | Двоичная классификация |
Требуется ли нормализация? | Да |
Требуется ли кэширование? | Нет |
Обязательный NuGet в дополнение к Microsoft.ML | Нет |
Экспортируемый в ONNX | Да |
Сведения о алгоритме обучения
Линейный SVM реализует алгоритм, который находит гиперплан в пространстве признаков для двоичной классификации путем решения проблемы SVM. Например, с значениями признаков $f_0, f_1,..., f_{D-1}$, прогноз предоставляется путем определения того, в какой стороне гиперплана точка попадает. Это то же самое, что и знак взвешаемой суммы, т. е. $\sum_{i = 0}^{D-1} \left(w_i * f_i \right) + b$, где $w_0, w_1,..., w_{D-1}$ — это весовые коэффициенты, вычисляемые алгоритмом, а $b$ — это смещение, вычисленное алгоритмом.
Линейный SVM реализует метод PEGASOS, который чередуется между стохастических градиентных шагов градиента и шагов проекции, представленных в этом документе Шалев-Шварц, Певица и Сребро.
Ознакомьтесь с разделом "См. также" ссылки на примеры использования.
Поля
FeatureColumn |
Столбец признаков, который ожидает тренер. (Унаследовано от TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
Столбец меток, который ожидает тренер. Может иметь значение |
WeightColumn |
Столбец веса, который ожидает тренер. Может быть |
Свойства
Info |
Прогнозирование IEstimator<TTransformer> целевого объекта с помощью модели линейной двоичной классификации, обученной с помощью Линейного SVM. (Унаследовано от OnlineLinearTrainer<TTransformer,TModel>) |
Методы
Fit(IDataView, LinearModelParameters) |
Продолжает обучение использования уже обученного OnlineLinearTrainer<TTransformer,TModel> |
Fit(IDataView) |
Поезда и возвращается ITransformer. (Унаследовано от TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
Прогнозирование IEstimator<TTransformer> целевого объекта с помощью модели линейной двоичной классификации, обученной с помощью Линейного SVM. (Унаследовано от TrainerEstimatorBase<TTransformer,TModel>) |
Методы расширения
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Добавьте "контрольную точку кэширования" в цепочку оценщика. Это обеспечит обучение подчиненных оценщиков на основе кэшированных данных. Рекомендуется создать контрольную точку кэширования перед обучением, которые принимают несколько передач данных. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Учитывая оценщик, возвращает объект-оболочку, который будет вызывать делегат один раз Fit(IDataView) . Часто важно, чтобы оценщик возвращал сведения о том, что было в форме, поэтому Fit(IDataView) метод возвращает специально типизированный объект, а не просто общий ITransformer. Однако, в то же время, IEstimator<TTransformer> часто формируются в конвейеры со многими объектами, поэтому нам может потребоваться построить цепочку оценщиков, где EstimatorChain<TLastTransformer> оценщик, для которого мы хотим получить преобразователь, похоронен где-то в этой цепочке. В этом сценарии мы можем подключить делегат, который будет вызываться после вызова соответствия. |