С необходимостью обработки выбросов в данных сталкиваются многие аналитики. В Loginom встроен компонент для быстрого определения экстремальных значений с возможностью их автоматического удаления или замены.
Выявление и устранение выбросов является важной частью управления данными. Экстремальные значения влияют на результат анализа, поэтому важно знать и использовать способы сниженния их негативного воздействия.
Выбросом (англ. outlier) считается значение в данных, которое находится далеко за пределами других наблюдений.
Несмотря на то, что это широко используемое определение отождествляет выбросы и экстремальные значения, в данной статье оно «разделено» на две смысловые части:
Причины выбросов разнообразны:
Искать и устранять экстремальные значения нужно по нескольким причинам.
Во-первых, большинство аналитических алгоритмов, работая с наборами, в которых присутствует заметное количество экстремальных значений, пытаются найти идеально описывающее всю совокупность данных решение. Однако, как правило, в итоге получается модель, которая плохо описывает и экстремальные выбросы, и остальные средние значения. Поэтому при построении предсказательных моделей простое удаление экстремальных значений может повысить точность решения.
Во-вторых, многие графические и статистические характеристики наборов данных чувствительны к наличию экстремальных значений. Например, несколько экстремальных выбросов в истории продаж способны серьезно изменить средний чек, а построенный на этих данных график не будет отражать реального положения дел.
В-третьих, в некоторых случаях удаление выбросов способствует получению объектов изучения с нормальным распределением, что расширяет спектр инструментов для последующего анализа.
К сожалению, нет универсального метода или алгоритма поиска экстремальных значений. Как минимум потому, что существуют много критериев и подходов для идентификации выбросов. Решение о том, что правильнее применить, остается за аналитиком.
Самым простым инструментом выявления выбросов является визуализация. Она позволяет сразу разглядеть отклонения, незаметные на больших наборах данных. Это один из важнейших этапов разведочного анализа данных.
Одним из популярных способов визуализации одномерных наборов является гистограмма. На рисунке 1 приведен пример гистограммы.
Из рисунка 1 видно, что распределение данных в наборе близко к нормальному. Воспользуемся следующей формулой для определения верхней (Lim_{max}) и нижней (Lim_{min}) границ выбросов:
Lim_{max} = \bar{x} + N_{s}*S
Lim_{min} = \bar{x} - N_{s}*S
где \bar{x} — среднее значение, S — стандартное отклонение, N_{s}=3 — заданное число стандартных отклонений.
Число 3 обусловлено тем, что в пределах трех среднеквадратических отклонений лежит 99.72% значений нормально распределенных данных. В случаях, когда данные сильно распределены, параметр N_{s} можно варьировать в сторону увеличения.
На рисунке 2 приведен другой вариант гистограммы:
Из рисунка 2 видно, что распределение данных отличается от нормального, есть перекос в правую сторону. Предыдущий способ задания границ выбросов к ним не подходит. В таком случае следует применять другой подход — метод интерквартильных (или межквартильных) расстояний, который оперирует следующими критериями для нахождения максимальных и минимальных (экстремальных) значений:
Lim_{max} = Q_{3} + N_{i}*IQR
Lim_{min} = Q_{1} - N_{i}*IQR
где Q3 — третий квартиль, Q1 — первый квартиль, IQR — интерквартильное расстояние (или интерквартильный размах), определяемое по формуле IQR=Q_{3}-Q_{1},
N_{i}=1.5 — заданное число интерквартильного размаха. В некоторых случаях, когда данные сильно распределены, этот параметр можно варьировать в сторону увеличения.
Графическим пояснением представления квартилей служит диаграмма размахов или «ящик с усами» — один из известных и информативных способов визуализации распределения одномерных данных.
Она позволяет компактно показывать сразу много параметров (слева–направо): минимум, нижний квартиль (25% процентиль), медиану (50% процентиль), верхний квартиль (75% процентиль), максимум. В зависимости от характера имеющихся данных на диаграмме могут отсутствовать или присутствовать выбросы (обозначаются обычно точками) — только минимальные экстремальные значения, только максимальные, или те и другие.
Минимальные и максимальные значения в данном случае обозначены вертикальными линиями, которые соединяются с соседними квартилями «усами» (штриховые линии).
Для обоих методов — когда распределение одномерных данных является нормальным и когда отличается от него — выбросами будут считаться все значения меньше нижней и больше верхней границ.
Решение о способе устранения выбросов зависит от особенностей набора данных, а также цели конкретного проекта. Выбор последующих действий в отношении экстремальных значений во многом похож на обработку пропущенных данных, описанную в статье «Обработка пропусков в данных».
В большинстве прикладных задач внимание аналитиков сосредотачивается на анализе среднего поведения, надежной усредненной тенденции с высокой степенью достоверности. Это имеет смысл, потому что формирование выводов на основе предсказания чрезвычайно больших или малых значений ненадежно и часто бесполезно, т.к. не носит постоянный характер.
Среднее значение из наиболее вероятного интервала для непрерывных атрибутов рассчитывается как показатель Mean most likely interval, а для дискретных — как Mode (мода распределения).
Есть случаи, когда отбрасыванием экстремальных значений стоит пользоваться с осторожностью.
Если есть уверенность в корректности формирования выборки, то нет никаких оснований отбрасывать достоверные данные только потому, что они не соответствуют некоторым предвзятым ожиданиям относительно того, как данные «должны» вести себя. Вполне возможно, что если пополнить имеющиеся данные дополнительными атрибутами, то экстремальные значения приобретут смысл и перестанут считаться выбросами.
Иногда «реальные выбросы» (в терминах данной статьи) могут быть интересными «сами по себе»: указывать на структурные изменения в данных, несоответствие ожиданиям, изменение дисперсии, наличие кластеров или быть просто большим шумом, который можно сгладить. А понимание причин, по которым конкретное наблюдение отличается от остальных, приближает аналитика к решению проблемы или к оптимизации анализируемого процесса.
Все описанные выше методы и подходы управления экстремальными значениями и выбросами в наборах данных реализованы в аналитической платформе Loginom в компоненте «Редактирование выбросов». В нем объединены возможности работы с упорядоченными и неупорядоченными данными, с данными, которые имеют нормальное распределение или не отвечают этому требованию.
В данном компоненте разделение сильно отклоняющихся от основной массы значений на выбросы и экстремальные значения происходит с помощью задания двух уровней порогов:
При этом пользователь может воспользоваться как исходными предварительными установками компонента по умолчанию, так и изменять указанные значения границ.
Чтобы избежать создания иллюзии простоты решения описанной проблемы, стоит обратить внимание на часть обстоятельств, незатронутых в данной статье.
Если у аналитика или эксперта в изучаемой области есть уверенность, что полученные данные или их часть «должны» удовлетворять условию нормальности, а они таковыми не являются, есть методы приведения их к нормализованному виду для дальнейшей обработки и анализа с помощью статистических методов.
Такие действия полезны, когда выявленные выбросы позволяют говорить о сильном искажении изученного набора данных. Преобразовывая переменные, можно устранить выбросы, например, взяв натуральный логарифм значения. Таким образом уменьшается вариация, вызванная экстремальными значениями. Это можно сделать для наборов данных, которые не имеют отрицательных значений. Иногда полезно применять нормализацию данных, что позволяет привести данные к единому масштабу.
Важно помнить, что сами по себе статистические тесты не могут дать достоверный ответ на вопрос, следует ли отбрасывать или корректировать обнаруженные выбросы. Такое решение нужно принимать, опираясь на знание предметной области и особенностей процесса сбора данных.