В 2018 году в интернете появилось вирусное видео с нарезкой из разных фильмов, в которых играл Николас Кейдж. Шутка была в том, что это были фильмы, в которых в реальности этого актёра никогда не было, например «Индиана Джонс» и «Терминатор». А видео на самом деле было дипфейком. Рассказываем, что это такое, какие технологии за этим стоят и как распознать дипфейк.
Если у вас работает Ютуб — посмотрите это видео: youtube.com/watch?v=BU9YAHigNx8. Если нет — вот одна из возможных причин, разобрали её в отдельной статье.
Что такое дипфейк
Дипфейк — это изображение или видео, на котором лицо одного человека заменили на лицо другого с помощью искусственного интеллекта. Раньше такое делали вручную, например редактировали в Фотошопе слой за слоем — ретушировали или добавляли элементы. Это сложно и требует хорошей подготовки специалиста. Дипфейки же делаются автоматически.
Дипфейком может быть как готовое видео, так и онлайн-трансляция, например когда заменяется лицо собеседника в видеозвонке. Есть реальная история, как один программист проходил за друга онлайн-собеседования, подменяя его внешностью свою, и в итоге нашёл другу работу.
Ещё есть аудиодипфейки, или вокодинг, — это когда алгоритмы используются для синтеза речи, которая звучит так, будто её произнёс конкретный человек. Один из известных примеров вокодинга — воссоздание голоса для актёра Вэла Килмера после того, как он потерял голос из-за рака горла. Когда в 2022 году Килмер исполнял роль Айсмена в фильме «Топ Ган: Мэверик», его голос был синтезирован специальной моделью.
👉 Короче, дипфейк — это то, что притворяется кусочком реальности, но им не является.
Как создаются дипфейки
В целом этапы создания визуальных и аудиодипфейков похожи. На примере видео это работает так:
- Сначала собираются изображения или видео с лицом того человека, которое нужно перенести на другое видео. Чем больше качественных изображений с разных углов и с разным освещением, тем лучше.
- Затем используется специальная программа, основанная на искусственном интеллекте. Она анализирует собранные изображения, чтобы научиться воспроизводить лицо этого человека. Для этого программа изучает особенности лица, например его форму, мимику и движения.
- Когда модель достаточно натренирована, она может начать заменять лицо в видео. Для этого программа берёт каждый кадр по отдельности и накладывает на него лицо другого человека, стараясь сделать это максимально реалистично, чтобы подмену было трудно обнаружить.
- Чтобы результат выглядел ещё более правдоподобно, могут использоваться дополнительные техники редактирования: корректировка цветов, сглаживание переходов и улучшение качества.
Разберём всё подробнее. Для начала нейросеть должна знать, как выглядит и разговаривает человек, поведение которого она будет воссоздавать. Поэтому для качественного дипфейка понадобятся гигабайты и терабайты разных фото, видео и аудио хорошего качества. Вот пример небольшого фрагмента того, что нужно для создания более-менее реалистичного дипфейка:
Когда данные собраны, нейросеть начинает их анализ: как выглядит человек спереди, под углом, в профиль, сзади, сверху, снизу. Герой исходного видео может поворачиваться, попадать под разное освещение, улыбаться, хмуриться, поднимать брови. Чтобы замена получилась достоверной, у нейросети должны быть фото или видео для замены в таких же ракурсах и углах освещения. Всё это разбивается на категории, классифицируется и запоминается.
В итоге получается такой процесс: мы скармливаем нейросети огромное количество информации. Она эти данные изучает и сама строит какие-то закономерности и правила, по которым будет идти для достижения результата. Так работают не только дипфейки, но и все нейросети в целом:
Для создания дипфейка обычно используется две нейросети-автокодировщика. Автокодировщики состоят из двух основных частей: кодировщика и декодировщика.
Кодировщик берёт изображения, уменьшает их размер и оставляет только главное, удаляя шумы и незначительные детали. После этого декодировщик должен полностью восстановить исходные изображения:
Такая система может быть полезна для распознавания лиц, восстановления повреждённых фото или для экономии места, когда большие изображения хранятся в сжатом виде без потери качества.
Чтобы создать дипфейк, нужно пропустить сжатое изображение из первого набора данных через декодировщик другого датасета, которому всё равно, с чем работать — с исходной картинкой или с подменой. Тогда нейросеть наложит все основные детали одного изображения на стиль другого:
Дипфейку не всегда нужно много данных. Может быть так: модель обучалась несколько дней или недель, чтобы запомнить общие правила мимики и смены освещения. После этого ей можно показать одно фото хорошего качества, и она довольно быстро сможет добавить его на видео.
Вот пример дипфейка сингапурского ведущего Стивена Чиа. Видео сделано предварительно обученной нейросетью по одной фотографии. Тут можно разглядеть неестественные движения глаз и неправильные тени, но в целом выглядит убедительно:
Можно сделать проще — воспользоваться онлайн-сервисом с уже обученной нейросетью. Получится быстро, но, скорее всего, не очень реалистично, потому что для хорошего дипфейка нужно несколько раз корректировать результаты и добавлять материалы, которых не хватает — например, если левая верхняя часть головы находится в тени.
Если хочется создать дипфейк просто в качестве шутки, достаточно любого бесплатного онлайн-сервиса. Работают они примерно одинаково.
Хотите попробовать что-то посложнее — есть бесплатное ПО DeepFaceLab. На GitHub лежит весь код, а на видеохостингах есть подробные инструкции по установке и работе. Разработчик прекратил поддержку в ноябре 2023-го, но на работоспособность кода это не влияет. Сегодня с помощью DeepFaceLab сделано 95% всех дипфейков в мире.
В чём проблема дипфейков
Поддельные видео создают не только для развлечения, но также для обмана и в преступных целях. Вот инфографика со статистикой использования дипфейков в преступлениях в 2022–2023 годах:
Какие преступления совершаются с помощью дипфейков:
- финансовые — преступник может замаскироваться под авторитетного инвестора и посоветовать покупать акции определённой компании;
- новостные — мошенники могут выпустить выступление правительственного или военного чиновника с дезинформацией;
- уголовные — с дипфейком можно имитировать похищение или вымогать деньги, угрожая опубликовать поддельные фотографии.
Чаще всего от дипфейков страдают известные люди. Не только из-за того, что у них больше влияния на широкую публику, а просто потому, что подлинные аудио-, видео- и фотоматериалы с их участием обычно лежат в открытом доступе и их много. А значит, проще обучить нейросеть.
Вот ещё немного статистики про дипфейковые преступления с сайта eftsure.com:
- атаки с подменой ID на системы проверки личности выросли на 704% в 2023 году;
- в 2023 году 88% всех дипфейк-атак были связаны с криптовалютой;
- самый крупный рост этого вида мошенничества в 2023 году был в США — на 1740%;
- крупнейший рост преступлений по отраслям — в финансовой, на 700%;
- в мире от преступлений на основе дипфейков уже пострадали 10% всех компаний;
- люди распознают дипфейки в среднем в 62% случаев, а высококачественные поддельные видео только в 24% случаев.
Дипфейк — не всегда преступление. Можно сделать качественный муляж видео для рекламы, если актёр согласен и готов предоставить данные. Это часто может быть дешевле, чем приглашать его на живые съёмки.
Как распознать дипфейк
С момента появления дипфейков в 2017 году росло и количество способов для их выявления. Часть из них уже не работает. Например, первые дипфейки можно было распознать по плохо прорисованным рукам или рваным неровным краям лица. Но с тех пор технологии шагнули вперёд и выдают более качественный результат.
Технологии для выявления дипфейков тоже могут ошибаться. Одна из таких технологий — отслеживать пульс по невидимым глазу биологическим признакам с помощью метода фотоплетизмографии, или PPG:
Эффективность этого метода неизвестна, но на тестах видно, что периодически программа ошибочно принимает реальные видео за поддельные.
👉 Какого-то одного способа наверняка и сразу распознать качественный дипфейк нет. Сейчас появляются настолько живые и детализированные дипфейки, что они проходят все фильтры, но в реальности изображённого события точно не было.
Как распознать дипфейк на глаз
Для хорошей подделки нужно многое: двойник, огромное количество фото- и видеоматериала, специалист по визуальным эффектам. Большинство мошеннических дипфейков сделаны на скорую руку, поэтому в них можно разглядеть ошибки и артефакты, которых быть не должно. Искать ошибки нужно в местах, которые даются нейросети сложнее всего.
Посмотреть дипфейк в профиль. Этот способ особенно хорошо работает с дипфейками в реальном времени, потому что программе нужно быстро перестраиваться и ничего не перепутать. Но есть и другая причина: у людей просто меньше фото сбоку, чем в три четверти или анфас:
Проверить синхронизацию губ и детали рта. Научить нейросеть правильно двигать губами в соответствии с речью сложно, а ещё люди не так часто показывают на фото зубы. Это может запутать нейросеть и выдать себя:
Свет и цвет. При движении тени должны падать естественным образом. Посмотрите, как тень от круглого микрофона на округлых формах лица превратилась в угловатую:
Если во время видеозвонка появились подозрения в личности собеседника, обычно достаточно попросить его покрутить головой — дипфейк должен проявить себя помехами.
Как распознать дипфейк с помощью логики
Заранее подготовленный дипфейк может выглядеть качественно при любом ракурсе. Но кроме визуального распознавания остаётся логическое.
Посмотрите видео (или послушайте аудио) и спросите себя:
- Что пишут про это в интернете?
- Есть ли в открытых источниках дублирующая подтверждающая информация о событии, которое вы увидели? Насколько можно верить этим источникам?
- Есть ли другая информация о том, что происходило в этом месте в это время?
- Призывает ли видео сделать что-то прямо сейчас?
Если другие источники опираются на то же видео, это может говорить о подделке ролика. А если видео явно сделано так, чтобы вывести зрителя из уравновешенного состояния и заставить его совершать необдуманные действия, то это тоже явный признак обмана и попытки манипуляции.
Как отличить дипфейк с помощью нейросети
Ещё один способ — натренировать против нейросети другую нейросеть. Например, можно взять проект с открытым исходным кодом MesoNet. Большая часть кода в репозитории не обновлялась по 5–6 лет, но недавние коммиты тоже есть. Последний — в апреле 2024-го.
MesoNet — нейросеть, которая работает в двух вариантах алгоритма. Оба распознают дипфейки, но структура работы с нейронными слоями немного различается. Можно использовать оба алгоритма и сравнивать результаты. Если хотите знать подробнее, как это работает технически, можно почитать описание проекта на английском. Для обучения нейросети авторы создали свой датасет из дипфейков и реальных видео, где эти дипфейки использовались.
Чтобы распознать дипфейк с помощью MesoNet, нужно загрузить изображения для анализа, и модель выдаст число от 0 до 1. Чем ближе ответ к единице, тем больше нейросеть уверена в том, что это дипфейк. Если хотите попробовать, скачайте код из репозитория и посмотрите видеоуроки по работе с MesoNet.