group-telegram.com/reliable_ml/138
Last Update:
Необычные значения в данных
Цикл постов о подготовке данных. Пост 2
Продолжаем серию постов, посвященную подготовке данных. Первый пост тут.
Как анализировать выбросы: и тут causality
При анализе выбросов нужно проверять, нет ли взаимосвязи между выбросами в одной из компонент и другими признаками. По аналогии с пропущенными значениями, где обычно выделяют случаи MCAR, MAR, и MNAR, выбросы можно разделить на:
- Outlier Completely At Random - аномальное значение одного из признаков никак не связано с значениями других признаков. Скорее всего, эту точку данных нужно выкинуть. Пример - при медицинском осмотре сотрудников иногда барахлил автоматический тонометр, ошибка полностью случайна.
- Outlier At Random - аномальное значение одного из признаков можно объяснить другими признаками. Например, мальчиков и девочек на медосмотре смотрели разные врачи - и врач, смотревший мальчиков, был менее внимателен и чаще ошибался. Такие выбросы можно считать пропущенными значениями и, возможно, импутировать, S. Jager(2021).
- Outlier Not At Random - аномальное значение, зависящее от значения признака. Например, люди с большими доходами иногда занижают их в опросах, а с маленькими - завышают. Тогда выявленная аномалия - сама по себе важный признак. А еще это может быть не выброс, а редкий случай,.
Подходы и инструменты для выявления выбросов
Для выявления выбросов используют много подходов.
Наиболее общий из них - ошибка реконструкции автоэнкодером. Автоэнкодер выучивает прямую и обратную проекции в пространство меньшей размерности. Если исследуемый пример после кодирования и обратного декодирования значительно изменился, можно предположить, что распределение, на котором обучался автоэнкодер, отличается от распределения, из которого был получен рассматриваемый пример. Подробнее, например, тут.
Другой популярный подход базируется на том, что необычные значения легко отделить от остальных. Пример такого подхода - IsolationForest.
Хороший обзор подходов к детекции выбросов есть в лекциях MIT от 2023 г. и статьях А. Дьяконова, кое-что есть в 4й лекции нашего курса по ML System Design, современные подходы собраны в обзоре PapersWithCode по Anomaly Detection.
Есть хорошие библиотеки Luminaire и PyOD. PyOD - удобный конструктор детекторов аномалий. В Luminaire много интересных подходов на основе структурных моделей, в том числе прекрасный подход для работы с временными рядами.
В следующем посте цикла мы подытожим теоретическую часть небольшим фреймворком - руководством по работе с выбросами на основе примеров из практики.
Ваш @Reliable ML
BY Reliable ML
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
Share with your friend now:
group-telegram.com/reliable_ml/138