
Исходная проблема знакома всем, кто следит за новостями. Сгенерированные картинки могут нести вред даже тогда, когда их создавали ради шутки: так, в 2023 году по сети разошлись «фотографии» папы римского Франциска в модной белой пуховой куртке, и многие поверили в их подлинность, потому что ничто не подсказывало, что это работа нейросети. Масштабы тоже велики. По данным Everypixel Journal, на моделях из трёх открытых репозиториев уже создано больше 11 миллиардов изображений, а значит, контролировать происхождение картинок вручную невозможно. Нужен автоматический механизм, который будет работать при любом количестве изображений.
Существующие подходы авторы делят на две группы. Пассивные детекторы пытаются определить, сгенерировано ли изображение, анализируя его уже после появления, и дают заметную долю ложных срабатываний. Активные методы, то есть водяные знаки, ставят метку в момент создания. Но у распространённых решений есть слабое место: водяной знак в таких системах обычно добавляет отдельный фрагмент программы уже после того, как модель выдала картинку, и если открытый код модели доступен, этот фрагмент можно просто удалить. Знак исчезает, а изображение остаётся прежним. Для моделей с открытыми исходниками, которыми пользуется огромное число людей, это серьёзная дыра.
Идея Stable Signature в том, чтобы вшить подпись в сам генератор так, чтобы убрать её без разрушения модели было нельзя. Разработчик модели, которого в описании метода условно зовут Алисой, обучает основную модель и перед выдачей пользователю чуть доучивает одну её часть — декодер, который превращает внутреннее представление изображения в итоговые пиксели. В процессе дообучения в него закладывается индивидуальная подпись для получателя Боба. Она может обозначать версию модели, компанию или конкретного пользователя. Всё, что генерирует Боб, автоматически несёт его подпись, и позже Алиса или третья сторона может проверить, создана ли картинка именно этой копией модели.
Технически процесс состоит из двух этапов. Сначала совместно обучают две сверточные нейросети: одна берёт изображение и случайное сообщение и превращает их в картинку с водяным знаком, вторая извлекает сообщение из этой картинки после искажений, которые имитируют реальные правки. Цель — добиться того, чтобы закодированное и извлечённое сообщения совпадали. После обучения от этой пары остаётся только извлекатель. Затем на втором этапе дообучают латентный декодер генеративной модели: на партиях изображений его настраивают так, чтобы извлекатель находил в результате заданную подпись, а картинка при этом сохраняла визуальное качество. Для оптимизации хватает небольшой партии данных и короткого времени, поэтому процедура быстрая и не требует создавать модель заново.
Проверка принадлежности строится на статистике: извлекатель считывает из картинки двоичную подпись, а статистический тест решает, достаточно ли она совпадает с подписью модели, чтобы признать её происхождение. Авторы оценивали, насколько знак незаметен и насколько устойчив к правкам. В качестве примера в аннотации приведён такой случай: изображение, созданное по текстовому запросу и затем обрезанное до десяти процентов исходного содержания, всё равно определяется с точностью выше 90% при доле ложных срабатываний ниже одной на миллион. В блоге Meta* отмечено, что подпись, скорее всего, сохраняется и после обрезки, сжатия или изменения цветов, а значит, картинка, которую переслали десяткам людей и по пути немного поправили, всё равно указывает на исходную модель.
Главное преимущество перед пассивным распознаванием — управляемость ложных срабатываний, то есть случаев, когда человеческую работу принимают за ИИ. Авторы приводят наглядный расчёт: лучший из имеющихся пассивных методов находит примерно половину отредактированных сгенерированных изображений, но ошибочно отмечает порядка одного из ста обычных. На платформе, куда ежедневно загружают миллиард картинок, это дало бы около десяти миллионов ошибочных меток ради того, чтобы выявить лишь половину сгенерированных. Stable Signature при той же точности обнаружения даёт долю ложных срабатываний порядка 10 в минус десятой степени, причём этот порог можно задать самому. Кроме того, метод позволяет отличать разные версии одной и той же модели, чего пассивные способы не умеют.
Отдельный вопрос — что будет, если пользователи дообучают модель под свои задачи. Например, показывают ей фотографии своей собаки, чтобы потом получать её изображения в любых обстановках. Такие приёмы, как DreamBooth, Textual Inversion и ControlNet, работают на уровне латентной модели и не затрагивают декодер, поэтому подпись остаётся нетронутой. Метод хорошо сочетается с моделями на основе векторно-квантованных представлений, вроде VQGAN, и с латентной диффузией, как в Stable Diffusion. Поскольку сам процесс генерации не меняется, никакой переделки популярных моделей не требуется, а авторы допускают, что после адаптации идею можно перенести и на другие подходы.
Ограничения авторы называют прямо. Метод не масштабируется на генеративные модели без латентного пространства, поэтому не гарантирует защиты для будущих архитектур. Исследование охватывает только изображения, хотя команда хотела бы со временем распространить подход на другие виды контента. В Meta* подчёркивают, что общих отраслевых стандартов по маркировке сгенерированных материалов пока нет, и рассматривают публикацию как вклад в открытую науку, а также изучают, как применить разработку в собственных моделях. Работу выполнили Пьер Фернандес, Гийом Куарон, Эрве Жегу, Маттейс Даузе и Тедди Фюрон.
* Meta Platforms Inc. (владелец Facebook и Instagram) признана экстремистской организацией, её деятельность запрещена на территории Российской Федерации.









