Рекомендуем

Технологии машинного обучения в сетевой безопасностиШелухин О.И., Ерохин С.Д., Полковников М.В. Технологии машинного обучения в сетевой безопасности
Обнаружение вторжений в компьютерные сети (сетевые аномалии)Шелухин О.И., Сакалема Д.Ж., Филинова А.С. Обнаружение вторжений в компьютерные сети (сетевые аномалии)
Управление безопасностью критических информационных инфраструктурЕрохин С.Д., Петухов А.Н., Пилюгин П.Л. Управление безопасностью критических информационных инфраструктур

Книга

Интеллектуальные технологии информационной безопасности

Учебное пособие для вузов
384 стр.
Формат 60х90/16 (145x215 мм)
Исполнение: в твердом переплете
ISBN 978-5-9912-1084-3
ББК 16.84
УДК 004.732.056
Гриф
Рекомендовано Северо-Западным региональным отделением федерального учебно-методического объединения вузов по образованию в области информационной безопасности в качестве учебного пособия для студентов высших учебных заведений, обучающихся по направлению «Информационная безопасность» по программам подготовки бакалавров, магистров, специалистов
Аннотация

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

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

Оглавление

Введение

1. Технологии искусственного интеллекта в задачах информационной безопасности
1.1. Подходы и направления развития искусственного интеллекта в ИБ
1.2. Методы и понятия машинного обучения в ИБ. Основные понятия
1.2.1. Классификация. Бинарная, многоклассовая, многозначная
1.2.2. Кластеризация
1.2.3. Регрессионный анализ
1.3. Автоматическая обработка текстов на естественном языке
Литература к разделу 1

2. Алгоритмы машинного обучения в информационной безопасности
2.1. Особенности табличного представления исходных экспериментальных данных
2.1.1. Проблемы структуры табличных данных
2.1.2. Предобработка "исторических данных"
2.1.3. Предобработка несбалансированных данных
2.1.4. Использование разнородных типов данных
2.1.5. Способы отбора атрибутов исходного набора ЭД
2.1.6. Иные задачи машинного обучения
2.2. Однозначная классификация
2.2.1. Бинарная классификация
2.2.2. Многоклассовая классификация
2.3. Многозначная классификация
2.3.1. Особенности многозначной классификации
2.3.2. Методы решения задач многозначной классификации
2.2.3. Методы сведения многозначности меток классов к однозначному виду
2.3.4. Методы адаптации существующих алгоритмов
2.4. Метрики оценки эффективности классификации
2.4.1. Бинарная классификация
2.4.2. Многоклассовая класификация
2.4.3. Многозначная классификация
2.4.4. Некоторые известные функции потерь
2.5. Примеры алгоритмов классификации
2.5.1. Линейный классификатор
2.5.2. Логистическая регрессия
2.5.3. Наивный Байесовский классификатор
2.5.4. Алгоритм "K ближайших соседей"
2.6. Алгоритмы классификации на основе деревьев решений
2.6.1. Основные понятия
2.6.2. Classification and Regression trees
2.6.3. Алгоритм ID3
2.6.4. Алгоритм C4.5
2.6.5. Алгоритм CHAID
2.7. Ансамблевые алгоритмы
2.7.1. Методы композиции обучающихся алгоритмов
2.7.2. Бустинг
2.7.3. Бэггинг
2.7.4. Стекинг
2.8. Леса решений
2.8.1. Случайный лес. Принципы принятия решений о классификации за счет голосования
2.8.2. Isolation Forest
2.9. Метод усиления слабых моделей. Оценка устойчивости классификатора
2.9.1. Метод контрольных
2.9.2. Случайные подвыборки
2.9.3. Перекрестная проверка
2.10. Потоковая классификация
2.10.1. Основные понятия
2.10.2. Сценарии обработки потоковых данных
2.10.3. Дрейф концепта при потоковой классификации
2.10.4. Алгоритмы потоковой классификации
2.10.5. Эволюция алгоритмов потоковой классификации
2.10.6. Граница Хоэфдинга
2.10.7. Деревья Хоэфдинга
2.10.8. Особенности разработки программного обеспечения для классификации данных в потоковом режиме
2.10.9. Метрики оценки эффективности классификации потоковых алгоритмов
2.11. Классификация текстов
2.11.1. Постановка задачи классификации текста
2.11.2. Этапы и методы классификации текстов. Общие сведения
2.11.3. Индексация и предобработка наборов текстов (документов)
2.11.4. Извлечение термов. Взвешивание термов с использованием статистических мер. Взвешивание термов с использованием графа
2.11.5. Методы перевода текста в пространство признаков. Методы и технологии перевода слова в вектор фиксированной длинны
2.11.6. Метрики оценки качества и способы повышения точности классификации текста
2.11.7. Способы повышения точности классификации текста
Литература к разделу 2

3. Алгоритмы классификации, базирующиеся на архитектуре искусственных нейронных сетей
3.1. Базовые архитектуры ИНС
3.1.1. Многослойный персептрон
3.1.2. Сверточная нейронная сеть
3.1.3. Рекуррентная нейронная сеть
3.1.4. Архитектура LSTM
3.1.5. ИНС типа "автокодировщик"
3.1.6. Нейронные сети типа "трансформер"
3.2. Структура и режимы работы ИНС
3.2.1. Структура ИНС
3.2.2. Режим обучения ИНС
3.2.3. Рабочий режим ИНС
3.3. Классификация текстов на основе ИНС
3.3.1. Особенности построения полносвязных ИНС в задаче классификации текстов
3.3.2. Особенности построения ИНС типа РНС в задаче классификации текстов на примере РНС типа "Gated Recurrent Units"
3.4. Особенности построения современных ИНС
3.4.1. Комбинирование сверточных нейронных сетей и полносвязных слоев
3.4.2. Комбинирование ИНС типа "трансформер" и полносвязных слоев
3.4.3. Стратегии борьбы с переобучением в ИНС
3.4.4. Стратегии дообучения ИНС
Литература к разделу 3

4. Кластеризации в задачах ИБ
4.1. Место кластеризации в задачах ИБ
4.2. Принцип работы методов кластеризации
4.3. Неиерархические методы кластеризации
4.4. Итеративные методы кластеризации
4.4.1. Методы, базирующиеся на k средних (k-means) [33]
4.4.2. Метод CLOPE
4.4.3. Алгоритм PAM (partitioning around medoids)
4.5. Плотностные методы кластеризации
4.6. Модельные методы кластеризации
4.7. Сетевые методы кластеризации
4.8. Иерархические инкрементальные методы кластеризации
4.8.1. Алгоритм BIRCH
4.8.2. Метод ближайшего соседа
4.8.3. Минимальное покрывающее дерево
4.8.4. Метод COBWEB
4.8.5. Алгоритм объединения кластеров
4.9. Иерархические неинкрементальные алгоритмы
4.9.1. Метод Batch k-means
4.9.2. Online k-means
4.9.3. k-ближайших соседей
4.9.4. Алгоритм, основанный на определении степени обособленности векторов
4.9.5. Анализ отклонений
4.10. Самоорганизующаяся карта Кохонена
4.11. Сравнительный анализ методов кластеризации
4.11.1. Параметры сравнения
4.11.2. Результаты сравнения
4.12. Метрики оценки качества алгоритмов кластеризации
Литература к разделу 4

5. Программная реализация алгоритмов машинного обучения с использованием Python
5.1. Базы данных, используемых для решения задачи обнаружения компьютерных атак
5.1.1. База данных UNSW-NB15
5.1.2. База данных Kitsune
5.2. Настройка программной среды Python на примере PyCharm
5.2.1. Способ настройки среды через интерпретатор Anaconda
5.2.2. Способ настройки среды через python без сторонних интерпретаторов
5.2.3. Если проблема с установкой библиотек не устранена
5.2.4. Перечень библиотек, необходимых для решения задачи обнаружения атак
5.3. Предварительная обработка данных
5.3.1. Разделение выборки на тестовую и обучающую части
5.3.2. Выбор функции потерь
5.3.3. Масштабирование данных
5.3.4. Ввзаимное распределения атрибутов фрагмента исходных данных
5.4. Отбор количества и состава информативных признаков на примере базы данных UNSW-NB15
5.4.1. Отбор информативных признаков с использованием моделей
5.4.2. Отбор признаков с использованием статистического подхода. Инструмент Feature Selector
5.4.3. Отбор признаков с использованием статистического подхода. Алгоритм SelectKBest
5.4.4. Использование метода главных компонентов
5.5. Сравнительный анализ методов отбора признаков и выбор состава и количества признаков на примере базы данных UNSW-NB15
5.6. Бинарная классификация компьютерных атак на примере базы данных UNSW-NB15
5.6.1. Перечнь алгоритмов классификации, используемых для классификации компьютерных атак
5.6.2. Оценка алгоритмов классификации
5.7. Многоклассовая классификация компьютерных атак на примере базы данных UNSW-NB15
5.7.1. Особености задачи многоклассовой классификации
5.7.2. Алгоритмы на основе деревьев решений
5.7.3. Ансамблевые алгоритмы
5.7.4. Линейные классификаторы
5.7.5. Метрические классификаторы
5.7.6. Метод опорных векторов
5.7.7. Искусственные нейронные сети
5.7.8. Результаты многоклассовой классификации
5.8. Влияние многозначнных записей в базах данных на результаты многоклассовой классификации на примере базы данных UNSW-NB15
5.9. Обнаружение компьютерных атаки на примере базы данных Kitsunе
5.9.1. Визуальная оценка данных
5.9.2. Проверка данных Kitsune на наличие выбросов, нечисловых и отсутствующих значений
5.9.3. Построение корреляционной диаграммы для сетевой атаки типа Botnet данных Kitsune
5.9.4. Алгоритмы бинарной классификации
5.9.5. Сравнительный анализ алгоритмов классификации
5.10. Анализ и интерпретация результатов классификации на Python
Литература к разделу 5

Приложение 1. Исходный код примера "Kitsune"

Приложение 2. Лабораторный комплекс
Лабораторная работа № 1. Статистический анализ наборов данных
Лабораторная работа № 2. Исследование однослойных нейронных сетей н а примере моделирования булевых выражений
Лабораторная работа № 3. Оценка результатов классификации при помощи метрик TP, FP, FN, TN, Accuracy, Precision, AUC, F-мера, матрица ошибок
Лабораторная работа № 4. Алгоритмы машинного обучения с учителем для решения задач классификации
Лабораторная работа № 5. Алгоритмы машинного обучения с учителем для решения задач кластеризации
Лабораторная работа №6. Применение однослойных нейронных сетей для решения задач регрессии на примере прогнозирования временного ряда методом скользящего окна
Лабораторная работа № 7. Применение библиотеки scikitlearn для решения задачи классификации на примере набора данных
Лабораторная работа № 8. Снижение размерности входных данных на примере алгоритмов PCA, SVD
Лабораторная работа № 9. Применение алгоритмов анализа категориальных данных. Моделирование топиков на основе алгоритма LDA
Литература к Приложению 2