IidChangePointEstimator Класс

Определение

Обнаружение изменения сигнала на независимо распределенном (i.i.d.) временных рядах на основе адаптивной оценки плотности ядра и мартингалов.

public sealed class IidChangePointEstimator : Microsoft.ML.Data.TrivialEstimator<Microsoft.ML.Transforms.TimeSeries.IidChangePointDetector>
type IidChangePointEstimator = class
    inherit TrivialEstimator<IidChangePointDetector>
Public NotInheritable Class IidChangePointEstimator
Inherits TrivialEstimator(Of IidChangePointDetector)
Наследование

Комментарии

Чтобы создать этот оценщик, используйте DetectIidChangePoint.

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

Существует только один входной столбец. Входной Single столбец должен бытьSingle, где значение указывает значение в метке времени в временных рядах.

Он создает столбец, который является вектором с 4 элементами. Вектор вывода последовательно содержит уровень оповещений (ненулевое значение означает точку изменения), оценку, p-значение и значение martingale.

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

Должен ли этот оценщик просмотреть данные для обучения его параметров? No
Тип данных входного столбца Single
Тип данных выходного столбца Вектор 4 элементаDouble
Экспортируемый в ONNX No

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

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

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

Этот обучающий предполагает, что точки данных, собранные в временных рядах, независимо от того же распределения (независимо распределены одинаково). Таким образом, значение в текущей метке времени можно рассматривать как значение в следующем метке времени в ожидании. Если наблюдаемое значение в метке времени $t-1$ равно $p$, прогнозируемое значение по метке времени $t$ также будет $p$.

Оценка аномалий

После вычисления необработанной оценки на метке времени он будет переначислен компоненту оценки аномалий, чтобы вычислить окончательную оценку аномалий в этой метке времени. Существует две статистики, участвующие в этом бомбардире, p-value и мартингале оценки.

Оценка P-value

Оценка p-value указывает p-значение текущей вычисляемой оценки в соответствии с распределением необработанных показателей. Здесь распределение оценивается на основе последних значений необработанных показателей до определенной глубины назад в истории. В частности, это распределение оценивается с помощью оценки плотности ядра с ядрами Гауссиана адаптивной пропускной способности. Оценка p-value всегда находится в $[0, 1]$, и чем ниже его значение, тем более вероятно, что текущая точка является вылителем (также известной как пик).

Обнаружение точек изменения на основе оценки мартингала

Оценка мартингала является дополнительным уровнем оценки, который основан на оценках p-value. Идея основана на возможности exchangeability Martingales , которая обнаруживает изменение распределения по потоку значений i.i.d. Короче говоря, значение оценки martingale начинает значительно увеличиваться, когда последовательность небольших p-значений, обнаруженных в строке; Это означает изменение распределения базового процесса создания данных. Таким образом, оценка мартингала используется для обнаружения точек изменения. Учитывая последовательность последних наблюдаемых p-значений, $p 1, \dots, p_n$, оценка мартингала вычисляется как:? $s(p1, \dots, p_n) = \prod_{i=1}^n \beta(p_i)$. Существует два варианта $\beta$: $\beta(p) = e p^{\epsilon - 1}$ для $0 < \epsilon < 1$ или $\beta(p) = \int_{0}^1 \epsilon p^{\epsilon - 1} d\epsilon$.

Если оценка мартингла превышает $s(q_1, \dots, q_n)$, где $q_i=1 - \frac{\text{достоверность}}${100}, связанная метка времени может получить ненулевое значение оповещения для обнаружения точек изменения. Обратите внимание, что $\text{достоверность}$ определяется в сигнатурах DetectChangePointBySsa или DetectIidChangePoint.

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

Методы

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

Обнаружение изменения сигнала на независимо распределенном (i.i.d.) временных рядах на основе адаптивной оценки плотности ядра и мартингалов.

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

SchemaShape Возвращает схему, которая будет производиться преобразователем. Используется для распространения схемы и проверки в конвейере.

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

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

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

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

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

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

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