Центр программных разработок и цифровых сервисов

Центр призван решить проблемы роста числа и уровня сложности цифровых сервисов посредством роботизации и автоматизации операционной деятельности

 

CheckAI — Программный инструмент автоматизированного тестирования безопасности моделей машинного обучения

CheckAI — платформа для проверки устойчивости ML-моделей к атакам различного рода. Проект автоматизирует процессы тестирования для табличных, текстовых, визуальных и голосовых моделей, формирует отчеты и помогает встроить проверки безопасности в CI/CD процессы. 

Большинство моделей перед внедрением оцениваются только по accuracy/F1 на обычных тестовых данных, но не проходят системную проверку на безопасность и уязвимость. CheckAI решает проблему проверки ML-моделей на устойчивость к adversarial-атакам, шуму, искажениям данных и деградации качества после атак, позволяя в автоматическом режиме запускать адверсариальные атаки на модели машинного обучения, оценивать падение качества и формировать отчеты с рекомендациями. Проект полезен для команд, внедряющих технологии машинного обучения в продуктовые среды и контролирующих риски в рамках процессов автоматизированного развертывания.

CheckAI помогает обнаружить проблему до внедрения модели, а не после инцидента. Это снижает риск ошибочных решений, финансовых потерь, репутационного ущерба и затрат на ручную проверку ML-моделей. Проверка устойчивости становится регулярным этапом приемки модели перед релизом. Компания готовит к внедрению модель компьютерного зрения, например, для видеоконтроля, промышленной безопасности или распознавания объектов. На стандартном тестовом наборе модель показывает высокое качество, поэтому выглядит готовой к запуску. CheckAI проверяет модель в условиях adversarial-искажений: добавляет патчи, шумы и другие изменения входных изображений, после чего сравнивает качество распознавания до и после атаки. Если метрики резко падают, команда получает отчет с примерами уязвимостей и понимает, что модель нельзя безопасно выпускать в продуктовую среду без доработки.

От модели до оценки устойчивости — в одном процессе

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

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

Один воспроизводимый процесс позволяет не только обнаружить уязвимость, но и проверить, помогает ли выбранный способ защиты.
Один воспроизводимый процесс позволяет не только обнаружить уязвимость, но и проверить, помогает ли выбранный способ защиты.

Что получает пользователь

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

 Результаты нескольких атак объединяются в общий scoring, а сравнительная таблица показывает, какие воздействия оказались наиболее успешными и как изменились ключевые показатели модели.
Результаты нескольких атак объединяются в общий scoring, а сравнительная таблица показывает, какие воздействия оказались наиболее успешными и как изменились ключевые показатели модели.
Для каждой атаки система сохраняет профильные метрики и конкретные примеры исходных и adversarial-данных, позволяя увидеть, как именно изменилось поведение модели.
Для каждой атаки система сохраняет профильные метрики и конкретные примеры исходных и adversarial-данных, позволяя увидеть, как именно изменилось поведение модели.

Платформа, которую можно расширять

Новые методы тестирования можно включать в общий воспроизводимый процесс — от запуска эксперимента до формирования отчёта.

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

Новый метод не остаётся отдельным исследовательским скриптом: после подключения его можно использовать в общих сценариях тестирования, сравнивать с другими атаками и включать результаты в единый отчёт. Это позволяет постепенно развивать платформу под новые модели, исследовательские задачи и требования к безопасности. 

Данные

CheckAI работает с различными типами данных:

  • Табличные данные: CSV, признаки, классы, числовые и категориальные значения
  • Текстовые данные: тексты, метки классов, датасеты HuggingFace или CSV
  • Изображения: данные для задач classification и object detection
  • Аудио: speech-to-text сценарии, Whisper-модели, метрики WER/CER

Технология

Основной рабочий процесс следующий: пользователь задает модель, датасет и набор атак в конфигурации; платформа загружает модель и данные, запускает подходящие атаки, сравнивает исходные и атакованные результаты, считает метрики устойчивости и формирует отчет с оценкой уязвимости модели и рекомендациями по защите.

В основе CheckAI — модульная архитектура. Ключевые компоненты системы:

  • CLI-интерфейс для запуска проверок по конфигурационным файлам.

  • Модуль загрузки моделей и датасетов с реестром совместимости моделей, типов данных и атак

  • Интеграция с ART для tabular и computer vision атак

  • Интеграция с TextAttack для NLP-атак

  • Модули Whisper/speech атак для ASR-моделей

  • Metrics Engine для расчета устойчивости, падения качества и успешности атак

  • Defence Module для применения методов защиты ML-моделей

  • Report Generator для HTML/JSON/console-отчетов

  • LLM-модуль для генерации рекомендаций по результатам тестирования

  • CI/CD pipeline для автоматической проверки моделей и сборки образов (включая поддержку TeamCity)

Ценность

  • Снижение рисков: разностороннее тестирование устойчивости предотвращает внедрение уязвимых моделей в продуктовую среду.
  • Экономия времени: автоматическое тестирование заменяет ручные проверки, разгружая ML/DS и AppSec команды.
  • Единый стандарт отчетности: сравнимые метрики по разным атакам и модальностям, пригодные для аудита и принятия решений.
  • Прозрачность: понятные HTML/JSON-отчеты с метриками и рекомендациями прямо указывают на слабые места модели.
  • Расширение функционала: добавление новых атак, моделей или метрик не требует изменения кода.

Интеграция и внедрение

CheckAI легко встраивается в CI/CD-пайплайны компаний (поддерживается TeamCity) и применяется для тестирования моделей в продуктах InfoWatch. Модульный дизайн позволяет подключить платформу к существующей ML-инфраструктуре без существенных доработок.

Демонстрация

Подробно о программе в презентации https://disk.360.yandex.ru/i/qdCsmcqjurdI6w 

Команда проекта

Петрованов Илья Сергеевич

Руководитель проекта

Сергеев Антон Валерьевич

Руководитель направления

Кузнецова София Михайловна

Мухаметдинов Булат Радикович

Пересадин Георгий Михайлович

Леснов Илья Андреевич

Сардарова Аида Исрафиловна