Предиктивный детектор аномалий строится на основе нейронной сети, которая предсказывает текущие значения параметров объекта, после чего предсказание сравнивается с фактически наблюдаемым поведением. Детектор обучается по историческим данным телеметрии и выявляет аномалии «без подсказок» со стороны эксперта — в том числе и ранее неизвестные (никем не замеченные) аномалии.
Гауссовы модели (алгоритм «эллиптический конверт») используются для автоматического выявления состояний объекта, которые значительно отличаются от состояний, соответствующих нормальным режимам работы.
Детектор на основе диагностических правил используется для выявления аномалий, симптомы которых заранее известны. Детектор отслеживает изменения в поведении объекта по заданным критериям. В диагностических правилах может быть реализована любая логика проверок. Наиболее популярные критерии (и их комбинации): устойчивое превышение порога, рост или падение показателя за период, ступенчатый скачок, «замирание» значений на одном уровне.
Предиктивные алгоритмы также используются, чтобы предсказывать, когда тот или иной технологический параметр достигнет определенного порогового значения. Детектор срабатывает, когда времени до порога осталось меньше, чем указано в настройках.
Потоковый процессор приводит данные телеметрии, поступающие от объекта мониторинга в реальном времени, к равно-интервальной временной сетке (РИВС), необходимой для работы предиктивных детекторов и диагностических правил. В процессе приведения данных к РИВС потоковый процессор выявляет и, по возможности, устраняет такие дефекты потока, как потерю данных, получение недостоверных значений, слишком раннее или слишком позднее прибытие наблюдений.
В отличие от предиктивного детектора, который анализирует непрерывные временные ряды, процессор событий работает с последовательностями дискретных событий. Специального вида нейронная сеть анализирует поток событий, выявляя типовые паттерны. Аномалией в данном случае является необычная последовательность событий (например, действия персонала и/или серия аномалий, выявленных другими детекторами).
Предиктивный детектор анализирует параметры технологического процесса, которые представляют собой физические величины (давления, токи, уровни и т.п.) или состояния, изменяющиеся во времени.
Обучение детектора производится на интервалах времени, когда объект мониторинга функционировал штатно. Это позволяет детектору выучить закономерности, характерные для нормальной работы оборудования, и предсказывать, как должен себя вести объект при сохранении штатного режима.
Под аномалией понимается значительное отклонение реально наблюдаемых значений параметров технологического процесса от прогнозируемых детектором.
События отличаются от физического процесса, анализируемого предиктивным детектором, тем, что физический процесс является длящимся (представляет собой непрерывную функцию от времени), а события располагаются на оси времени атомарно. При этом значение имеет не столько отдельное событие, сколько последовательности, которые формируют события одного или разных типов.
Вследствие этого для анализа потока событий применяется специальный математический аппарат — нейросемантическое моделирование.
Нейронная сеть процессора событий не требует отдельного этапа обучения, она учится непосредственно на событийном потоке, поступающем в реальном времени, и в результате способна выявлять устойчивые повторяющиеся последовательности — «паттерны».
Пример паттерна: оператор в начале смены входит в помещение по своему пропуску, через 5-10 минут срабатывает датчик открытия двери шкафа с оборудованием, вскоре после этого на машину поступает команда А.
Отклонения от выученного «паттерна», такие как изменений порядка событий (подача команды до того, как оператор вошел в помещение), отсутствие ожидаемых событий в паттерне (оператор вошел и подал команду, но открытие шкафа не зарегистрировано), появление неожиданных событий (поданы команды А и Б), необычный разнос событий во времени (между входом оператора и открытием шкафа прошло 30 минут) — интерпретируются процессором событий как аномалии.
В поток событий, анализируемых процессором, могут быть также включены аномалии, выявленные предиктивным детектором или диагностическими правилами.
Предиктивные детекторы и классификаторы состояний должны быть обучены на массиве исторических данных, который имеет точно такой же состав (набор параметров и частоту наблюдений), как и поток телеметрии, с которым Kaspersky MLAD будет работать в продуктивном режиме для поиска аномалий или формирования прогнозов.
Необходимый объем исторического архива зависит от частоты поступления данных, числа режимов технологического процесса и сезонности работы объекта. Как правило, нейронная сеть во время обучения должна увидеть порядка 100 тыс. наблюдений (отсчетов времени) с покрытием всех анализируемых режимов и сезонов. Для классификаторов обычно достаточно меньшего объема данных (порядка 10 тыс. отсчетов времени) на режим или сезон.
Данные в архиве, используемом для обучения, не обязательно должны быть полностью очищены от аномалий. Достаточно того, что эти данные были собраны в период, когда объект мониторинга в целом функционировал нормально. Небольшое число аномалий в архиве не является препятствием для обучения. Размечать архив (т.е. указывать, какие интервалы времени соответствуют аномальному поведению объекта) в этом случае не требуется.
В процессе эксплуатации Kaspersky MLAD характеристики объекта мониторинга могут измениться (новый вид сырья, замена отдельного узла, естественный износ оборудования). Чтобы сохранить качество работы, детектор должен «усвоить» эти изменения, т.е. дообучиться. Дообучение происходит в фоновом режиме на том же самом потоке данных, который детектор анализирует на предмет выявления аномалий; собирать отдельный архив для дообучения не нужно.
ПО Kaspersky MLAD работает под управлением ОС Linux. Программа может быть установлена как на аппаратный сервер, так и на виртуальную машину. В программе реализована мультисервисная архитектура на основе Docker-контейнеров.
Работа пользователей с программной производится через веб-интерфейс с помощью стандартного веб-браузера.
Kaspersky MLAD внесен в реестр российского ПО (№ 16939).
Управляет работой предиктивных детекторов, классификаторов и детекторов на основе диагностических правил. Регистрирует предсказания и аномалии.
Выполняет обучение предиктивных детекторов и классификаторов.
Приводит данные телеметрии, поступающие от объекта мониторинга в реальном времени, к равно-интервальной временной сетке, выявляет дефекты в потоке данных.
Выявляет и группирует похожие аномалии.
Выявляет аномалии в событиях и их последовательностях.
Специализированная база данных для хранения временных рядов: значений технологических параметров, прогнозов ML-модели и ошибок прогноза (на базе InfluxDB).
Реляционная база данных для хранения событий, выявленных инцидентов, а также конфигурации Kaspersky MLAD (на базе PostgreSQL).
Маршрутизация сообщений и обмен данными между компонентами Kaspersky MLAD (на базе Kafka).
Общие инфраструктурные компоненты.
Выполняет рассылку оповещений об аномалиях.
ML-модель – это набор аналитических процессоров (детекторов) и их параметров, представляющий собой, по существу, конфигурацию Kaspersky MLAD для анализа данных, поступающих от конкретного объекта мониторинга или его части (агрегата, подсистемы).
ML-модели не входят в комплект поставки ПО Kaspersky MLAD. Они создаются для конкретного объекта с учетом особенностей его функционирования и свойств его телеметрии.
ML-модели могут создаваться пользователями самостоятельно в веб-интерфейсе Kaspersky MLAD или, в рамках Услуги построения модели, специалистами «Лаборатории Касперского» или сертифицированного интегратора.
Одновременно в программе может быть создано и запущено в работу множество моделей.
В комплекте с Kaspersky MLAD поставляются модули, которые обеспечивают обмен данными с внешними системами: прием телеметрии и/или отправку извещений об обнаруженных аномалиях.
Получение данных телеметрии в реальном времени и исторических данных от систем АСУ ТП по протоколу, который описан спецификацией OPC Unified Architecture (Унифицированная архитектура OPC).
Получение телеметрии от IoT-устройств в реальном времени по протоколу MQTT или AMQP от брокера, а также отправка брокеру извещений об аномалиях.
Загрузка в Kaspersky MLAD данных из файлов в формате CSV. Это могут быть как исторические архивы, так и периодически формируемые файлы.
Получение потока событий в формате Common Event Format.
Получение данных телеметрии от систем АСУ ТП по протоколу WebSocket, а также отправка WebSocket-серверу извещений об аномалиях.
Получение телеметрии от Kaspersky Industrial CyberSecurity for Networks (KICS for Networks) и отправка в программу извещений о полученных аномалиях. Взаимодействие происходит по защищенному протоколу gRPC. KICS for Networks извлекает телеметрию непосредственно из сетевого трафика и понимает широкий спектр публичных и проприетарных промышленных протоколов.