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

На сегодняшний день методы обнаружения аномалий применяются для различных целей: обнаружение мошенничества, предотвращение утечки данных, а также находят применение в медицине и более специализированных областях. Методы обнаружения аномалий в данных делятся на два класса: novelty detection и outlier detection. Здесь есть принципиальное отличие, так как novelty («новизна») – это объект, кардинально отличающийся своими свойствами от предыдущих объектов выборки и характеризующийся совершенно новым поведением при неизмененных условиях.

В свою очередь, outlier («выброс») – это:

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

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

Методы обнаружения выбросов в данных разделяются на supervised («с учителем»), semi-supervised и unsupervised («без учителя») anomaly detection.

Supervised – метод, в котором на обучение в модель подаются уже маркированные данные, имеющие labels («пометки данных»), заранее охарактеризованных как выбросы. Semi-supervised – на вход подается выборка, состоящая только из нормальных значений, без каких-либо отклонений. Основная идея заключается в том, что аномалии будут выявляться на последующих этапах как результат отклонения от значений, принадлежащих исходной выборке.

Unsupervised anomaly detection – случай, когда отсутствуют data labels, и разрабатываемому алгоритму необходимо самостоятельно определить, какие данные являются аномалиями. Более того, при данном варианте нет особого различия между тренировочными и тестовыми данными. Идея заключается в обнаружении аномалий на основе внутренних свойств данных. Как правило, используются параметры distances («расстояние») или densities («плотность») для принятия решения, является ли значение выбросом или нет.

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

  1. Графический (Boxplot, Scatter, Adjusted quantile plot и т. п.);
  2. Статистический (правило 3-х сигм, IQR, z-score и т. п.);
  3. Методы машинного обучения (SVM, Decision trees, k-means, knn и т.п.).

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

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

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

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

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

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

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

Выбор моделей зависит от ряда факторов:

– от поставленной задачи;
– от качества выборки;
– от общего объема данных;
– от описания выборки (маркированная/немаркированная выборка);
– от требуемой скорости работы алгоритма;
– от количества потенциальных аномалий;
– от характера аномалий (ярко-/не ярко выраженные).

Сравнительный анализ методов машинного обучения при обнаружении аномалий

Метод обученияПреимуществаНедостатки
123
 

 

 

Метод опорных векторов

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

 

 

 

 

Нейронные сети

Возможность преобразования входной информации в выходную, не используя информацию о вероятностной модели распределения данных. Много возможностей оптимизации модели за счет применения нелинейных      искусственных нейронов. Способность переобучения и адаптации алгоритма к меняющейся, нестационарной среде. Универсальность алгоритма. Возможность применения одного проектного решения в нескольких предметных областях. Высокая скорость реализацииСложность в выборе подходящей структуры нейронной сети для конкретной за-дачи; обученные нейронные сети являются не трактуемыми моделями — «чёрными ящиками», поэтому логическая интерпретация    описанных закономерностей практически невозможна. Возможность обработки только численных переменных
 

 

 

Метод ближайших соседей

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

 

 

 

 

 

Решающие деревья

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

При выборе модели аналитик руководствуется собственными критериями. Каждый метод обнаружения аномалий в той или иной степени является эффективным/не эффективным в применении к определенным задачам. Как правило, используется несколько методов для улучшения результата. Комбинируются статистические методы с методами машинного обучения, а также используются графические методы для упрощенного и более «грубого» отсечения аномалий.

В данной работе будут применяться статистические методы обнаружения аномалий, такие как: правило 3-х сигм и IQR (Interquartile Ranges), а также метод ARIMA. Здесь, использовались данные по покупкам и просмотрам товаров на сайте. Временной интервал – месяц. Объектом исследования на наличие аномалий выступала конверсия, представленная как функция зависимости от следующих параметров:

– количество просмотров товаров,
– количество купленных товаров.

Обратимся к правилу 3-х сигм для обнаружения выбросов. По тесту Колмогорова – Смирнова ряд не прошел тест на нормальность. Поэтому было применено преобразование Бокса-Кокса. Далее, было реализовано правило 3-х сигм и IQR test (Interquartile Ranges). Результаты представлены в таблице ниже.

Результаты применения правила 3-х сигм и IQR теста

Тип выбросов3-Sigma ruleIQR test
Количество обычных выбросов в конверсии4651
Количество экстремальных выбросов в конверсии621

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

В процессе предобработки данных было обнаружено, что ряд не содержит сезонности или тренда, поэтому данный параметр в модели ARIMA был принят равным 0. Далее осуществлялся процесс идентификации, заключающийся в оценке временного ряда на стационарность и в определении параметров модели ARIMA. Для определения стационарности ряда использовался критерий Дикки-Фуллера (p-value = 1.31), по которому ряд был охарактеризован как стационарный.

Для выбора параметров использовались два диагностических графика, которые помогают выбрать p и q параметры для ARMA или ARIMA.

Функция автокорреляции (ACF): График показывает сумму корреляции наблюдений со значениями задержки (лагами).

Частичная функция автокорреляции (PACF): График показывает сумму корреляции для данных со значениями лагов, которые не учитываются за предыдущими запаздывающими значениями наблюдений.

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

Функция автокорреляции (ACF) и Частичная функция автокорреляции (PACF)

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

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

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

При анализе данных на наличие выбросов следует:

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

Андрей Никитенко
Андрей Никитенко
Задать вопрос эксперту
Понравилась статья? Поделить с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: