Как в Solar Dozor внедрили новую технологию детектирования графических объектов с использованием GPU
Solar Dozor — это не просто DLP-система, а настоящий страж корпоративных данных, с более чем 20-летним опытом на рынке. Благодаря своей отказоустойчивости, масштабируемости и высокой производительности система востребована крупнейшими организациями России и СНГ.
Суперсила Solar Dozor — умение распознавать графические данные. С помощью технологии нейронной сети или, так называемого компьютерного зрения Dozor детектирует изображения и «понимает», что на них изображено. Система умеет идентифицировать паспорта, банковские карты, печати и даже технические чертежи, оформленные по ГОСТу. Это позволяет системе эффективно защищать корпоративные данные от утечек, распознавая и блокируя передачу конфиденциальных документов.
Пример из практики — в одной машиностроительной компании Solar Dozor поймал инженера Г., который пытался переслать по почте отсканированные чертежи инновационного двигателя. Несмотря на то, что документы были искажены при сканировании, система распознала их и заблокировала отправку. Расследование показало, что инженер Г. собирался «изучить файлы на выходных». Но локальными нормативными документами компании подобное запрещено и расценивается как грубое нарушение.
Для компаний, которые работают с огромными потоками графики, Solar Dozor предлагает использовать GPU-ускорение. Это увеличивает скорость обработки изображений до 135 штук в секунду — в разы быстрее, чем на обычных процессорах.
О том, как технология детектирования графических объектов с использованием GPU появилась в Solar Dozor рассказывает Михаил Остапчук, эксперт группы бизнес-аналитики Sоlar Dozor, ГК «Солар».
Пример детектирования чертежа
Что было на старте
Изначально для апробации данной технологии в целях защиты от утечек производился анализ различных детекторов графических объектов. Результатом должен был стать выбор инструмента, наиболее подходящего для DLP.
При проработке изначально рассматривались две модели: Faster RCNN и yolo4-tiny. В процессе сравнения было выявлено, что yolo4-tiny показывает значительно меньшее потребление оперативной памяти (в 7,6 раза), большую скорость (время обработки одного изображения составило менее 1 секунды против 3 секунд Faster RCNN), лучшую точность (в среднем 98%, что на 1% больше, чем показывала Faster RCNN).
В ходе дальнейшего процесса тестирования yolo4-tiny было выявлено, что на большой выборке тестовых данных, модель не распознает ряд критически важных графических объектов (например, фото банковских карт и др.), в результате было принято решение опробовать модель более свежей версии, а именно, Yolov5m.
Модель Yolov5m в сравнении с yolo4-tiny показала более высокую точность в части распознавания критически важных графических объектов (при сохранении средней точности по тестовому датасету в 98%) и более высокую скорость обработки изображений (в среднем в 3 раза). Однако, как выяснилось, данная модель может потреблять почти в два раза больше оперативной памяти. Однако, это всё равно существенно меньше (в 3 раза), чем потребляет Faster RCNN.
После сравнения всех трех моделей выбор был сделан в пользу защиты от утечек, поэтому была выбрана модель Yolov5m.
Первые результаты использования сервиса
На первых этапах своего развития сервис детектирования графических объектов в Solar Dozor работал только на серверах с процессорами CPU. В некоторых случаях требовалось такое количество дополнительных машин с CPU, которые заказчики не готовы были единовременно приобрести.
Следующий этап развития
Для уменьшения количества необходимых серверов в последней версии Solar Dozor было найдено техническое решение, которое позволило использовать модель детектирования графических объектов на серверах с графическими процессорами — GPU*.
Также для удобства использования было реализовано автоматическое включение сервиса распознавания графических объектов при обнаружении драйверов для видеокарт (CUDA**).
После проведения внутреннего тестирования, по результатам которого была подтверждена на порядок большая производительность работы технологии детектирования на серверах с GPU, чем с CPU, было принято решение предложить одному из заказчиков опробовать сервис распознавания на площадке с развернутой DLP-системой в реальных условиях промышленной эксплуатации.
В качестве такого заказчика выступила крупная компания из финансовой сферы с трафиком, в котором передавалось большое количество изображений, подлежащих анализу (порядка нескольких десятков тысяч в сутки). В качестве тестового класса графических объектов были взяты паспорта РФ.
Использование технологии на серверах с GPU
Как показали испытания, на серверах с GPU среднее количество обрабатываемых изображений в секунду выросло в десятки раз по сравнению с CPU.
Так добавление одного графического процессора уровня NVIDIA RTX 4090 или NVIDIA V100 ускоряет обработку изображений уже в 20 — 30 раз. При этом поддерживается работа на нескольких графических картах. Теперь один сервер с GPU, используемый для детектирования графических объектов, может заменить до 30 серверов с обычными CPU, что создает значительную экономию на техническом обеспечении и последующем сопровождении.
Для оценки точности распознавания была сделана статистическая выборка из 100 срабатываний по изображениям паспортов РФ, таких как сканы или фото, которых в общей сложности фиксировалось около 1000 в сутки в трафике заказчика. Все 100 срабатываний были истинными, что позволило сделать вывод о близкой к 100% точности детектирования данного класса объектов. Стоит отметить, что благодаря применяемому анализу графических особенностей среди изображений обнаруживались фото и сканы паспортов с плохо читаемым или нечитаемым текстом, недоступные для других средств детектирования утечек, например, для средств OCR***. Это достигается благодаря анализу именно графических, иногда труднодоступных глазу, особенностей изображения.
Выводы
Новая возможность работы Solar Dozor с GPU обеспечила мгновенное распознавание изображений различных объектов и расширила функциональность DLP-системы в части предотвращения утечек.
___
* GPU, графический процессор — устройство, выполняющее высокоскоростную потоковую обработку графической информации
** CUDA — программно-аппаратная архитектура параллельных вычислений, которая позволяет существенно увеличить вычислительную производительность, благодаря использованию графических процессоров
*** OCR — перевод изображений текста в текстовые (символьные) данные