Обнаружение аномалий трафика с использованием нейронной сети для обеспечения защиты информации
Большаков Александр Сергеевич
к.т.н., доцент кафедры «Информационная безопасность» Московского Технического университета связи и информатики, г. Москва, Россия, [email protected]
Хусаинов Руслан Валерьевич
магистр кафедры «Информационная безопасность» Московского Технического университета связи и информатики, г. Москва, Россия, [email protected]
Осин Андрей Владимирович
к.т.н., доцент кафедры «Информационная безопасность» Московского Технического университета связи и информатики, г. Москва, Россия, [email protected]
АННОТАЦИЯ_
Введение: развитие информационных технологий сохраняет актуальность проблемы обеспечения безопасности информационных ресурсов. Динамика нарастания количества информационных угроз различного типа обусловливает сложность обнаружения и классификации аномального сетевого трафика. Цель исследования: разработка алгоритма обнаружения аномалий сетевого трафика с учетом минимизации количества признаков трафика для достижения требуемого качества обнаружения. Методы: в качестве математического аппарата предлагается использовать многослойную нейронную сеть прямого распространения, обученную на датасете UNSW-NB 15, и использовать корреляционную матрицу на основе коэффициентов Пирсона для определения группы признаков трафика при обнаружении аномалий. Результаты: проведен анализ набора данных на основе коэффициентов корреляции Пирсона, позволяющий применить ранжирование коэффициентов корреляции Пирсона. Предложена архитектура нейронной сети с сигмоидальной передаточной функцией, которая эффективно решает задачу бинарной классификации, обоснован выбор параметров модели. Эффективность предложенной модели нейронной сети оценивается метриками классификации: Precision, Recall, F1 и F2. Проведено тестирование разработанной модели при различных наборах признаков и, исходя из полученных результатов, был сделан вывод, что при пяти выбранных признаках модель обладает высоким качеством предсказания аномального трафика. Проведена оценка работы нейросетевой модели с помощью ROC-кривой и PR-кривой. На основе результатов подсчета площади под ROC-кривой (AUC-ROC) были вычислены эффективные пороги классификации, благодаря чему удалось улучшить качество предсказания аномальности трафика. Обсуждение: полученные результаты оценки показывают, что разработанная модель, обученная на наборе данных UNSW-NB 15, позволяет с высокой точностью определить аномалию трафика с целью обеспечения информационной безопасности информационных ресурсов.
КЛЮЧЕВЫЕ СЛОВА: система обнаружения вторжений; нейронная сеть; фреймворк машинного обучения PyTorch; бинарная классификация; результаты оценки качества классификации трафика.
Постановка задачи
Целью статьи является разработка модели, реализующая систему обнаружения вторжений (СОВ) [1] на основе метода глубокого обучения, использующего многослойную нейронную сеть прямого распространения для решения задачи бинарной классификации данных [2], характеризующих классы «нормального» и «аномального» трафика.
Для достижения поставленной цели необходимо решить следующие задачи:
1. Провести анализ датасета UNSW-NB 15, найти наиболее значимые признаки для обнаружения аномальности трафика, обусловленного реализацией ряда атак;
2. Обосновать параметры модели для построения модель нейронной сети согласно выбранному методу ее обучения и подготовить соответствующее программное обеспечение;
3. Провести тестирование созданного модуля обнаружения аномалий трафика для различных групп входных признаков;
4. Оценить результаты работы программного модуля с учетом эффективного выбора порогов принятия решений классификации методами Индекса Юдена и G-mean.
Анализ датасета UNSW-NB 15
Основой для обучения и тестирования разработанной модели нейронной сети послужил набор данных UNSW-NB 15 [3,4], созданный в 2015 году. В датасете присутствуют отдельные наборы для обучения и тестирования в формате ^у, содержащие 175341 и 82332 записей соответственно. Для поставленной задачи классификации трафика на основе исходных обучающего и тестового наборов был создан единый набор данных, содержащий в общей сложности 257673 записи. В данной работе приведены 43 признака сетевого трафика с маркером априорной метки, разделяющей трафик на нормальный и аномальный классы.
Фрагмент таблицы исходного набора данных UNSW-NB 15 представлена на рис. 1.
id dur proto service slate spkts dpkts sbytes dbytes rate ... ct_dst_sporl_ltm ct_dst_src_!tm is_ftp_login ct_ftp_cmd ct flw http mthd ct.srcjtm ct.srvjlst is_smjpsjx>rts attack_cat label
0 1 0.000011 udp ИТ 2 0 496 0 90909.0902 ... 1 2 0 0 0 1 2 0 normal 0
1 2 0.000008 udp ■ ИТ 2 0 1762 0 125000.0003 ... 1 2 0 0 0 1 2 0 normal 0
г 3 0.000005 udp ИТ 2 0 1068 0 200000.0051 ... 1 3 0 0 0 1 3 0 normal 0
3 4 0.000006 udp - ИТ 2 0 900 0 I 66666.6606 ... 1 3 0 0 0 2 3 0 Kormal 0
4 5 0.000010 udp ■ ИТ 2 0 2126 0 100000.0025 ... 1 3 0 0 0 2 3 0 normal 0
Рис. 1. Исходный набор данных
Набор данных UNSW-NB 15 содержит числовые и категориальные значения. Для работы нейронной сети необходимо, чтобы все признаки были представлены в численном виде. Для преобразования категориальных признаков в численные был использован метод Label Encoding [5]. Метод Label Encoding изменяет текстовые значения категориальных признаков на кодовые значения в диапазоне от 0 до n-1, где n - количество уникальных значений во множестве значений признака. Порядок нумерации значений задан алфавитным порядком. В исходном наборе данных содержится 3 категориальных признака: proto, service и state. Каждый признак имеет соответствующее количество уникальных значений, так у proto их 131, в service - 13, а state - 7. Согласно вышеуказанному методу сформированы 3-и массива упорядоченных категориальных значений соответствующего размера.
Таким образом, после применения метода Label Encoding были получены численные значения элементов массивов признаков, текстовые значения которых были заменены на числовые. Категориальные признаки до и после применения метода представлены на рис. 2. Как видно на рисунке, к примеру, уникальное значение «udp» признака proto получило порядковый номер 117, «tcp» - 111, «arp» - 6.
Рис. 2. Результаты преобразования категориальных признаков в числовые, слева - массивы в виде столбцов признаков до применения метода, справа - после применения
Важную роль с точки зрения быстродействия и точности в работе модели по обнаружению аномалий трафика играет отбор признаков, которые использовались для решения задачи бинарной классификации [6]. Набор данных UNSW-NB 15 содержит 43 признака, среди которых есть нерелевантные, слабо связанные и отчасти дублирующие друг друга признаки, что влияет на качество работы создаваемой модели обнаружения аномалий трафика.
Для отбора наиболее информативных существенных признаков построена корреляционная матрица (рис. 3) на основе коэффициентов корреляции Пирсона [7] с использованием объема обучающей выборки, составляющей 68% от всего набора датасета. Признаки были отсортированы в соответствии со значением их коэффициента корреляции по отношению к метке-признаку 'label', отвечающему за «нормальность» и «аномальность» трафика. Коэффициент корреляции Пирсона равен отношению ковариации двух переменных к произведению стандартных отклонений переменных, где ковариация определена как ожидаемое значение произведения отклонений переменных от их средних значений (1).
cov(х, y)
Е (х, - х )(y, - y) i=1
^ = Щ = ^2 ^ ^ , (1)
-,2 2 m m
SxSy Jz (х, - х )2 Е (y, - y )2 i=1 i=1
где х ,у - средние значения векторов х и у; s_xA2, s_yA2 - дисперсии векторов х и у [8].
Значение коэффициента корреляции может принимать любые значения от -1 до 1. Чем больше абсолютное значение коэффициента корреляции, тем сильнее корреляция, и чем ближе коэффициент корреляции к 0, тем она слабее. Значение корреляции на промежутке от 0 до 1 указывает на положительную корреляцию, на промежутке от -1 до 0 - на отрицательную корреляцию. При значении равном 1 два признака полностью коррелированы, при -1 - отрицательно коррелированы, достижение значения 0 означает полное отсутствие корреляции между признаками.
После построения корреляционной матрицы были обнаружены и убраны 4 мультиколлине-арных признака ('ct_src_dport_ltm', 'ct_dst_sport_ltm', 'ct_ftp_cmd', 'ct_srv_dst'), которые в будущем могут отрицательно повлиять на качество предсказания нейронной сети. Также были убраны категориальный признак 'айаск_са^, как нерелевантный в задаче бинарной классификации, и признак присваивающий каждому вектору трафика свой идентификатор.
Рис. 3. Корреляционная матрица на основе коэффициентов Пирсона для 38 признаков по отношению
к метке классов (label)
В результате использования матрицы оставшиеся 38-мь признаков были отсортированы в порядке убывания коэффициента корреляции и сведены в таблицу 1.
Таблица 1
Результаты ранжирования признаков трафика
№ признак № признак № признак № признак
1 sttl 11 sbytes 21 dbytes 31 tcprtt
2 state 12 sloss 22 dinpkt 32 synack
3 rate 13 dur 23 dloss 33 dmean
4 ct state ttl 14 proto 24 smean 34 dload
5 ct srv src 15 is ftp login 25 dpkts 35 stcpb
6 ct dst src ltm 16 response body len 26 ct flw http mthd 36 dtcpb
7 ct src ltm 17 trans depth 27 dttl 37 dwin
8 ct dst ltm 18 djit 38 is sm ips_ports 38 swin
9 service 19 sjit 29 ackdat
10 sload 20 spkts 30 sinpkt
Построение модели нейронной сети
Модуль нейронной сеть реализован на языке программирования Python с использованием фреймворка машинного обучения PyTorch [9]. Предобработка данных, а также вычисление метрик при оценке качества классификации проведены с помощью библиотек Scikit-learn и Pandas. Разработка велась в специализированной среде Jupyter Notebook.
Архитектура созданной нейронной сети представлена на рис. 4. Модель представляет из себя многослойную сеть, на входном слое которой расположены 5 нейронов, в соответствии с количеством используемых признаков. На скрытом уровне чередуются слои нормализации пакетов и слои нейронов с функцией активации ReLU6 вида , для выбора параметров каждого скрытого слоя было проведено предварительное исследование итерационным путем: количество скрытых слоев и число нейронов в скрытых слоях были подобраны эмпирически. Скрытый слой h_1 содержит 64 нейрона, h_2 - 128, h_3 - 64, h_4 - 32 нейрона. Выходной слой содержит один нейрон, который формирует результат предсказания.
ReLU6 ReLU6
V нормализация нормализация /
Скрытые слои
Рис. 4. Предложенная архитектура нейронной сети
В скрытых слоях нейронов используется специальная нелинейная функция ReLU6 -модифицированная активационная функция ReLU [10]. ReLU6 менее требовательная к ресурсам системы по сравнению с другими функциями. Стандартная ReLU обеспечивает «разреженность активации» - при работе модели активируется меньшее количество нейронов, что делает сеть легче и быстрее. В модификации ReLU6 дополнительно ограничивается активация максимальным размером. Такое условие помогает остановить «взрывную активацию», тем самым предотвращая «взрыв градиентов» [11].
Во время обучения глубоких нейронных сетей существует проблема распределения межслойных входных данных - при обучении меняются параметры пройденных слоев, вслед за ними меняется и межслойное распределение, скрытые слои нейронов пытаются адаптироваться к новому распределению. Эта проблема также называется внутренним кова-
риантным сдвигом, для решения которой были использованы слои пакетной нормализации (Batch Normalization) [12, 13, 14]. В разработанной модели перед каждым скрытым слоем нейронов данные проходят через слой нормализации пакетов. Благодаря этому появляется возможность использовать более высокие скорости обучения и проще подходить к инициализации гиперпараметров.
Функцией потерь была выбрана BCEWithLogitsLoss - Бинарная кросс-энтропийная функция потерь с logit-функцией [15, 16]. Она объединяет в себе слой Сигмоиды вида
y = —и функцию потерь BCELoss, измеряющую двоичную кросс-энтропию между це-1 + e
левым значением и выходным. Такая версия более стабильна, чем использование Сигмоиды и BCELoss по отдельности.
Результаты тестирования модуля
Разработанная модель нейронной сети была протестирована на разном количестве признаков согласно табл.1 с шагом изменения количества, равным 4.
Обучение модели проводилось на 50 эпохах. После обучения была проведена проверка эффективности функционирования нейронной сети на тестовом наборе данных. Полученные результаты матрицы ошибок и её значения TP, TN, FP, FN легли в основу расчета метрик оценок качества классификации [17].
TP - истинно-положительный результат - количество образцов, которые были верно предсказаны аномальными;
TN - истинно-отрицательный результат - количество образцов, которые были верно предсказаны нормальными;
FP - ложноположительный результат - количество образцов, которые были ошибочно предсказаны аномальными;
FN - ложноотрицательный результат - количество образцов, которые были ошибочно предсказаны нормальными.
А , TP + TN л
Accuracy (-) - это доля прогнозов, которые модель сделала правильно по
TP + TN + FP + FN
отношению к общему количеству образцов. Данная метрика работает хорошо, только если есть равное количество образцов, принадлежащих каждому классу.
TP
Precision (——) - это доля предсказанных аномальных образцов, которые действительно являются аномальными.
Recall (———) - это доля аномальных образцов из всех аномальных образцов, найден-
TP + FN
ных моделью.
т-по /Л о2\ precision х recall
Fp-Score (11 + р 1х----) - это среднее гармоническое значение между
(Р х precision j + recall
Precision и Recall, где в в диапазоне 0<Р<1 отдает приоритет Precision, а в Р>1 приоритет идет для Recall. Данная метрика может сообщить, насколько точна и надежна рассматриваемая модель [18, 19].
Чувствительность ( TP ) - доля аномального трафика, который действительно является аномальным.
Специфичность (^jJNpp ) - доля нормального трафика, который действительно является нормальным.
В условиях поставленной задачи наиболее важными метриками являются Recall, F1-Score и модифицированная версия последней метрики - Fp-Score, со значением Р=2, так как нам необходимо обнаружить как можно больше именно аномального трафика.
График зависимости результатов метрик от количества признаков изображен на рисунке 5. Заметно ухудшение результатов на шагах использования признаков из промежутка численных значений коэффициентов корреляции рис. 3 от -0.2 до 0.2, т.е. включения в список используемых мультиколлинеарных признаков. На ухудшение результата влияет увеличение количества используемых признаков - это увеличивает пространство поиска решения задачи, что приводит модель к «проклятию размерности» [20]. Предсказательная сила уменьшается по мере увеличения размерности, это состояние модели известно как феномен Хьюза [21].
0.90
" 0.85 и.
1
£ 0.80
I ^
jj 0.75
/ _/I -------
Л\ w / / / /
\\ \ v. '*'■• / / \
\ >4 \ V- ---------J".
\ vd \ v' \ X ------- 0 — — "" """"
— Accuracy Precision
........ Recall ----- F1-score
17 21 25 29 33
Количество признаков
Рис. 5. График зависимости результата метрик от количества используемых признаков
График рис. 5 указывает на тот факт, что для минимизации времени обучения модели в качестве информативных существенных признаков целесообразно принимать во внимание только те признаки, которые имеют положительное значение коэффициента корреляции, большее 0,7. Данное пороговое значение для коэффициента корреляции было определено в процессе эвристических итераций оценки «чувствительности» модели классификации трафика к изменению численного значения такого порога. Как видно из рис. 5, 5-й признак в списке (ct_srv_src) имеет коэффициент корреляции выше 0,7 по отношению к признакам 6, 7, 8. Данный факт указывает на наличие мультиколлинеарности, что может стать причиной не эффективной работы модели ввиду «переобучаемости» модели, что приведет к неверному предсказанию в задаче бинарной классификации. Если коэффициент корреляции между признаками и меткой класса трафика лежит в диапазоне от 0.0 до 0.2, то он незначителен, и признаки с таким значением коэффициента Пирсона будут не сильно влиять на классификацию трафика, поэтому при построении модели такие признаки не учитывались.
Таким образом, использование моделью 5-ти признаков, имеющими коэффициент корреляции с меткой класса в промежутке от 0.2 до 0.5, включая мультиколлинеарный признак, имеющий наибольший коэффициент корреляции, согласно полученным результатам тестирования имеет лучшие показатели метрик.
В табл. 2 представлена матрица ошибок для модели с 5-ю признаками. В каждой из ячеек матрицы ошибок указано количество элементов набора данных, отнесенных к одному из двух классов: «нормальный» и «аномальный».
Таблица 2
Оценка экспертов
Аномальный Нормальный
Оценка модели Аномальный TP:108305 FP:8769
Нормальный FN: 11036 TN: 47231
0.50 0 46 0.33 0 32 0.29 0.28 0.28 0 26 0.14
31 0 34 0 24
046 061
46 045 0.38
033 0.39
36 0.33
0.32 0.56
36 0.24
029 0.31 046 0.37 031
45 036 036
028 024 038 0.33 024
026 0.22 0.37 0.31 024
1.00 0.93 0.82 084
093 1.00 084 087
082 0.84 1.00 093
0.84 0.87 0.93 1.00
-0.05 0.03 0.03 007
Рис. 6. Укрупненный фрагмент корреляционной матрицы
По формулам выше были подсчитаны метрики Accuracy, Precision, Recall, F1 и F2 для каждого типа трафика - «нормального» и «аномального». Полученные результаты представлены на рисунке 7 в виде гистограммы.
Важное значение имеют полученные результаты определения относительного числа истинно-положительных результатов (TPR) и относительного числа ложно-положительных результатов (FPR) для выбранного количества признаков, представленные на рис. 8 в виде гистограммы.
Рис. 7. Гистограмма метрик оценки качества классификации
Рис. 8. Гистограмма значений TPR и FPR для выбранного количества признаков
В ходе проведения классификации анализируемого трафика с применением построенной модели были получены численные значения ROC и Precision-Recall кривых, на основе которых получены значения площади под кривой (Area Under the Curve - AUC) для обеих кривых. Площадь фигуры под кривыми указывает на качество классификатора, которое приняло численное значение равное 0.95 (рис. 9) для ROC кривой, а площадь под кривой Precision-Recall - 0.96 (рис. 10), что указывает на достаточно хорошую эффективность работы СОВ.
С целью улучшения функционирования модели было решено найти эффективное значение порога классификации. Для этого, на основе ROC-кривой, были задействованы два метода: Индекс Юдена и G-mean [22].
Индекс Юдена объединяет чувствительность и специфичность в единую меру и позволяет выбрать эффективное пороговое значение. Это также эквивалентно вертикальному расстоянию над диагональной линией до кривой ROC для одного порога классификации.
G-mean - это среднее геометрическое значение чувствительности (Recall) и специфичности. Данная мера пытается максимизировать точность каждого из классов, сохраняя при этом баланс между ними.
ROC curve
0.8
02
V
у
— AUC = 0 95
00 02 04 06 08 1.0
False Positive Rale
Рис. 9. ROC-кривая модели на основе 5 признаков
Рис. 10. PR-кривая модели на основе 5 признаков
Полученные результаты представлены в таблице 3.
Таблица 3
Результаты поиска оптимального порогового значения обнаружения аномалий на основе двух методов
Метод TPR FPR Лучший порог
Youden's J 0.97 0.17 0.365447
G-mean 0.95 0.15 0.381466
После применения порогового значения 0.365447, полученного методом Индекса Юдена, эффективность функционирования модели заметно улучшилась. В таблице 4 представлена обновленная матрица ошибок, а таблица 5 содержит метрики оценки классификации, подсчитанные на основе полученных значений из матрицы ошибок таблицы 4.
Таблица 4
Оценка экспертов
Аномальный Нормальный
Оценка модели Аномальный TP:115246 FP:9609
Нормальный FN: 4095 TN: 46391
Таблица 5
Таблица результатов метрик по Индексу Юдена
Трафик Accuracy Precision Recall F1 F2
Нормальный 0.92 0.92 0.83 0.87 0.85
Аномальный 0.92 0.92 0.97 0.94 0.96
При тестировании модели при пороге классификации 0.381466, полученном с помощью метода G-mean, качество предсказания улучшилось, но не так хорошо, как при пороге Индекса Юдена. Матрица ошибок модели с порогом метода G-mean и подсчитанные на её основе метрики оценки классификации представлены в таблицах 6 и 7 соответственно.
Таблица 6
Матрица ошибок модели с порогом по G-mean
Оценка экспертов
Аномальный Нормальный
Оценка модели Аномальный TP:113062 FP: 8593
Нормальный FN: 6279 TN: 47407
Таблица 7
Таблица результатов метрик по G-mean_
Трафик Accuracy Precision Recall F1 F2
Нормальный 0.92 0.88 0.85 0.86 0.86
Аномальный 0.92 0.93 0.95 0.94 0.95
Таким образом, при использовании порога классификации, найденного методом Индекса Юдена, F2 = 0.96, что является наилучшей полученной оценкой качества классификации разработанной модели нейронной сети.
Заключение
Проведенные исследования показали, что использование корреляционной матрицы для выбора атрибутов и применение нейронной сети позволяют построить эффективную систему обнаружения аномалий трафика.
При использовании 5 признаков достигается лучшее качество предсказания двух классов. С таким количеством признаков достигнута оценка классификации по метрикам Recall = 91%, F1 = 92%, F2 = 91%.
Площадь фигуры под ROC-кривой составила 0.95, под Precision-Recall-кривой - 0.96, что говорит о высоком качестве классификатора.
Последующее нахождение порогов классификации методами Индекса Юдена и G-mean дали прирост качества в решении задачи бинарной классификации. Наилучший показатель был достигнут при помощи порога классификации, найденного методом Индекса Юдена, и составил Recall = 97%, F1 = 94%, F2 = 96%.
Литература
1. Обнаружение вторжений в компьютерные сети (сетевые аномалии). Под ред. профессора О.И. Шелухина. М.: Горячая линия-Телеком, 2016. 220 с.
2. Шелухин О.И., Ерохин С.Д., Полковников М.В. Технологии машинного обучения в сетевой безопасности. Горячая линия-Телеком, 2021. 353 с.
3. Moustafa N. Designing an online and reliable statistical anomaly detection framework for dealing with large high-speed network traffic. University of New South Wales, Canberra, Australia, 2017.
4. Moustafa N., Slay J. UNSW-NB15: a comprehensive data set for network intrusion detection systems (UNSW-NB15 network data set). 2015 Military Communications and Information Systems Conference (MilCIS), 2015. C. 1-6. doi:10.1109/MilCIS.2015.7348942.
5. Zheng A., Casari A. Feature Engineering for Machine Learning. O'Reilly Media, Inc. 2018. 630 с.
6. Шелухин О.И., Ерохин С.Д., Ванюшина А.В. Классификация IP-трафика методами машинного обучения / Под редакцией Шелухина О.И. Горячая линия-Телеком, 2018. 282 с.
7. Chen P., Li F., Wu C. Research on Intrusion Detection Method Based on Pearson Correlation Coefficient Feature Selection Algorithm. Journal of Physics: Conference Series, 2021. Т. 1757. № 1. С. 012054. doi: 10.1088/1742-6596/1757/1/012054.
8. SciPy community. scipy.stats.pearsonr - SciPy v1.7.1 Manual // Электронный ресурс. URL: https://docs. scipy. org/doc/scipy/reference/generated/scipy. stats.pearsonr.html#scipy. stats.pearsonr (дата обращения 5.2021).
9. Facebook's AI Research lab. PyTorch - An open-source Machine Learning framework // Электронный ресурс. URL: https://pytorch.org/ (дата обращения 5.2021).
10. Calin O. Deep Learning Architectures - A Mathematical Approach. Springer. Springer Series in Data Sciences, New York, 2020. 790 c.
11. Philipp G., Song D., Carbonell JG. The exploding gradient problem demystified-definition, prevalence, impact, origin, tradeoffs, and solutions // arXiv. URL: https://arxiv.org/abs/1712.05577 (дата обращения: 5.2021).
12. Ioffe S., Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covari-ate shift. International conference on machine learning, 2015. C. 448-456.
13. Xiang S., Li H. On the effect of Batch Normalization and Weight Normalization in Generative Adversarial Networks // arXiv. URL: https://arxiv.org/abs/1704.03971 (дата обращения: 5.2021).
14. Shibani Santurkar, Dimitris Tsipras, Andrew Ilyas, and Aleksander Madry. How does batch normalization help optimization? In Advances in Neural Information Processing Systems, 2018. С. 2483-2493.
15. Mohit Maithani. Ultimate Guide To Loss functions In PyTorch With Python Implementation // Электронный ресурс. URL: https://analyticsindiamag.com/all-pytorch-loss-function/ (дата обращения 5.2021).
16. Facebook's AI Research lab. BCEWithLogitsLoss - PyTorch 1.8.1 documentation // Электронный ресурс. URL:https://pytorch.org/docs/stable/generated/torch.nn.BCEWithLogitsLoss.html#torch.nn.BCEWithLogits Loss (дата обращения 5.2021).
17. Powers DM. Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation. International Journal of Machine Learning Technology 2:1, 2011. C. 37-63.
18. Soleymani R., Granger E., Fumera G. F-measure curves: A tool to visualize classifier performance under imbalance. Pattern Recognition, 2020. 107146 c. doi:10.1016/j.patcog.2019.107146.
19. Hand DJ., Christen P., Kirielle N. F*: an interpretable transformation of the F-measure. Machine Learning 110, 2021. C. 451-456. doi:10.1007/s10994-021-05964-1.
20. Kuo FY., Sloan IH. Lifting the curse of dimensionality. Notices of the AMS, 2005. C. 1320-1328.
21. Hughes GF. On the mean accuracy of statistical pattern recognizers. IEEE Transactions on Information Theory 14(1), 2008. C. 55-63.
22. Bekkar M., Djemaa HK., Alitouche TA. Evaluation measures for models assessment over imbalanced data sets. Journal of Information Engineering and Applications 3(10), 2013. C. 27-38.
TRAFFIC ANOMALY DETECTION USING A NEURAL NETWORK TO ENSURE INFORMATION PROTECTION
ALEXANDER S. BOLSHAKOV
PhD, Associate Professor at the Department of Information Security of the Moscow Technical University of Communications and Informatics, Moscow, Russia, [email protected]
RUSLAN V. KHUSAINOV
Postgraduate student at the Department of Information Security of the Moscow Technical University of Communications and Informatics, Moscow, Russia, [email protected]
ANDREY V. OSIN
PhD, Associate Professor at the Department of Information Security of the Moscow Technical University of Communications and Informatics, Moscow, Russia, [email protected]
ABSTRACT
Introduction: the development of information technologies remains relevant to the problem of ensuring the security of information resources. The dynamics of the growth in the number of information threats of various types makes it difficult to detect and classify abnormal network traffic. Purpose: development of an algorithm for detecting network traffic anomalies, taking into account the minimization of the number of traffic signs to achieve the required detection quality. Methods: as a mathematical apparatus, it is proposed to use a multi-layer neural network of forward propagation, trained on the UNSW-NB 15 dataset, and to use a correlation matrix based on Pearson's coefficients to determine a group of traffic signs when anomalies are detected. Results: after preliminary processing of the dataset content, the analysis of the data set based on the Pearson correlation coefficients was carried out, which allows us to apply the ranking of the Pearson correlation coefficients. The architecture of a neural network with a sigmoidal transfer function is proposed, which effectively solves the problem of binary classification, the choice of model parameters is justified. The effectiveness of the proposed neural network model is estimated by the classification metrics: Precision, Recall, F1 and F2. The developed model was tested for various sets of features and, based on the results obtained, it was concluded that with five selected features, the model has a high quality of predicting abnormal traffic. The work of the neural network model was evaluated using the ROC curve and the PR curve. Based on the results of calculating the area under the ROC curve (AUC-ROC), effective classification thresholds were calculated, which made it possible to improve the quality of traffic anomaly prediction. Discussion: the obtained evaluation results show that the developed model, trained on the UNSW-NB 15 data set, allows to determine the traffic anomaly with high accuracy in order to ensure the information security of information resources.
Keywords: intrusion detection system; neural network; machine learning framework PyTorch; binary classification; traffic classification quality assessment results.
REFERENCES
1. Detection of intrusions into computer networks (network anomalies). Edited by prof.Sheluhin O.I.: Goryachaya liniya - Telekom, 2016. 220 p. (In Rus).
2. Sheluhin O.I., Erohin S.D., Polkovnikov M.V. Machine learning technologies in network security. Goryachaya liniya - Telekom, 2021. 353 p. (In Rus).
3. Moustafa N. Designing an online and reliable statistical anomaly detection framework for dealing with large high-speed network traffic. University of New South Wales, Canberra, Australia, 2017.
4. Moustafa N., Slay J. UNSW-NB15: a comprehensive data set for network intrusion detection systems (UNSW-NB15 network data set). 2015 Military Communications and Information Systems Conference (MilCIS), 2015. Pp. 1-6. doi:10.1109/MilCIS.2015.7348942.
5. Alice Zheng, Amanda Casari. Feature Engineering for Machine Learning. O'Reilly Media, Inc. 2018. 630 p.
6. Sheluhin O.I., Erohin S.D., Vanyushina A.V. Classification of IP traffic using machine learning methods. Edited by prof.Sheluhin O.I.: Goryachaya liniya - Telekom, 2018. 282 p. (In Rus).
7. Chen P., Li F., Wu C. Research on Intrusion Detection Method Based on Pearson Correlation Coefficient Feature Selection Algorithm. Journal of Physics: Conference Series, 2021. Vol. 1757. No. 1. P. 012054. doi:10.1088/1742-6596/1757/1/012054.
8. SciPy community. scipy.stats.pearsonr - SciPy v1.7.1 Manual // Electronic resource. URL: https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.pearsonr.html#scipy.stats.pearsonr (date of access 5.2021).
9. Facebook's AI Research lab. PyTorch - An open-source Machine Learning framework // Electronic resource. URL: https://pytorch.org/ (date of access 5.2021).
10. Calin O. Deep Learning Architectures - A Mathematical Approach. Springer. Springer Series in Data Sciences, New York, 2020. 790 p.
11. Philipp G., Song D., Carbonell JG. The exploding gradient problem demystified-definition, prevalence, impact, origin, tradeoffs, and solutions // arXiv. URL: https://arxiv.org/abs/1712.05577 (date of access: 5.2021).
12. Ioffe S., Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift. International conference on machine learning, 2015. Pp. 448-456.
13. Xiang S., Li H. On the effect of Batch Normalization and Weight Normalization in Generative Adversarial Networks // arXiv. URL: https://arxiv.org/abs/1704.03971 (date of access: 5.2021).
14. Shibani Santurkar, Dimitris Tsipras, Andrew Ilyas, and Aleksander Madry. How does batch normalization help optimization? In Advances in Neural Information Processing Systems, 2018. Pp. 2483-2493.
15. Mohit Maithani. Ultimate Guide To Loss functions In PyTorch With Python Implementation // Electronic resource. URL: https://analyticsindiamag.com/all-pytorch-loss-function/ (date of access 5.2021).
16. Facebook's AI Research lab. BCEWithLogitsLoss - PyTorch 1.8.1 documentation // Electronic resource. URL: https://pytorch.org/docs/stable/generated/torch.nn.BCEWithLogitsLoss.html#torch.nn.BCEWithLogitsLoss (date of access 5.2021).
17. Powers DM. Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation. International Journal of Machine Learning Technology 2:1, 2011. Pp. 37-63.
18. Soleymani R., Granger E., Fumera G. F-measure curves: A tool to visualize classifier performance under imbalance. Pattern Recognition, 2020. P. 107146. doi:10.1016/j.patcog.2019.107146.
19. Hand DJ., Christen P., Kirielle N. F*: an interpretable transformation of the F-measure. Machine Learning 110, 2021. Pp. 451-456. doi:10.1007/s10994-021 -05964-1.
20. Kuo FY., Sloan IH. Lifting the curse of dimensionality. Notices of the AMS, 2005. Pp. 1320-1328.
21. Hughes GF. On the mean accuracy of statistical pattern recognizers. IEEE Transactions on Information Theory 14(1), 2008. Pp. 55-63.
22. Bekkar M., Djemaa HK., Alitouche TA. Evaluation measures for models assessment over imbalanced data sets. Journal of Information Engineering and Applications 3(10), 2013. Pp. 27-38.