Поиск аномалий во временных рядах в Python: как научиться находить их

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

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

Мы начнем с простого метода, основанного на статистическом анализе данных, который называется «правилом трех сигм”. Затем мы изучим методы машинного обучения для поиска аномалий, такие как детектирование выбросов и кластеризацию данных. Наконец, мы рассмотрим, как использовать библиотеку Python, называемую PyOD, для поиска аномалий в данных.

Теория поиска аномалий

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

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

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

Что такое аномалии?

Аномалии или выбросы – это значения, которые существенно отличаются от остальных данных в ряду, хотя можно предположить, что эти значения могут быть реальными. Такие значения могут возникать из-за ошибок в измерениях, случайностей, пропусков данных и других факторов. Аномалии могут представлять серьезный интерес для анализа, особенно в случаях, когда они указывают на проблемы или возможности для улучшения обработки данных.

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

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

Как работает алгоритм поиска аномалий?

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

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

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

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

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

Подготовка данных

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

Первый шаг — это загрузка данных в Python. Для этого можно использовать различные библиотеки, например pandas. Выгрузка данных может быть в формате CSV, Excel или любом другом текстовом формате. Обязательно проверьте, что данные загрузились полностью и не было ошибок при чтении.

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

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

Наконец, перед поиском аномалий необходимо разбить временной ряд на учебный и контрольный наборы. Учебный набор будет использоваться для обучения модели, а контрольный — для проверки ее качества.

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

Что такое временной ряд и как его создать?

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

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

ДатаТемператураАтмосферное давление
01.01.2021−10760
02.01.2021−8768
03.01.2021−16752

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

  • [-10, 760] — первое измерение;
  • [-8, 768] — второе измерение;
  • [-16, 752] — третье измерение.

Создание и выбор структуры данных зависит от применяемого алгоритма анализа данных. Наиболее распространенный формат для временных рядов в Python — это библиотека Pandas, которая предоставляет удобные инструменты для работы с временными рядами.

Как обработать и очистить данные?

Очистка данных – это очень важный этап в анализе данных. Исходные данные могут содержать много шума и выбросов, что может привести к неправильным результатам обработки и анализа. Вот несколько советов о том, как обработать и очистить данные перед их анализом:

  • Удаление дубликатов: Удаление дубликатов является первым шагом в очистке данных. Следует проверить, нет ли строк с полностью идентичным содержимым. Если такие строки есть, то нужно одну из них удалить.
  • Обработка пропущенных значений: В различных наборах данных могут быть пропущенные значения. Это может быть вызвано ошибками при сборе данных или техническими проблемами. Если эти пропущенные значения не очень много, то можно удалить строки с пропущенными значениями. Если же пропуски значений слишком много, то нужно заполнить их.
  • Удаление выбросов: Выбросы могут быть вызваны ошибками ввода, измерениями или уникальными ситуациями. Их нужно найти и удалить, чтобы исключить нежелательное влияние на результаты анализа.
  • Нормализация данных: Нормализация — процесс приведения всех данных к одной шкале. Это может помочь в сравнении данных и выделении зависимостей между ними.
  • Надежность данных: Важно убедиться, что данные, которые используются в анализе, являются достоверными и соответствуют требованиям задачи. Необходимо проверить их целостность и достоверность.

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

Выбор алгоритма поиска аномалий

Выбор алгоритма поиска аномалий зависит от конкретной задачи и особенностей данных.

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

Другой алгоритм — Isolation Forest — использует случайные разрезы на каждой итерации, чтобы разделить данные на выбросы и не-выбросы. Он хорошо работает с большими данными и не требует большого количества вычислений.

Некоторые алгоритмы, такие как One-Class SVM и Local Outlier Factor, могут использоваться для поиска аномалий в обучении без учителя. Это значит, что они могут работать с данными, для которых нет явных меток.

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

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

Как выбрать подходящий алгоритм?

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

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

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

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

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

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

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

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

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

  • Статистический метод — основывается на расчете среднего и стандартного отклонения для каждого элемента ряда. Аномалией считается элемент, выходящий за пределы доверительного интервала (например, 3 стандартных отклонения).
  • Метод K-ближайших соседей (KNN) — основывается на определении ближайших соседей для каждого элемента ряда. Аномалией считается элемент, у которого ближайшие соседи сильно отличаются от него.
  • Метод деревьев решений — использует деревья решений для определения аномалий. Алгоритм строит дерево, где каждый узел представляет собой разбиение ряда на две части. Аномалиями считаются элементы, которые оказываются в листьях дерева.

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

Выбор конкретного алгоритма зависит от специфики задачи и требований к точности. Лучший способ — попробовать несколько алгоритмов и выбрать тот, который работает лучше всего в конкретной ситуации.

Применение алгоритма

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

Для применения алгоритма стоит внимательно подготовить данные для анализа. Необходимо определить, какой признак или набор признаков будут использоваться в исследовании. Затем данные нужно загрузить в Python и преобразовать в формат временного ряда.

После подготовки данных можно приступить к поиску аномалий. Чаще всего используется алгоритм кратковременного преобразования Фурье (STFT) или алгоритм самоорганизующихся карт Кохонена (SOM). Эти алгоритмы позволяют выявлять шаблоны поведения, в том числе и аномалии во временных рядах.

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

Как настроить параметры алгоритма?

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

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

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

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

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

Примеры использования алгоритма на реальных данных

Алгоритм поиска аномалий во временных рядах позволяет эффективно обрабатывать большие объемы данных и выявлять скрытые закономерности. Ниже представлены примеры использования алгоритма на реальных данных:

Пример 1. Оценка качества работы электростанции

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

Пример 2. Анализ заболеваемости гриппом

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

Пример 3. Мониторинг работы промышленных систем

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

Оценка результатов

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

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

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

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

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

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

Как оценить точность алгоритма?

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

Для этого можно использовать различные метрики, включающие в себя:

  • Accuracy (точность) — оценка количества правильно определенных аномалий в выборке;
  • Precision (точность) — оценка количества верно положительных результатов относительно общего количества аномалий в выборке;
  • Recall (полнота) — оценка количества верно определенных аномалий в выборке относительно общего количества аномалий;
  • F1-score (оценка точности и полноты) — среднее гармоническое между точностью и полнотой;
  • AUC ROC (площадь под ROC кривой) — оценка качества алгоритма на основе False Positive Rate и True Positive Rate.

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

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

Что делать с ложными срабатываниями?

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

Чтобы снизить количество ложных срабатываний, можно использовать несколько подходов:

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

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

Интеграция с другими инструментами

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

1. Библиотеки для предобработки данных

Для работы с временными рядами необходимо иметь навыки предобработки данных. В Python есть множество библиотек, которые могут помочь в этом:

  • Pandas — для работы с таблицами данных
  • Numpy — для работы с массивами
  • Scikit-learn — для решения задач машинного обучения

2. Инструменты для визуализации данных

Для анализа временных рядов визуализация данных играет важную роль. С помощью графиков мы можем обнаружить аномалии, которые не видны при анализе данных в числовом виде. В Python есть множество инструментов для визуализации данных:

  • Matplotlib — самая популярная библиотека для визуализации данных
  • Seaborn — для создания более красивых и эстетичных графиков
  • Bokeh — для создания интерактивных графиков

3. Интеграция с базами данных

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

  • SQLAlchemy — для работы с SQL базами данных
  • MongoDB — для работы с MongoDB базой данных
БиблиотекаОписание
PandasДля работы с таблицами данных
NumpyДля работы с массивами
Scikit-learnДля решения задач машинного обучения

Интеграция Python с другими инструментами помогает улучшить качество анализа данных и найти скрытые аномалии во временных рядах.

Как использовать результаты поиска аномалий в реальном времени?

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

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

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

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

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

Как произвести интеграцию с БД и BI-системами?

Для успешной работы с большим объемом данных необходимо использовать БД и BI-системы. Важно научиться интегрировать эти инструменты для извлечения максимальной пользы.

Для начала необходимо выяснить какая БД и BI-система будут использоваться. Разные БД и BI-системы могут иметь разные методы интеграции. Например, для работы с Oracle можно использовать стандартный Python-модуль cx_Oracle.

При интеграции с BI-системами важно понимать, что BI-системы не хранят данные, а предоставляют доступ к данным, хранящимся в БД. Для интеграции BI-системы с БД необходимо настроить подключение BI-системы к БД.

После настройки соединения с БД и BI-системы можно приступать к работе с данными. Для этого можно использовать запросы SQL. Для упрощения работы с SQL-запросами можно использовать ORM-библиотеки, например, SQLAlchemy. Данные могут быть представлены в виде таблиц, графиков, графов, дашбордов и т. д.

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

Выводы

Аномалии во временных рядах могут иметь различные причины, включая ошибки в данных, неожиданные события, изменения в трендах и сезонности, и многие другие. Чтобы найти аномалии, можно использовать различные алгоритмы, такие как ARIMA, Prophet, LSTM, Isolation Forest, One-Class SVM и другие.

Python предоставляет мощные библиотеки для анализа временных рядов, включая Pandas, Numpy, Matplotlib, Seaborn, Statsmodels, Scikit-learn и другие. С их помощью вы можете не только найти аномалии, но также визуализировать данные, построить модели и прогнозы.

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

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

FAQ

Какие временные ряды можно анализировать с помощью Python?

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

Какой инструментарий используется для анализа временных рядов в Python?

Для анализа временных рядов в Python используются различные библиотеки, такие как Pandas, Matplotlib, Seaborn, Statsmodels и др.

Как производится поиск аномалий во временных рядах?

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

Какие методы статистического анализа используются для поиска аномалий во временных рядах?

Для поиска аномалий во временных рядах можно использовать методы статистического анализа, такие как Z-оценка, MAD, График Бокса-Дженкинса и др.

Какие алгоритмы машинного обучения используются для поиска аномалий во временных рядах?

Для поиска аномалий во временных рядах можно использовать алгоритмы машинного обучения, такие как Isolation Forest, One-Class SVM, Local Outlier Factor и др.

Cодержание

Ссылка на основную публикацию
Adblock
detector