Примечание о методах обнаружения, оценке и применении аномалий в данных временных рядов.

Определение - Обнаружение аномалий

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

Определение - аномалия

Аномалия - это отклонение величины от ожидаемого значения, например разница между измерением и средним значением или прогнозом модели. - Википедия

Статистические методы

  • Холт-Винтерс (тройное экспоненциальное сглаживание)
  • ARIMA (Авторегрессивная интегрированная скользящая средняя)
  • Обнаружение выбросов на основе гистограммы (HBOS)

Обычные статистические методы обычно более интерпретируемы, а иногда и более полезны, чем методы на основе машинного обучения, в зависимости от указанной проблемы.

Методы машинного обучения

  • Под контролем (например, дерево решений, SVM, прогнозирование LSTM)
  • Неконтролируемые (например, K-средние, иерархическая кластеризация, DBSCAN)
  • Самоконтроль (например, LSTM Autoencoder)

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

Представление данных

  • Точка
  • Скользящее окно (или матрица траектории)
  • Функции временных рядов (преобразования, разложения и статистические измерения)

Другие методы

  • Генерация синтетических аномалий (например, GAN)
  • Достойные внимания библиотеки (tsfresh, fbprophet)

Статистические методы

Холт-Винтерс (тройное экспоненциальное сглаживание)

Holt-Winters - это метод прогнозирования сезонных (т. Е. Циклических) данных временных рядов на основе предыдущих временных меток.

Холт-Винтерс моделирует временной ряд тремя способами - средним, трендом и сезонным. Среднее значение - это значение, на которое ссылаются, тренд - это общее увеличение / уменьшение с течением времени, а сезонность - это циклический повторяющийся образец в течение периода.

Уравнение:
ŷ x = α⋅yx + (1 − α) ⋅ŷ x − 1

Прогноз значения при t = x является фактором значения при t = x, наряду с дисконтированным значением прогнозируемого значения при t = x-1. (1-a) рекурсивно умножается на каждую временную метку, что приводит к экспоненциальному вычислению.

ARIMA (авторегрессивная интегрированная скользящая средняя)

ARIMA - это статистическая модель для данных временных рядов, охватывающая 3 ключевых аспекта временной информации - авторегрессия (AR), интеграция (I) и скользящее среднее (MA).

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

Обнаружение выбросов на основе гистограммы

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

Методы машинного обучения

Дерево принятия решений - под контролем

Деревья решений используются для обнаружения аномалий с целью изучения правил на основе данных. Однако с небольшим количеством помеченных данных, помимо проблемы дисбаланса классов, выводы из правил могут не иметь смысла, поскольку конечные узлы могут закончиться очень небольшим количеством наблюдений, например 2 положительных и 0 отрицательных.

Машины опорных векторов (SVM) - под наблюдением

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

Прогнозирование LSTM - под наблюдением

LSTM Forecasting - это контролируемый метод, который, учитывая последовательность временных рядов в качестве входных данных, предсказывает значение на следующей временной метке. Он обучается только на нормальных данных, а ошибка прогноза используется в качестве оценки аномалии.

Кластеризация K-средних - без учителя

Кластеризация K-средних обычно бесполезна при обнаружении аномалий из-за ее чувствительности к выбросам. Центроиды не могут быть обновлены, если набор близких к нему объектов пуст.

Иерархическая кластеризация - без учителя

Иерархическая кластеризация, в отличие от K-средних, не требует указания количества кластеров при инициализации. Он создает дендрограмму, и после этого можно отдельно выбирать кластеры. Иерархическая кластеризация Scipy рекомендуется вместо Scikit-Learn из-за ее настраиваемости, возможности выбора количества кластеров после кластеризации и построения графиков дендрограмм.

LSTM Autoencoder - Самоконтроль

LSTM Autoencoder - это самоконтролируемый метод, который, учитывая последовательность временных рядов в качестве входных данных, предсказывает ту же входную последовательность, что и ее выход. При таком подходе он изучает представление нормальных последовательностей, а ошибку предсказания можно интерпретировать как оценку аномалии.

Представление данных

Точка

Учитывая только точку, контекстные аномалии не могут быть обнаружены из-за отсутствия временной информации.

Подвижное окно

Скользящее окно (представляющее точку) содержит временную информацию за несколько шагов назад, что дает возможность обнаружения контекстных аномалий. Этого достаточно для моделей на основе LSTM.

Особенности временных рядов

Преобразования / разложения сигналов, такие как быстрое преобразование Фурье (FFT), непрерывное вейвлет-преобразование (CWT) и анализ сингулярного спектра (SSA), а также как статистические измерения, такие как Макс. / Мин., Среднее, Нет. of Peaks, может отображать временную информацию, важную для обнаружения аномалий.

Другие методы

Генерация синтетической аномалии

  • Важность
    - создание синтетической аномалии важно из-за обычного случая отсутствия помеченных аномальных данных. Без хорошего набора известных аномалий (по разнообразию и объему) оценка моделей обнаружения аномалий не может быть надежной.
  • Генератор на основе правил
    . Генерация аномальных данных на основе правил, основанная на экспертных знаниях, может охватывать диапазон / разнообразие наиболее возможных типов аномалий.
  • Генеративная состязательная сеть
    - при небольшом количестве данных GAN могут генерировать аномальные данные, хотя и сложные, из-за коллапса режима, нестабильности обучения и шумные генерируемые сигналы.

Достойные внимания библиотеки

использованная литература

  1. Экспоненциальное сглаживание - StatsModels
  2. Как создать модель ARIMA для прогнозирования временных рядов на Python
  3. Оценка выбросов на основе гистограммы (HBOS): быстрый неконтролируемый алгоритм обнаружения аномалий
  4. Как разработать модели LSTM для прогнозирования временных рядов
  5. Кодер-декодер на основе LSTM для обнаружения мультисенсорных аномалий

Автор

Jet New - поступающий студент бакалавриата по информатике в Национальный университет Сингапура с опытом работы в области машинного обучения (обнаружение аномалий).