Обнаружение аномалий в данных временных рядов

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

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

Когда мы хотим создать детекторы на основе ИИ;

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

Существует много различных типов аномалий, но некоторые из наиболее распространенных:

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

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

— Тенденции. Тенденция — это аномалия, при которой данные меняют направление, например, с увеличения на уменьшение.

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

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

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

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

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

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

  1. Статистические методы. Эти методы ищут необычные закономерности в данных, которые плохо объясняются остальными данными.
  2. Методы машинного обучения. Эти методы используют алгоритмы для изучения данных и выявления шаблонов, указывающих на аномалию.
  3. Методы интеллектуального анализа данных. Эти методы ищут необычные закономерности в данных, которые не могут быть хорошо объяснены остальными данными.

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

  1. Метод ожидания. В этом подходе мы разделяем наши данные на обучающий набор и тестовый набор. Мы обучаем нашу систему ИИ на тренировочном наборе, а затем оцениваем ее на тестовом наборе.
  2. Перекрестная проверка. В этом подходе мы разделяем наши данные на несколько разных наборов. Мы обучаем нашу систему искусственного интеллекта на одном наборе, а затем оцениваем ее на других наборах. Это повторяется до тех пор, пока все наборы не будут использованы как в качестве обучающего набора, так и в качестве тестового набора.
  3. Bootstrap. В этом подходе мы создаем несколько разных наборов данных путем выборки из нашего исходного набора данных. Затем мы обучаем и оцениваем нашу систему ИИ на каждом из этих наборов данных.

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