Лучшие практики алгоритмов искусственного интеллекта для обнаружения аномалий

Содержание таблицы:

  • Подход 1
  • Глобальные и локальные выбросы при обнаружении аномалий
  • Подход 2
  • Подход 3
  • Подход 4
  • Разница между пространственными и временными данными с точки зрения данных временных рядов?
  • Несколько контрольных точек для многовариантных подходов
  • часто используемые алгоритмы
  • Почему бы и нет
  • Различные способы объединения модели на основе физики с алгоритмами машинного обучения

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

Подход 1: гибридная кластеризация с LOF

Псевдокод:

  1. Загрузите и предварительно обработайте данные с устройства солнечной электростанции.
  2. Выберите алгоритм кластеризации (например, K-means, DBSCAN) и установите гиперпараметры
  3. Подберите алгоритм кластеризации к предварительно обработанным данным, чтобы получить кластеры
  4. Рассчитайте оценку LOF для каждой точки данных в кластерах, используя алгоритм LOF.
  5. Определите порог для оценки LOF для выявления аномалий
  6. Пометьте точки данных с оценками LOF выше порогового значения как аномалии.
  7. Визуализируйте точки данных и аномалии для дальнейшего анализа и интерпретации.

Плюсы:

  • Этот подход может эффективно обнаруживать как кластерные, так и изолированные аномалии в данных.
  • Он может обрабатывать многомерные данные и не требует размеченных данных для обучения.

Минусы:

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

Подходящие сценарии для этого алгоритма:

  1. Доступны большие объемы данных: известно, что алгоритмы кластеризации хорошо работают с большими наборами данных, поскольку они могут эффективно группировать схожие точки данных вместе.
  2. Аномалии четко не определены: в некоторых случаях аномалии не могут быть легко определены или могут не иметь четких границ. Алгоритмы кластеризации могут быть полезны в таких случаях, поскольку они объединяют схожие точки данных, облегчая выявление выбросов.
  3. Существует несколько типов аномалий: использование алгоритмов кластеризации может помочь определить различные типы аномалий путем группировки точек данных с похожими свойствами.
  4. Данные имеют высокую размерность: алгоритмы кластеризации могут быть полезны в случаях, когда данные имеют большую размерность, поскольку они могут эффективно группировать точки данных вместе на основе их свойств.
  5. Данные содержат шум или выбросы. Алгоритмы кластеризации можно использовать для удаления шума или выбросов из набора данных путем группировки похожих точек данных вместе и выявления выбросов с использованием LOF.

Оценка:

Примечание. G означает или X означает, что с LOF дает довольно хороший результат, по моему опыту. Всегда удаляйте глобальный выброс перед применением этого гибридного алгоритма, чтобы получить наилучшие результаты. Но при удалении проверки глобальных выбросов вы не удаляете фактически захваченные неисправности/аномалии.

Глобальные и локальные выбросы при обнаружении аномалий для солнечных электростанций: важность удаления глобальных выбросов:

Глобальные выбросы — это наблюдения, которые значительно отклоняются от большинства точек данных во всем наборе данных. Напротив, локальные выбросы — это наблюдения, которые значительно отклоняются от большинства точек данных в пределах локальной области или окрестности данных.

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

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

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

Подход 2: LSTM на пороге потерь MAE

Псевдокод:

1. Load the data and split it into training and testing sets.
2. Normalize the training and testing data.
3. Define the LSTM model architecture with the input shape and number of neurons.
4. Train the model on the training data with a specified batch size and number of epochs.
5. Evaluate the model on the testing data and calculate the mean absolute error (MAE) for each time step.
6. Calculate the threshold value for anomaly detection based on a specified confidence interval.
7. Identify anomalies as time steps with MAE values above the threshold.
8. Visualize the anomalies in the data.

Pseudocode for identifying anomalies using MAE:

1. Train an LSTM model on the normal training data.
2. Predict the normal testing data using the trained model.
3. Calculate the MAE between the predicted values and the actual values.
4. Calculate the mean and standard deviation of the MAE values.
5. Set the threshold for anomaly detection based on the mean and standard deviation.
6. Identify anomalies as time steps with MAE values above the threshold.

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

Подходящие сценарии для этого алгоритма:

Плюсы:

  • Может фиксировать сложные временные зависимости в многомерных данных временных рядов.
  • Не требует предположения о нормальности или стационарности данных.
  • Может обрабатывать отсутствующие значения в данных.
  • Может использоваться для онлайн-обнаружения аномалий, что означает, что он может обнаруживать аномалии в режиме реального времени.

Минусы:

  • Может быть дорогостоящим в вычислительном отношении, особенно для больших наборов данных.
  • Требует большого объема данных для обучения и может быть чувствителен к выбору гиперпараметров.
  • Может плохо работать с очень нерегулярными или хаотическими шаблонами данных.
  • Может быть сложно интерпретировать результаты и объяснить, почему конкретная точка данных является аномалией.

Подход 3: Гибридная зимовка в вольере с Isolation Forest

Псевдокод:

  1. Обучите алгоритм Холта-Уинтерса на данных временных рядов, чтобы сгенерировать прогнозируемые значения для временных рядов.
  2. Используйте прогнозируемые значения для расчета остатков (т. е. разницы между фактическими значениями и прогнозируемыми значениями) для временного ряда.
  3. Используйте алгоритм Isolation Forest для выявления любых аномалий в остатках.
  4. Если в остатках обнаружена аномалия, отметьте ее как аномалию в данных исходного временного ряда.

Плюсы:

  • Комбинация Holt-Winters и Isolation Forest может обрабатывать данные временных рядов и выявлять аномалии, которые могут возникнуть в будущем.
  • Holt-Winters может фиксировать сезонные и трендовые компоненты данных, в то время как Isolation Forest может выявлять аномальные точки данных, которые не соответствуют шаблонам, изученным Holt-Winters.
  • Модель может использоваться как для одномерных, так и для многомерных данных временных рядов.

Минусы:

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

Подход 4: CNN-LSTM

Псевдокод:

  1. Подготовьте данные:
  • Разделите данные на последовательности фиксированной длины
  • Нормализация данных

2. Постройте модель:

  • Определите слои CNN для извлечения функций из данных последовательности.
  • Определите слой LSTM для моделирования временных зависимостей
  • Определите полносвязный слой для выходного прогнозирования
  • Скомпилируйте модель с подходящей функцией потерь и оптимизатором

3. Обучите модель:

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

4. Протестируйте модель:

  • Оцените модель на тестовых данных
  • Получите прогнозируемые результаты
  • Рассчитать ошибку между прогнозируемыми выходами и фактическими выходами
  • Используйте порог, чтобы классифицировать точку данных как аномалию или нет

5. Визуализируйте результаты:

  • График фактических и прогнозируемых результатов
  • Выделите аномалии, выявленные моделью

6. Настройте модель:

  • Измените гиперпараметры модели, чтобы улучшить ее производительность.

Плюсы:

  • Может обрабатывать сложные пространственно-временные данные
  • Может захватывать как пространственные, так и временные закономерности
  • Может обнаруживать аномалии в режиме реального времени
  • Можно обучать от начала до конца, без необходимости разработки функций

Минусы:

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

Разница между пространственными и временными данными с точки зрения данных временных рядов?

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

Пример:

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

Почасовые показания температуры на метеостанции можно рассматривать как данные временного ряда.

Несколько контрольных точек для многовариантных подходов:

  1. Корреляция между переменными. Важно проверять корреляцию между различными переменными в данных. При высокой степени корреляции может быть сложно определить, какая переменная вызывает аномалию, чтобы избежать мультиколлинеарности.
  2. Нормализация данных. При использовании нескольких переменных важно нормализовать данные, чтобывсе переменные находились в одном масштабе. Это необходимо для того, чтобы одна переменная не доминировала в процессе обнаружения аномалий.
  3. Выбор релевантных переменных. Важно тщательно выбирать релевантные переменные для процесса обнаружения аномалий. Включение нерелевантных переменных может привести к искажению данных и неточным результатам.
  4. Размер данных для обучения. При использовании многомерного подхода важным фактором является размер набора данных для обучения. Чем больше набор обучающих данных, тем лучше модель может фиксировать изменчивость данных и точно обнаруживать аномалии.

Другие часто используемые алгоритмы:

  • LOCI, который представляет собой алгоритм, вычисляющий локальный корреляционный интеграл каждой точки данных и сравнивающий его с соседними точками. Аномалии — это те точки, которые имеют большое отклонение от их локальной оценки плотности.
  • Deep Autoencoder — модель глубокого обучения, использующая симметричную архитектуру кодировщик-декодер для изучения низкоразмерного представления входных данных и его реконструкции с минимальной ошибкой. Ошибка реконструкции может быть использована в качестве индикатора оценки аномалии.
  • Смешанная модель Гаусса (GMM) — алгоритм, который моделирует данные как смесь распределений Гаусса и оценивает параметры с помощью алгоритма максимизации ожидания. Аномалии — это те точки, которые имеют низкую вероятность принадлежать какой-либо из гауссовских компонент.
  • AutoEncoder Long Short Term Memory (AE-LSTM) — модель глубокого обучения, использующая архитектуру кодировщик-декодер для изучения низкоразмерного представления входных данных и его реконструкции с минимальной ошибкой. Ошибка реконструкции может быть использована в качестве индикатора оценки аномалии.

Примечание. Это может быть лучшим выбором при работе с одномерным случаем со слишком большим количеством зашумленных данных для захвата временных зависимостей. пример: при возникновении какой-либо неисправности в определенное время года или дня. Тогда это может быть золотым стандартом. Используйте моделирование, основанное на физике, для создания одной функции, нацеленной на несколько неисправностей одной и той же группы датчиков.

  • Facebook-Prophet — модель прогнозирования, в которой используется модель разложимых временных рядов с компонентами тенденций, сезонности и праздников. Он может обнаруживать аномалии путем сравнения фактических данных с прогнозируемыми значениями и их интервалами неопределенности.

Примечание. Если модель слишком сложна без полной сезонности (например, данные менее одного года или вы используете многомерный подход, лучше избегать Prophet).

  • Максимизация ожиданий (EM) – это итерационный метод поиска оценок максимального правдоподобия параметров в статистических моделях, где модель зависит от ненаблюдаемых скрытых переменных1. Он чередуется между этапом ожидания, который создает функцию ожидания логарифмического правдоподобия, используя текущую оценку параметров, и этапом максимизации, который вычисляет параметры, которые максимизируют ожидаемое логарифмическое правдоподобие, найденное на этапе ожидания.

Примечание. Если ваши данные имеют несколько кластеров, EM — очень плохой выбор. перед применением EM всегда хорошо обрабатывайте 2 вещи: выбросы и пропущенные значения. Этот алгоритм в большинстве случаев терпит неудачу из-за этих двух вещей, согласно моему опыту. Но это может быть лучшим выбором, когда есть очень небольшие аномальные записи.

Почему не АРИМА?

  1. Модели ARIMA предполагают стационарность: модели ARIMA лучше всего работают, когда данные временных рядов являются стационарными, что означает, что статистические свойства данных (такие как среднее значение и дисперсия) не меняются с течением времени. Однако данные о производстве солнечной энергии могут быть крайне нестационарными, со значительными сезонными и связанными с погодой колебаниями, которые могут повлиять на статистические свойства данных.
  2. Модели ARIMA могут не отражать долгосрочные тенденции: модели ARIMA предназначены для фиксации краткосрочных закономерностей и сезонности в данных временных рядов. Они могут быть не в состоянии фиксировать долгосрочные тенденции или изменения в данных, такие как изменения погодных условий или изменения эффективности солнечных батарей.
  3. Чувствительность к выбросам: ARIMA чувствителен к выбросам, что может привести к неточным прогнозам. Это может быть проблемой при работе с аномалиями, так как они могут значительно повлиять на производительность модели (данные датчиков всегда будут зашумлены, даже после удаления глобальных выбросов; на них это повлияет неблагоприятно).
  4. Сложность выбора оптимальных параметров: модели ARIMA требуют выбора оптимальных параметров (p, d, q), что может быть сложной задачей. Это связано с тем, что оптимальные параметры могут варьироваться в зависимости от данных и конкретной решаемой задачи. (Каждый раз проверять ACF и PACF для определения параметров действительно сложно.)
  5. Ограниченные возможности обработки сезонных данных: хотя модели ARIMA в некоторой степени могут обрабатывать сезонные данные, они могут не подходить для случаев, когда модели сезонности сложны или нерегулярны. Это может привести к неточным прогнозам и снижению эффективности обнаружения аномалий. (очень редко вы получите данные за весь год. В большинстве случаев после полугода установки заводские организации пытаются построить DTP-Платформу цифровой трансформации.)

Различные способы объединения модели на основе физики с алгоритмами машинного обучения:

Справочные коды:

  1. LSTM на основе MAE. кликните сюда".
  2. Алгоритм G означает в Python.

Следующая часть здесь.