RandomizedPcaTrainer Класс

Определение

Для IEstimator<TTransformer> обучения приблизительного PCA с помощью алгоритма случайных SVD.

public sealed class RandomizedPcaTrainer : Microsoft.ML.Trainers.TrainerEstimatorBase<Microsoft.ML.Data.AnomalyPredictionTransformer<Microsoft.ML.Trainers.PcaModelParameters>,Microsoft.ML.Trainers.PcaModelParameters>
type RandomizedPcaTrainer = class
    inherit TrainerEstimatorBase<AnomalyPredictionTransformer<PcaModelParameters>, PcaModelParameters>
Public NotInheritable Class RandomizedPcaTrainer
Inherits TrainerEstimatorBase(Of AnomalyPredictionTransformer(Of PcaModelParameters), PcaModelParameters)
Наследование

Комментарии

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

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

Входные данные столбцов функций должны быть известными векторами Singleразмера. Этот тренер выводит следующие столбцы:

Имя выходного столбца Тип столбца Description
Score Single Неотрицательная, несвязанная оценка, вычисляемая моделью обнаружения аномалий.
PredictedLabel Boolean Прогнозируемая метка на основе порогового значения. Оценка выше порогового значения и true оценка ниже порогового значения.false Пороговое значение по умолчанию — 0.5. Используется <xref:AnomalyDetectionCatalog.ChangeModelThreshold> для изменения значения по умолчанию.

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

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

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

Этот тренер использует верхние собственные методы для приближения подпространства, содержащего обычный класс. Для каждого нового экземпляра вычисляется нормовое различие между вектором необработанных признаков и проецируемым компонентом в этом подпространстве. Если ошибка близка к 0, экземпляр считается нормальным (не-аномалия).

В частности, этот тренер обучает приблизительный метод PCA с помощью случайного метода для вычисления сингулярного декомпозиции значения (SVD) матрицы, строки которой являются входными векторами. Модель, созданная этим тренером, содержит три параметра:

  • Матрица проекции $U$
  • Средний вектор в исходном пространстве признаков $m$
  • Средний вектор в проецируемого пространства функций $p$

Для вектора входной функции $x$, оценка аномалий вычисляется путем сравнения нормы $L_2$ исходного входного вектора, а также норму $L_2$ прогнозируемого вектора: $\sqrt{\left(|x-m|_2^2 - | |Ux-p|_2^2\right)|x-m|_2^2}$.

Здесь описан метод.

Обратите внимание, что алгоритм можно сделать в ядро PCA, применив ApproximatedKernelTransformer их к данным перед передачей в тренер.

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

Поля

Имя Описание
FeatureColumn

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

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

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

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

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

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

Свойства

Имя Описание
Info

Для IEstimator<TTransformer> обучения приблизительного PCA с помощью алгоритма случайных SVD.

Методы

Имя Описание
Fit(IDataView)

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

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

Для IEstimator<TTransformer> обучения приблизительного PCA с помощью алгоритма случайных SVD.

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

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

Имя Описание
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

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

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

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

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

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