LdSvmTrainer Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Прогнозирование IEstimator<TTransformer> целевого объекта с помощью нелинейной модели двоичной классификации, обученной с помощью local Deep SVM.
public sealed class LdSvmTrainer : Microsoft.ML.Trainers.TrainerEstimatorBase<Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Trainers.LdSvmModelParameters>,Microsoft.ML.Trainers.LdSvmModelParameters>
type LdSvmTrainer = class
inherit TrainerEstimatorBase<BinaryPredictionTransformer<LdSvmModelParameters>, LdSvmModelParameters>
Public NotInheritable Class LdSvmTrainer
Inherits TrainerEstimatorBase(Of BinaryPredictionTransformer(Of LdSvmModelParameters), LdSvmModelParameters)
- Наследование
Комментарии
Чтобы создать этот обучатель, используйте LdSvm или LdSvm(Options).
Входные и выходные столбцы
Входные данные столбца меток должны иметь тип Boolean. Входные признаки данных столбцов должны быть вектором известного Singleразмера . Этот алгоритм обучения выводит следующие столбцы:
Имя выходного столбца | Тип столбца | Описание |
---|---|---|
Score |
Single | Несвязанная оценка, вычисляемая моделью. |
PredictedLabel |
Boolean | Прогнозируемая метка, зависящая от знака оценки. Отрицательная оценка соответствует значению false , а положительная — значению true . |
Характеристики тренера
Задача машинного обучения | Двоичная классификация |
Требуется ли нормализация? | Да |
Требуется ли кэширование? | нет |
Требуется NuGet в дополнение к Microsoft.ML | Нет |
Экспортируемый в ONNX | нет |
Сведения об алгоритме обучения
Local Deep SVM (LD-SVM) — это обобщение локализованного многоуровневого обучения ядра для нелинейного SVM. Несколько методов ядра изучают другое ядро и, следовательно, разные классификаторы для каждой точки в пространстве признаков. Затраты на время прогнозирования для нескольких методов ядра могут быть непомерно дорогими для больших наборов обучения, так как они пропорциональны количеству векторов поддержки, и они растут линейно с размером обучающего набора. LD-SVM сокращает затраты на прогнозирование, изучая внедрение локальных признаков на основе дерева, которое является высокомерным и разреженным, эффективно кодируя нелинейные сущности. Используя LD-SVM, стоимость прогнозирования увеличивается логарифмически с размером обучающего набора, а не линейно с допустимой потерей точности классификации.
Local Deep SVM — это реализация алгоритма, описанного в статье C. Хосе, P. Goyal, P. Aggрваl и M. Varma, Local Deep Kernel Learning for Efficient Non-linear SVM Prediction, ICML, 2013.
Ссылки на примеры использования см. в разделе "См. также".
Поля
FeatureColumn |
Столбец признаков, который ожидает тренер. (Унаследовано от TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
Столбец метки, который ожидает тренер. Может иметь значение |
WeightColumn |
Столбец веса, который ожидает тренер. Может быть |
Свойства
Info |
Прогнозирование IEstimator<TTransformer> целевого объекта с помощью нелинейной модели двоичной классификации, обученной с помощью local Deep SVM. |
Методы
Fit(IDataView) |
Тренирует и возвращает .ITransformer (Унаследовано от TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
Прогнозирование IEstimator<TTransformer> целевого объекта с помощью нелинейной модели двоичной классификации, обученной с помощью local Deep SVM. (Унаследовано от TrainerEstimatorBase<TTransformer,TModel>) |
Методы расширения
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Добавьте "контрольную точку кэширования" в цепочку оценщика. Это гарантирует, что подчиненные оценщики будут обучены на основе кэшированных данных. Рекомендуется использовать контрольную точку кэширования перед обучением, которые принимают несколько данных. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Учитывая оценщик, верните объект-оболочку, который будет вызывать делегат один раз Fit(IDataView) . Часто важно, чтобы оценщик возвращал сведения о том, что было положено, поэтому Fit(IDataView) метод возвращает специально типизированный объект, а не просто общий ITransformer. Однако в то же время часто IEstimator<TTransformer> формируются в конвейеры со многими объектами, поэтому нам может потребоваться создать цепочку оценщиков, где EstimatorChain<TLastTransformer> оценщик, для которого мы хотим получить преобразователь, похоронен где-то в этой цепочке. В этом сценарии мы можем подключить делегат, который будет вызываться после вызова соответствия. |