Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Adversarial Attacks

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

Атаки с использованием состязательных примеров — это преднамеренные манипуляции входными данными модели машинного обучения (ML), из-за которых модель выдаёт неверный результат, обычно с высокой уверенностью. В компьютерном зрении изменённые входные данные, называемые состязательными примерами, могут отличаться от исходных настолько незначительно, что человек этого не заметит, однако классификатор, распознавший панду, теперь определяет гиббона. Исследователи описали это явление в глубоких нейронных сетях в статье 2013 года «Интригующие свойства нейронных сетей». Такая же уязвимость встречается в распознавании речи, обнаружении вредоносных программ и больших языковых моделях (LLMs). Атаки с использованием состязательных примеров особенно важны там, где решение модели запускает действие, например торможение автомобиля, открытие двери или одобрение транзакции.

Как работают состязательные примеры#

Функция потерь обученной модели измеряет, насколько неверен её ответ на входные данные. Обычно обратное распространение ошибки вычисляет градиенты этой функции потерь по отношению к весам; атакующий же вычисляет их по отношению к пикселям входного изображения и изменяет пиксели в направлении увеличения потерь. В статье «Объяснение и использование состязательных примеров» (2014) Ян Гудфеллоу и его коллеги предположили, что причина кроется в преимущественно линейном поведении нейронных сетей в пространствах высокой размерности: изменение яркости каждого пикселя лишь на долю уровня серого, суммируясь по сотням тысяч пикселей, приводит к значительному изменению результата. Их метод Fast Gradient Sign Method (FGSM) выполняет один шаг фиксированного размера по знаку градиента входных данных; шаг 0.007 превратил предсказание «панда» с вероятностью 57.7% в предсказание «гиббон» с вероятностью 99.3%. Проектируемый градиентный спуск (PGD) многократно выполняет более мелкие шаги, удерживая общее изменение в заданных пределах, что делает атаку сильнее.

Для атаки FGSM на классификатор ResNet-18 из TorchVision достаточно одного прохода обратного распространения ошибки:

import torch
import torch.nn.functional as F
from torchvision.io import decode_image
from torchvision.models import ResNet18_Weights, resnet18
from torchvision.transforms import v2

weights = ResNet18_Weights.DEFAULT
model = resnet18(weights=weights).eval()
torch.hub.download_url_to_file("https://ultralytics.com/images/bus.jpg", "bus.jpg")

# Keep pixels in [0, 1] and normalize inside each forward pass, so the attack edits real pixel values
image = v2.Compose([v2.Resize(256), v2.CenterCrop(224), v2.ToDtype(torch.float32, scale=True)])(decode_image("bus.jpg"))
normalize = v2.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
x = image.unsqueeze(0).requires_grad_(True)
logits = model(normalize(x))

# FGSM: move every pixel by one intensity level (1/255) in the direction that increases the loss
F.cross_entropy(logits, logits.argmax(1)).backward()
x_adv = (x + x.grad.sign() / 255).clamp(0, 1)

for name, batch in [("clean", x), ("adversarial", x_adv)]:
    probs = model(normalize(batch)).softmax(1)
    print(f"{name}: {weights.meta['categories'][probs.argmax()]} ({probs.max():.2f})")

Чистое изображение классифицируется как minibus (0.83), а атакованное — как police van (0.94): изменение каждого пикселя не более чем на один из 255 уровней интенсивности заставляет модель увереннее выбрать новую неверную метку, чем исходную.

Типы атак#

Атаки классифицируют по моменту их проведения, знаниям атакующего о модели и его целям. Нетаргетированная атака добивается любого неверного результата, а таргетированная заставляет модель выдать конкретный результат, например принять знак «Стоп» за знак ограничения скорости. Цифровые атаки напрямую изменяют входные данные, а физические изменяют реальные объекты с помощью наклеек, патчей или напечатанных узоров, сохраняющих эффект при изменении угла обзора, расстояния и освещения. Таксономия NIST для состязательного машинного обучения группирует атаки по этапам жизненного цикла ML, на которые они направлены:

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

Риски в реальном мире#

  • Автономные транспортные средства: В работе «Надёжные атаки на модели глубокого обучения в физическом мире» чёрные и белые наклейки на настоящем знаке «Стоп» вызвали целевую ошибочную классификацию в 100% лабораторных изображений и в 84,8% видеокадров, снятых из движущегося автомобиля.
  • Обнаружение людей: Распечатанная накладка размером примерно 40 × 40 см, которую держали перед телом, значительно снизила точность детектора людей YOLOv2, для которого её оптимизировали. Такие накладки угрожают системам сигнализации, срабатывающим при обнаружении людей, например системе охранной сигнализации Ultralytics, которая отправляет оповещение по электронной почте, когда YOLO26 обнаруживает в кадре заданное количество объектов. Накладка, подавляющая обнаружение человека, также подавляет оповещение.
  • Распознавание лиц: Исследователи напечатали оправы очков с состязательными узорами, которые позволяли владельцам обходить систему распознавания лиц или выдаваться за конкретного другого человека.
  • Языковые модели: Автоматически оптимизированные состязательные суффиксы — строки токенов, добавляемые к запросу, — заставляли чат-ботов с настройкой на полезное поведение выполнять вредоносные запросы; суффиксы, оптимизированные на открытых моделях, переносились и на коммерческие. Атаки на большие языковые модели, написанные вручную, чаще называют джейлбрейком и инъекцией промпта.
  • Отравление данных: Искажает обучающие данные, из-за чего обученная модель работает некорректно, часто только на входных данных со скрытым триггером. Состязательные примеры в узком смысле не изменяют модель, а манипулируют входными данными на этапе инференса.
  • Атаки вывода о принадлежности: Нацелены на извлечение информации — например, выяснение, входила ли запись в обучающую выборку, — а не на получение неправильного результата.
  • Генеративно-состязательные сети (GANs): Термин «состязательные» здесь означает, что две сети обучаются друг против друга; это метод обучения, в котором нет злоумышленника.
  • Проверка безопасности ИИ методом red teaming: Практика атак на собственную систему до её выпуска; среди прочих методов она использует состязательные атаки.

Методы защиты#

Состязательное обучение, формализованное с помощью PGD в работе «На пути к моделям глубокого обучения, устойчивым к состязательным атакам», генерирует атаки во время обучения и подгоняет модель так, чтобы она правильно их классифицировала. Это по-прежнему самая надёжная эмпирическая защита, но она требует в несколько раз больше вычислений, чем обычное обучение, и снижает точность на чистых входных данных. Сертифицированные методы защиты, например сглаживание рандомизацией, доказывают, что возмущение в пределах заданного радиуса не может изменить предсказание, хотя это работает только для малых радиусов. Защита с предварительной обработкой входных данных или сокрытием градиентов показывает плохие результаты: в работе «Обфусцированные градиенты создают ложное чувство безопасности» рассмотрели девять методов защиты, опубликованных на ICLR 2018, обнаружили, что семь из них полагались на обфусцированные градиенты, и полностью обошли шесть из этих методов, а седьмой — частично.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

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

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

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

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения