Задача поиска аномалий

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

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 24.12.2018
Размер файла 1,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Задача поиска аномалий

Введение

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

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

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

1.Предметная область

1.1 Признаки аномалий

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

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

? Сложность эволюционной динамики нормального поведения, трактующейся как разность понятия нормального поведения в настоящем и будущем.

? Сложность различного определения понятия «аномалия» для различных областей применения.

? Сложность доступной маркировки данных для обучения моделей, используемых методами обнаружения аномалий.

? Сложность удаления нежелательной шумовой составляющей.

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

1.2 Виды аномалий

Аномалии в данных могут быть отнесены к одному из трех основных типов, представленных ниже.

Точечные аномалии возникают в ситуации, когда отдельный экземпляр данных может рассматриваться как аномальный по отношению к остальным данным. На рисунке 1 экземпляр А1, а также группа экземпляров А2 являются аномальными при нормальных экземплярах в группах С1 и С2. Данный вид аномалий является наиболее легко распознаваемым, большинство существующих методов создано для распознавания точечных аномалий.

Рисунок 1. Точечные аномалии

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

Контекстуальные аномалии (Рисунок 2) наблюдаются, если экземпляр данных является аномальным лишь в определенном контексте, (данный вид аномалий также называется условным). Для определения аномалий этого типа основным является выделение контекстуальных и поведенческих атрибутов:

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

? Поведенческие атрибуты определяют не контекстуальные характеристики, относящиеся к конкретному экземпляру данных.

Рисунок 2. Контекстуальные аномалии

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

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

Рисунок 3. Коллективные аномалии

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

1.3 Методы обнаружения аномалий

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

? Определение выбросов без какой-либо априорной информации об исследуемых данных.

По существу, такой тип детектирования является кластеризацией без учителя. Согласно основной его концепции, данные обрабатываются по статистическому распределению, а наиболее отдаленные точки маркируются как потенциальные выбросы. При этом подразумевается, что аномалии удалены от нормальных данных. На рис. 4 изображен наглядный пример такого определения выбросов. Точки V, W, X, Y и Z удалены от главного кластера и могут быть маркированы как аномалии.

Рисунок 4. Пример применения обнаружения аномалий без учителя

машинный коллективный аномалия

? Определение выбросов на основе создания модели нормального и аномального поведения.

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

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

При этом, если классифицируемый пример близок к нормальной области, он маркируется как нормальный, в противном случае - как аномальный.

Рисунок 5. Пример применения обнаружения аномалий с учителем

? Определение выбросов на основе модели только одной линии поведения (нормальной или, как бывает в некоторых случаях, аномальной)

В литературе такой тип обнаружения аномалий зачастую называют поиск новинок (распознавание новинок) и относят к распознаванию на базе обучения частично с учителем. Система обнаружения аномалий такого типа классифицирует новый пример как нормальный, если он сравним с обучающей выборкой, и распознает как аномалию в обратном случае. Рис. 6 иллюстрирует нормальную область, необходимую для обучения частично с учителем. Информация о нормальном поведении на рис. 6 подобна информации рис. 4. При сравнении точек V, W, X, Y рис. 4 с обученной моделью на основе данных рис. 6, они будут классифицированы как выбросы в связи с их удаленностью от обучающей выборки.

Рисунок 6. Пример применения обнаружения аномалий частично с учителем

1.4 Постановка задачи

В дальнейшем будем полагать, что данные имеют признаковое представление, то есть каждый объект задан в виде некоторого вектора из . В классической постановке задача детектирования аномалий формулируется так: в заданном множестве для каждого элемента выдать 0, если этот объект относится к классу нормальных данных, и 1, если этот объект аномален. Такая задача относится к классу задач обучения без учителя, поскольку правильных ответов на части входных данных не предоставляется.

В аналогичной задаче обучения с учителем на некоторой части входных данных известен верный ответ, то есть для каждого объекта известны метки является ли данный объект аномалией. Задача выдачи меток для новых данных, , формально является задачей бинарной классификации, и, значит, может решаться при помощи любых алгоритмов машинного обучения с учителем. Практически все алгоритмы детектирования аномалий сводятся к построению некоторой функции anomaly_score(x), которая по данному объекту выдаёт некоторый «рейтинг» аномальности. После этого разделение на класс аномалий и класс нормальных данных производится бинаризацией по некоторому порогу, выбор которого является особым этапом решения задачи.

1.5 Вероятностный подход

В генеративном подходе предлагается подобрать вероятностную модель распределения, из которого были сэмплированы нормальные данные, то есть найти плотность распределения p(x). Аномалиями при этом объявляются объекты, имеющие низкое правдоподобие, то есть в качестве anomaly_score выступает сама функция p. Однако, такой подход сталкивается с принципиальными трудностями. Для построения p(x) требуется решить задачу вида:

,

Где - нормальные данные предоставленной выборки, - семейство плотностей распределений, параметризованные . Если метки отсутствуют, эта задача вынужденно заменяется на другую:

,

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

1.6 Линейные методы

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

Одним из возможных алгоритмов является следующий: объявить i-ый признак выборки целевой переменной и решать задачу линейной регрессией на основе оставшихся признаков. Отклонение прогноза от истины полагается значением . Итоговым ответом объявляется усреднение этого результата по всем признакам. Такой алгоритм предполагает найти некоторую линейную зависимость между признаками, которая будет нарушаться для аномалий.

Рисунок 7. Расстояние до одномерного аппроксимирующего подпространства

1.7 Метрические методы

машинный коллективный аномалия

Метрические методы пытаются найти в данных точки, в некотором смысле изолированные от остальных. Если в пространстве задана некоторая метрика , то можно вводить следующие представления аномальности:

· Аномалии-точки, непопадающие ни в один кластер. К данным применяется один из алгоритмов кластеризации; размер кластера, в котором оказалась точка, объявляется её anomaly_score.

· Локальная плотность в аномальных точках низкая. Для данной точки anomaly_score объявляется локальная плотность, которая оценивается некоторым непараметрическим способом (например, ядерной оценкой плотности Розенблата--Парзена).

· Расстояние от данной точки до ближайших соседей велико. В качестве anomaly_score может выступать:

o Расстояние до k-го ближайшего соседа;

o Среднее расстояние до k ближайших соседей;

o Медиана расстояний до k ближайших соседей;

o Гармоническое среднее до k ближайших соседей;

o Доля из k ближайших соседей, для которых данная точка является не более чем k-ым соседом.

Использование подобных алгоритмов с параметрами (например, k) накладывает требование наличия априорной информации о потенциальных размерах кластеров аномалий. Такие кластера могут остаться не выявленными, если алгоритм рассматривает малое число ближайших соседей; при большом же числе минимальное значение построенной функции может оказаться вдали от подпространства нормальных данных (рис.8).

Рисунок 8. Пример задачи с нетривиальным подпространством нормальных данных, в котором аномалии расположены в центре масс

2.Алгоритмы обнаружения аномалий

2.1 Isolation Forest

Идея изолирующего леса (Isolation Forest) основана на принципе Монте-Карло: проводится случайное разбиение пространства признаков, такое что в среднем изолированные точки отсекаются от нормальных, кластеризованных данных. Окончательный результат усредняется по нескольким запускам стохастического алгоритма.

Алгоритм изолирующего дерева (Isolation Tree) заключается в построении случайного бинарного решающего дерева. Корнем дерева является всё пространство признаков; в очередном узле выбирается случайный признак и случайный порог разбиения, сэмплированный из равномерного распределения на отрезке от минимального до максимального значения выбранного признака. Критерием останова является тождественное совпадение всех объектов в узле, то есть решающее дерево строится полностью. Ответом в листе, который также соответствует anomaly_score алгоритма, объявляется глубина листа в построенном дереве.

Утверждается, что аномальным точкам свойственно оказываться в листьях с низкой глубиной, то есть в листьях, близким к корню, когда же для разбиения гиперплоскостями кластера нормальных данных дереву потребуется построить ещё несколько уровней. При этом количество таких уровней пропорционально размеру кластера; следовательно, пропорционально и anomaly_score для лежащих в нём точек. Это означает, что объекты из кластеров малых размеров, которые потенциально являются аномалиями, будут иметь anomaly_score ниже, чем из кластеров нормальных данных.

Алгоритм обладает рядом существенных преимуществ:

Алгоритм распознаёт аномалии различных видов: как изолированные точки с низкой локальной плотностью, так и кластеры аномалий малых размеров.

Сложность изолирующего дерева - , что эффективнее большинства других алгоритмов.

Не требует существенных затрат по памяти, в отличие от, например, метрических методов, зачастую требующих построения матрицы попарных расстояний. Отсутствуют параметры, требующие подбора.

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

Устойчив к проклятию размерности.

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

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

Основная идея метода -- перевод исходных векторов в пространство более высокой размерности и поиск разделяющей гиперплоскости с максимальным зазором в этом пространстве. Tермин «отступ» (margin) часто ассоциируется с SVM. Отступ гиперплоскости - это расстояние между гиперплоскостью и 2 ближайшими точками данных каждого класса. Суть в том, что SVM пытается максимизировать маржу так, чтобы гиперплоскость находилась примерно на одинаковом расстоянии от этих точек - это снижает шанс ошибок классификации. В приложении приведен листинг кода, выполняющего сравнение алгоритмов Isolation Forest и SVM при решении задачи детектирования аномальных данных. Результат сравнения представлен на рисунке 9.

Рисунок 9. Результат сравнения алгоритмов

машинный коллективный аномалия

Заключение

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

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

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

Список использованной литературы

1.Обзор методов обнаружения аномалий в потоках данных: учеб.-метод. пособие / В.П. Шкодырев, К.И. Ягафаров, В.А. Баштовенко, Е.Э. Ильина

2.Методы детектирования аномалий / С.М. Иванов - Москва, 2017 - Московский государственный университет имени М. В. Ломоносова

3.Выявление аномалий в работе механизмов методами машинного обучения / А.Г. Дьяконов, А.М. Головина. // Международная конференция «Аналитика и управление данными в областях с интенсивным использованием данных» - Москва, 2017

4.Поиск аномалий [Электронный ресурс]. - Режим доступа: https://dyakonov.org/2017/04/19/%D0%BF%D0%BE%D0%B8%D1%81%D0%BA-%D0%B0%D0%BD%D0%BE%D0%BC%D0%B0%D0%BB%D0%B8%D0%B9-anomaly-detection/.

5.Comparing anomaly detection algorithms for outlier detection on toy datasets [Электронный ресурс]. - Режим доступа: https://scikit-learn.org/stable/auto_examples/plot_anomaly_comparison.html#sphx-glr-auto-examples-plot-anomaly-comparison-py.

6.Метод опорных векторов (SVM) [Электронный ресурс]. - Режим доступа: http://datascientist.one/support-vector-machines.

Размещено на Allbest.ru

...

Подобные документы

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

    курсовая работа [865,8 K], добавлен 02.02.2015

  • Теоретико-методологические основы моделирования интеграционных экспертных систем. Направления повышения эффективности адаптивных систем обнаружения сетевых аномалий. Математическая реализация модели адаптивных систем обнаружения сетевых аномалий.

    дипломная работа [5,1 M], добавлен 03.01.2023

  • Обнаружение аномалий сетевого трафика на основе дискретного вейвлет-анализа с применением статистических критериев и критерия Фишера для выбросов дисперсий. Парсинг .pcap-файлов и визуализация. Блок-схемы алгоритмов функций main, analysis, koef, disp.

    курсовая работа [295,2 K], добавлен 22.03.2018

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

    контрольная работа [502,8 K], добавлен 07.01.2013

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

    дипломная работа [917,1 K], добавлен 31.01.2015

  • Представление задач в виде графов AND/OR, примеры. Задача с ханойской башней. Формулировка процесса игры в виде графа. Основные процедуры поиска по заданному критерию. Эвристические оценки и алгоритм поиска. Пример отношений с определением задачи.

    лекция [154,6 K], добавлен 17.10.2013

  • Классификация задач Data Mining. Задача кластеризации и поиска ассоциативных правил. Определению класса объекта по его свойствам и характеристикам. Нахождение частых зависимостей между объектами или событиями. Оперативно-аналитическая обработка данных.

    контрольная работа [26,1 K], добавлен 13.01.2013

  • Способы сортировки задач программирования: пузырьком, пузырьковая с просеиванием, метод последовательного поиска минимумов, вставками. Распределяющая сортировка - RadixSort-цифровая - поразрядная. Теория чисел. Простые числа. Задача "Красивые числа".

    реферат [90,5 K], добавлен 14.05.2008

  • Искусственные нейронные сети как одна из широко известных и используемых моделей машинного обучения. Знакомство с особенностями разработки системы распознавания изображений на основе аппарата искусственных нейронных сетей. Анализ типов машинного обучения.

    дипломная работа [1,8 M], добавлен 08.02.2017

  • Формулировка, спецификация и математическая постановка задачи. Описание схемы алгоритма. Рассмотрение результата машинного тестирования программы. Получение на занятиях навыков алгоритмизации и программирования задач на языке высокого уровня C#.

    курсовая работа [268,2 K], добавлен 22.03.2015

  • Программа поиска в базе данных в среде Borland Delphi 7.0 Enterprise. Условия и блок-схемы задач. Ввод массива. Текст программ в Delphi, в Паскаль. Текст программы поиска в базе данных. Кодирование материала. Изготовление реляционной базы данных.

    практическая работа [27,6 K], добавлен 11.10.2008

  • Задача о кратчайшем пути как одна из важнейших классических задач теории графов. Общий обзор трех наиболее популярных алгоритмов для решения задачи о кратчайшем пути. Написание программы, которая реализует алгоритм Дейкстры и алгоритм Форда-Беллмана.

    курсовая работа [2,1 M], добавлен 23.06.2014

  • Методы обнаружения атак на сетевом и системном уровнях. Административные методы защиты от различных видов удаленных атак. Уведомления о взломе. Ответные действия после вторжения. Рекомендации по сохранению информации и контроль над ней в сети Internet.

    курсовая работа [36,0 K], добавлен 21.01.2011

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

    контрольная работа [59,8 K], добавлен 03.10.2010

  • Макрос как запрограммированная последовательность действий, записанная на языке программирования Visual Basic for Applications. Рассмотрение особенностей решения данных задач в Excel. Характеристика проблем создания пользовательских функций на VBA.

    курсовая работа [1,8 M], добавлен 15.01.2015

  • Алгоритм поиска по первому наилучшему совпадению на графе. Основные классы для поиска пути в лабиринте. Тестирование нахождения кратчайшего пути в лабиринте. Порядок обхода вершин. Тестирование поведения программы при отсутствии пути в лабиринте.

    курсовая работа [888,7 K], добавлен 19.12.2013

  • Использование базы данных статистики последовательного соединения мобильных узлов беспроводной сети с использованием средств программирования Delphi и языка ADO. Оптимизация, отладка и тестирование программы AD-HOC сетей, решение аномалий в узлах сети.

    дипломная работа [1,7 M], добавлен 13.06.2012

  • Транспортная задача как одна из самых распространенных специальных задач линейного программирования: понятие, основное назначение. Формальное описание метода минимального элемента. Характеристика этапов разработки алгоритма решения поставленной задачи.

    курсовая работа [713,3 K], добавлен 19.10.2012

  • Методы определения оптимального плана производства (приобретения) продукции с учетом ограниченного обеспечения ресурсами различного вида. Технология поиска оптимального решения задач линейного программирования (ЗЛП) с помощью итоговой симплекс-таблицы.

    лабораторная работа [42,8 K], добавлен 11.03.2011

  • Классы задач P и NP, их сводимость. Примеры NP-полных и NP-трудных задач. Сущность метода поиска с возвратом. Алгоритмы решения классических задач комбинаторного поиска. Решение задачи о восьми ферзях. Поиск оптимального решения методом ветвей и границ.

    презентация [441,5 K], добавлен 19.10.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.