Технологии искусственного интеллекта в вопросах кибербезопасности
Краткие теоретические сведения
Искусственный интеллект (ИИ) помогает решать задачи машинного обучения (ML).
Основная задача машинного обучения — разработка алгоритма, который работает с данными для принятия каких-либо решений.
ИИ - свойство интеллектуальных систем - выполнять творческие функции, которые традиционно считаются прерогативой человека.
ML - класс методов ИИ, характерной чертой которых является не прямое решение задач, а обучение за счет применения решений множества сходных задач. Ключевое отличие разработки моделей машинного обучения и систем принятия решений от традиционной разработки программного обеспечения в том, что человек не закладывает определенную логику и не реализует ее в программе принятия решений. Вместо этого используются алгоритмы, которые на основании данных строят деревья решений и решающие поверхности многомерных пространств. То есть после подачи на вход в систему новых данных уже сами алгоритмы выносят вердикты на основании виденных ими ранее данных, использованных для обучения. Человек не влияет на принятие решения. Он влияет только на подбор примеров, на которых алгоритм обучается, а также алгоритмов, которые должны будут решать задачи.
Машинное обучение находится на вершине пирамиды эволюции обработки данных. Но для качественного решения задач модели необходимо обеспечить релевантными и регулярно поступающими данными.
На сегодняшний день известно четыре класса задач машинного обучения:
1. Обучение с учителем:
классификация нового объекта: есть массив данных, описания для отнесения к тому или иному классу и сами классы. В модель подаются новые объекты с их описаниями, модель определяет, к какому классу относится объект;
регрессия: предсказание числового значения, числовая оценка чего-либо в зависимости от различных условий.
2. Обучение без учителя:
кластеризация: разделение объектов массива данных на кластеры с выявлением особенностей каждого, чтобы вести более точечную работу с ними;
поиск аномалий в данных: сначала строится модель нормальности данных, затем выявляются отклонения и проводится дополнительный анализ.
3. Обучение с частичным привлечением учителя: под имеющийся большой массив данных есть правила разметки только для части данных. В этом случае применяются специальные алгоритмы, которые пытаются разметить остальные данные.
4. Обучение с подкреплением: машина с ИИ автоматически учится в среде взаимодействия, соблюдая определенные правила. В кибербезопасности чаще всего возникают задачи обучения с учителем и в меньшей степени задачи кластеризации и поиска аномалий.
Если применение ИИ изобразить на координатной плоскости, то на одной оси будет класс задачи и используемый алгоритм, на другой — характеристики массива данных.
Выделяют две категории данных:
структурированные: можно естественным образом представить в виде таблицы в базе данных, каждый элемент данных обладает общей структурой (например, транзакции клиентов, сетевой трафик);
неструктурированные: каждый элемент данных уникален (например, видеоизображение, картинки, текст, запись голоса).
Сбербанк в вопросах кибербезопасности чаще всего работает с неструктурированными данными (документы в форматах .pdf, .doc, почтовая переписка, изображения). Таким образом, при решении задач в машинном обучении необходимо определить класс задачи и категорию данных. Исходя из этого выбираются алгоритмы и подходы.
Ключевые области применения ИИ в кибербезопасности:
противодействие мошенничеству, антифрод: оценка риска транзакций (насколько операция может быть мошеннической, а клиент - мошенником);
расследования: по уже известным или предотвращенным случаям мошенничества выявляются дополнительные связи мошенников;
киберзащита: выявление аномалий, заражений хостов, DDos- атак, их предотвращение, выявление фишинговых доменов;
контроль конфиденциальной информации: нельзя допустить, чтобы информация, содержащая банковскую или коммерческую тайну, переместилась за периметр обработки либо попала в домены, где ее не должно быть.
Для противодействия социальной инженерии используются схожие модели ИИ, что и для противодействия мошенничеству в целом, но они изучают другие признаки операций. Зрелость OpenSource ML-библиотек/инструментов позволяет использовать готовый продукт для решения сложных практических задач.
Текущие data science-технологии построены на OpenSource-решениях, эффективных для разработки моделей машинного обучения. Рынок OpenSource-решений активно развивается благодаря тому, что промышленные корпорации публикуют внутренние инструменты, а сообщество разработчиков совершенствует их. Алгоритм дерева решений в рамках структурированных данных построен на том, что каждому классу объектов присваивается область определенных признаков. Например, обычный клиент получает денежные переводы, 70 % из них тратит на покупки, 20 % - переводит, 10 % — копит. Мошенник постоянно получает деньги из неизвестных источников и тут же переводит их другим.
Дерево решений:
делит область признаков на площади;
относит экземпляры данных объекта к тому или иному классу на основании построенной области;
определяет, сколько признаков представляют тот или иной класс;
перебирает доступные атрибуты;
ищет сплиты (точки разделения по данным) с использованием математических функций оптимизации.
Путь в дереве — соответствие правилам: если признак меньше какого-то значения, идем по одной ветке, если больше - по другой. Таким образом, приходим в «листы деревьев», где есть представители классов.
Деревья решений - простой и интерпретируемый алгоритм, поскольку всегда есть правило, почему дерево отнесло экземпляр данных к одному или другому классу.
Главный недостаток алгоритма — невозможность описать сложные зависимости данных только с помощью запоминания примеров, что вытекает в «переобучение» алгоритма. Сталкиваясь с новыми данными, он дает плохой результат. Следующий этап развития обработки структурированных данных предусматривает построение не одного дерева, а ансамбля деревьев - «леса» решений - алгоритм Random forest (случайный лес).
Его принцип работы — обучающая выборка с помощью сэмпли- рований с возвращением делится на подмножества известных кейсов и доступных признаков. На каждом из подмножеств строится дерево решений. Деревья строятся не глубокими, а по принципу weak learns — слабыми с точки зрения принятия решения. Так как они неглубокие, не подвергаются переобучению, а строится их много, то итоговый алгоритм усредняет их предсказания о принадлежности к классу. На основании этого принимает решение.
Алгоритм Random forest достаточно устойчив к переобучению и позволяет описывать сложные закономерности, так как процессы проходят параллельно.