Выброс

Материал из Викиконспекты
Версия от 17:14, 24 января 2019; Fest (обсуждение | вклад) (Алгоритмы борьбы с выбросами)
Перейти к: навигация, поиск

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

Рис 1. График boxplot населения регионов России в 1990 году, где можно заметить 5 выбросов

Виды выбросов

Выбросы могут быть двух видов: одномерные и многомерные. Одномерные выбросы можно найти при рассмотрении распределения значений объектов в одном пространстве. Многомерные выбросы можно найти в n-мерном пространстве (из n-объектов). Рассмотрение распределений в n-мерных пространствах может быть очень сложным для человеческого мозга, поэтому необходимо обучить модель, чтобы сделать это.
Выбросы также могут отличаться в зависимости от окружающей среды: точечные выбросы, контекстуальные выбросы или коллективные выбросы. Точечные выбросы - это единичные точки данных, расположенные далеко от остальной части распределения. Контекстные выбросы могут представлять собой шум в данных, например, знаки препинания при выполнении анализа текста или сигнал фонового шума при распознавании речи. Коллективные выбросы могут быть подмножествами новшеств в данных, таких как сигнал, который может указывать на открытие новых явлений.

Причины возникновения выбросов

  • Сбой работы оборудования
  • Человеческий фактор
  • Случайность
  • Уникальные явления
  • и др.

Примеры

Рис 2. Хорошо обученная модель с выбросами
Рис 3. Переобученная модель на выбросах

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

Методы обнаружения и борьбы с выбросами

Методы обнаружения выбросов

  1. Экстремальный анализ данных(англ. extreme value analysis). При таком анализе не применяются какие-либо специальные статистические методы. Обычно этот метод применим для одномерного случая. Алгоритм использования таков:
    • Визуализировать данные, используя диаграммы и гистограммы для нахождения экстремальных значений.
    • Задействовать распределение, например Гауссовское, и найти значения, чье стандартное отклонение отличается в 2-3 раза от математического ожидания или в полтора раза от первой либо третьей квартилей.
    • Отфильтровать предполагаемые выбросы из обучающей выборки и оценить работу модели.
  2. Апроксимирующий метод (англ. proximity method). Чуть более сложный метод, заключающийся в применении кластеризующих методов.
    • Использовать метод кластеризации для определения кластеров для данных.
    • Идентифицировать и отметить центроиды каждого кластера.
    • Соотнести кластеры с экземплярами данных, находящимися на фиксированном расстоянии или на процентном удалении от центроиды соответствующего кластера.
    • Отфильтровать предполагаемые выбросы из обучающей выборки и оценить работу модели.
  3. Проецирующие методы (англ. projections methods). Эти методы довольно быстро и просто определяют выбросы в выборке.
    • Использовать один из проецирующих методов, например метод главных компонент (англ. principal component analysis, PCA[1]) или самоорганизующиеся карты Кохонена(англ. self-organizing map, SOM[2]) или проекцию Саммона(англ. Sammon mapping, Sammon projection[3]), для суммирования обучающих данных в двух измерениях.
    • Визуализировать отображение
    • Использовать критерий близости от проецируемых значений или от вектора таблицы кодирования (англ. codebook vector) для идентифицирования выбросов.
    • Отфильтровать предполагаемые выбросы из обучающей выборки и оценить работу модели.

Алгоритмы борьбы с выбросами

  • Локально взвешенное сглаживание(англ. LOcally WEighted Scatter plot Smoothing, LOWESS)[4].
ВХОД: X (-) обучающая выборка;
ВЫХОД: коэффиценты γi,i=1,...,;
________________________________________________________
1: инициализация: γi:=1,i=1,...,;
2: повторять
3:   для всех объектов i=1,...,;
4:     вычислить оценки скользящего контроля:
       ai:=ah(xi;Xxi)=j=1,jiyjγjK(ρ(xi,xj)h(xi))j=1,jiγjK(ρ(xi,xj)h(xi))
5:   для всех объектов i=1,...,;
6:     γi:=˜K(|aiyi|);
7: пока коэффиценты γi не стабилизируются;

Пример. Допустим мы пытаемся восстановить зависимость, используя формулу Надарая-Ватсона[5] по некоторым данным из n наблюдений, 2 из которых имеют излишне высокое и излишне низкое значения соответственно. Большие ошибки, вызванные этими выбросами, довольно заметно исказят полученный результат по формуле. В методе локально взвешенного сглаживания мы домножаем веса объектов wi на коэффиценты γi=˜K(εi), значения которых тем меньше, чем величина ошибки εi. Для этого мы возьмём квартическое ядро (не обязательно совпадающее с основным ядром) ˜K(ε)=KQ(ε6Me{εi}), где Me{εi} — медиана множества значений εi. Таким образом выбросы будут нивелироваться автоматически при использовании данного подхода. В статистике методы, устойчивые к нарушениям модельных предположений о данных, называются робастными. Метод локально взвешенного сглаживания относится к робастным методам, так как он устойчив к наличию небольшого количества выбросов.

  • Дерево принятия решения (англ. decision tree[6]). Это дерево, как и уже описанный алгоритм локально взвешенного сглаживания, относится робастным методам.
  • Робастная регрессия (англ. robust regression[7]). В отличии регрессии, использующей, например, метод наименьших квадратов, в этом алгоритме не строится идеализированное предположение, что вектор ошибок ε распределен согласно нормальному закону. Однако на практике зачастую имеют место отклонения от этого предположения. Тогда можно применить метод наименьших модулей (англ. Least Absolute Deviation, LAD [8]) в случае, если распределение ошибок измерений подчиняются распределению Лапласа (англ. Laplace distribution [9]).

См.также

Примечания

Источники информации

  1. https://machinelearningmastery.com/how-to-identify-outliers-in-your-data/
  2. https://ru.coursera.org/lecture/vvedenie-mashinnoe-obuchenie/obnaruzhieniie-vybrosov-t9PG4