PyOD: python-библиотека для обнаружения аномальных данных

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

Обнаружение аномалий («выбросов») в большинстве случаев осложнено отсутствием соответствующих меток у таких данных и потому является задачей обучения без учителя.  Специальные алгоритмы обнаружения выбросов дают возможность надежного распознавания образов в больших, неразмеченных массивах данных. PyOD включает широкий класс алгоритмов обнаружения аномалий, начиная с классических алгоритмов, таких как Isolation Forest, и заканчивая новейшими методами глубокого обучения и новыми алгоритмами (например, COPOD). Алгоритмы, включенные в PyOD, часто используются в исследованиях. Библиотека проста в использовании и содержит унифицированную документацию с примерами.

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

  • линейные модели, в частности, PCA и One-Class SVM;
  • модели на основе расчета близости, измеряющие расстояния между элементами данных: близкие друг к другу данные с большей вероятностью будут нормальными, а отдаленные – аномальными;
  • вероятностные модели, использующие статистические распределения для выявления выбросов;
  • модели, строящие ансамбли выбросов используют модельные ансамбли, чтобы выделить удаленные точки (одним из таких алгоритмов является Isolation Forest);
  • нейронные сети: автоэнкодеры, в том числе вариационные, могут быть обучены распознаванию аномалий в неразмеченных данных.

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

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

Подписаться
Уведомить о
guest

0 Comments
Межтекстовые Отзывы
Посмотреть все комментарии

gogpt