5459

Найден способ уверенно распознавать дипфейки?

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

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


Задача осложняется тем, что для создания дипфейков обычно используются генеративно-состязательные нейросети (Generative Adversarial Networks, GAN). Их работа изначально основана на противостоянии двух нейронных сетей, одна из которых генерирует картинки, а другая старается определить, настоящие они или нет. Обе эти сети обучены на больших массивах реальных фотографий. Если изображение выглядит неправдоподобно, вторая нейросеть заставляет первую изменять его до тех пор, пока оно не перестанет идентифицироваться как подделка.


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


Алгоритмы по распознаванию дипфейков обычно используют свёрточные нейронные сети, которые умеют выделять характерные признаки. Эти нейросети обучают на самих изображениях в явном виде, что требует много времени и ресурсов. Однако коллектив исследователей из Института информационной безопасности им. Хорста Гёрца при Рурском университете в Бохуме предложил более простое и изящное решение этой проблемы. Учёные решили подвергнуть изображения частотному анализу, использовав давно известный метод дискретного косинусного преобразования. Он применяется, например, в алгоритме сжатия JPEG. Изображение в этом случае рассматривается как результат наложения гармонических колебаний различной частоты, взятых с разными коэффициентами. Примерно так:

Эти коэффициенты можно визуализировать в виде прямоугольной тепловой карты, верхний левый угол которой соответствует низкочастотным областям исходного изображения, а нижний правый — высокочастотным. Реальные фотографии в основном состоят из низкочастотных колебаний.

Реальная фотография и её спектрограмма


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

Дипфейк и его спектрограмма


Чтобы проверить эффективность предложенного подхода, учёные составили тестовую выборку из 10 000 изображений, куда вошли сгенерированные нейросетью StyleGAN портреты несуществующих людей и реальные фотографии из набора Flickr-Faces-HQ (FFHQ). Всё это можно найти на сайте whichfaceisreal.com. Успех был абсолютным: алгоритм распознал все дипфейки до единого!


Более того — выяснилось, что он с большой долей вероятности позволяет определить, с помощью какой именно нейросети было сгенерировано изображение. Дело в том, что каждая из них имеет свой «отпечаток» в частотном диапазоне.

Спектрограммы реальных фотографий из набора Stanford Dogs (слева) и изображений, сгенерированных нейросетями различных архитектур, которые были обучены на этом наборе (четыре справа). Усреднённые значения для 10 000 изображений


Откуда же берутся эти всплески в высокочастотных областях? Оказывается, что они неразрывно связаны с самим принципом действия генеративно-состязательных нейросетей. В основе их работы лежит процесс так называемого апсемплинга, то есть отображения данных из пространства низкой размерности в пространство высокой размерности. Например, сеть StyleGAN, создавшая все дипфейки с людьми из этого поста, формирует в пространстве данных изображение размером 1024 × 1024 пикселя (более миллиона значений) на основе вектора из скрытого пространства, имеющего размерность всего-навсего 100. Если же попытаться обойтись без апсемплинга, то объём вычислений, необходимых для генерации дипфейков, вырастет до астрономических величин.


В данной статье учёные подробно рассмотрели лишь один набор данных и одну архитектуру нейросети. Однако они утверждают, что предложенный метод универсален и будет работать не только для всех существующих сетей типа GAN, но и для тех, что появятся в будущем. Так ли это, станет ясно уже довольно скоро.


Источник


P. S. Это очередная новость с семинара «Актуальная наука» в Политехническом музее. Я буду стараться публиковать их каждую неделю.

Правила сообщества

ВНИМАНИЕ! В сообществе запрещена публикация генеративного контента без детального описания промтов и процесса получения публикуемого результата.


Разрешено:


- Делиться вопросами, мыслями, гипотезами, юмором на эту тему.

- Делиться статьями, понятными большинству аудитории Пикабу.

- Делиться опытом создания моделей машинного обучения.

- Рассказывать, как работает та или иная фиговина в анализе данных.

- Век жить, век учиться.


Запрещено:


I) Невостребованный контент

  I.1) Создавать контент, сложный для понимания. Такие посты уйдут в минуса лишь потому, что большинству неинтересно пробрасывать градиенты в каждом тензоре реккурентной сетки с AdaGrad оптимизатором.

  I.2) Создавать контент на "олбанском языке" / нарочно игнорируя правила РЯ даже в шутку. Это ведет к нечитаемости контента.

  I.3) Добавлять посты, которые содержат лишь генеративный контент или нейросетевой Арт без какой-то дополнительной полезной или интересной информации по теме, без промтов или описания методик создания и т.д.


II) Нетематический контент

  II.1) Создавать контент, несвязанный с Data Science, математикой, программированием.

  II.2) Создавать контент, входящий в противоречие существующей базе теорем математики. Например, "Земля плоская" или "Любое действительное число представимо в виде дроби двух целых".

  II.3) Создавать контент, входящий в противоречие с правилами Пикабу.


III) Непотребный контент

  III.1) Эротика, порнография (даже с NSFW).

  III.2) Жесть.


За нарушение I - предупреждение

За нарушение II - предупреждение и перемещение поста в общую ленту

За нарушение III - бан

Вы смотрите срез комментариев. Показать все
0
DELETED
Автор поста оценил этот комментарий

Я не поняла, что спектрограмма-то показывает? Что такое "всплески в высокочастотных областях"? Что такое "высоко и низкочастотные области"? Не понятно.

раскрыть ветку (18)
5
Автор поста оценил этот комментарий
Я не поняла, что спектрограмма-то показывает?

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

Что такое "всплески в высокочастотных областях"?

Если я правильно понял, для реальных фотоснимков характерно особенное распределение коэффициентов для гармоник Фурье-образа: отсутствуют резкие переходы от малых величин коэффициентов к большим,  при этом в среднем коэффициенты, соответствующие медленно меняющимся цветам изображения (в верхнем левом) больше, чем коэффициенты, соответствующие быстро меняющимся (в правом нижнем углу). В отличие от реальных фотографий, дип-фейки, в силу особенностей процесса их генерации, имеют принципиально иное распределение коэффициентов своих Фурье-образов: для них характерны регулярно расположенные области, в которых коэффициенты принимают значительно большие значения, чем вокруг них.

раскрыть ветку (3)
1
Автор поста оценил этот комментарий

Мне тогда вот что непонятно. Дипфейки и ГАНы существуют уже ну года 3 точно. Неужели только сейчас догадались разложить на спектрограмму? Странно, конечно

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Да, это меня тоже удивило.

0
Автор поста оценил этот комментарий

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


Опять же. Более высокие частоты отвечают, скорее, за точность. И вероятно, их можно просто сглалить/отрезать без видимых отличий.

4
Автор поста оценил этот комментарий
Короч, это как спектрограмма для звука. Она показывает как громок звук такой-то частоты.

Только звук одномерный, а картинка двумерная.

Для картинки мы видим наличие мелких и крупных деталей. Плавные переходы дадут низкочастотную область ("волна" шире - а значит "частота" ниже), более резкие переходы (ну например "мурашки") - высокочастотную область)

Иллюстрация к комментарию
раскрыть ветку (12)
0
Автор поста оценил этот комментарий

Аналогия не совсем точная, конечно, потому что звук меняется во времени, а картинка статична. Но как иллюстрация разложения по частотам — подойдёт. 

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Тут задача максимально понятно и коротко донести мысль.

С FFT народ хоть как-то сталкивался в качестве визуализации музыки

Вот даже более близок будет "эквалайзер", который в некотором роде та же спектрограмма, но обрезанная.

(я там сильно в области DCT не копал, но какое-то понимание имею, даж выдергивал IDCT из x264 для опытов c хранением данных в видео)

Иллюстрация к комментарию
0
DELETED
Автор поста оценил этот комментарий

Я чет все равно не особо въехала. Для звука понятно - его громкость показывает. Но я не вижу каких-то супер крутых переходов на фото... Я так понимаю, это что-то, что наш глаз не улавливает. Окей, но вот что именно один хрен не понятно... Видимо, для меня это слишком сложно.

раскрыть ветку (9)
0
Автор поста оценил этот комментарий

Про звук, похоже, тоже не очень поняла.

Мы предполагаем что любой звук можно представить в виде сложения колебаний волн. Каждая волна вибрирует на своей частоте, и таких волн очень много. Грубо говоря, у нас есть свистки, один свисток который выдает пищание, другой свисток басит, и таких свистков очень много и все выдают разный звук.

Так и спектрограмма - показывает на какой частоте какие ноты с какой громкостью играют. Не громкость звука, а громкость нот/свистков, для которых известно на какой частоте они звучат.

Вот, а теперь про картинку. Пусть картинка черно-белая и на ней что-то нарисовано. Т.е. имеем цвета - белый, черный, серый, серый посветлее, серый потемнее. Для компьютера картинка (обычно) состоит из точек, каждая имеет свою яркость. Если посмотреть на соседние точки, то обычно одна ярче, другая темнее, т.е. имеем колебания яркости. "Ко-ле-ба-ния" :) А раз есть колебания, значит можно описать картинку как сумму волн (колебаний) яркости. Только уже в двух измерениях - по высоте и ширине (для звука имеем только "время").

Картинка "спектрограммы" в данном случае показывает наличие крупных и мелких элементов на картинке, ну еще можно определить плавные переходы яркости.

раскрыть ветку (8)
DELETED
Автор поста оценил этот комментарий

Я все равно не поняла. Если верить спекрограмме, то вот тут прям супер пупер перепады, но их же нет...

Иллюстрация к комментарию
раскрыть ветку (7)
2
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий

Я как бэ поняла ваши слова, но суть один хрен не поняла :D

Почему таких колебаний не может быть на обычной фотке?

Иллюстрация к комментарию
0
Автор поста оценил этот комментарий

на спектрограмме возле одного угла более крупные "детали", а ближе к противоположному углу - более мелкие "детали".

Наличие светлых областей везде показывает что там есть и мелкие и крупные детали как по вертикали так и горизонтали


я хотел сейчас быстренько найти прогу которая делает 2д спектрограммы из картинок, но похоже я как-то неправильно гуглил

раскрыть ветку (4)
0
DELETED
Автор поста оценил этот комментарий

https://m.habr.com/ru/post/458962/ вот тут вроде есть.


Но вот другой человек говорит, что спектрограмма с изображением не связана так. Она как-то иначе связана. #comment_186790990


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

раскрыть ветку (3)
2
Автор поста оценил этот комментарий

вот с утра терзал гугл как это сделать,
картинка и её спектрограмма (дискретное косинусное преобразование)

обычная, больше контраста, размытая, с поднятой четкостью, подсветка контуров

Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (1)
0
DELETED
Автор поста оценил этот комментарий

Ок. А можете провернуть тоже самое с картинкой от нейросети?

1
Автор поста оценил этот комментарий

в обычных фотках оно тоже будет, просто в картинках из нейросети из-за особенностей применяемого "алгоритма увеличения картинки" на спектрограмме возникают заметные пики, так как между соседними точками картинки возникает характерный сдвиг яркости.


хз, вечером может попробую написать прогу делающую ДКП картинок и посмотреть как с ней поиграться

та ссылка на хабр не про то, результат 2D ДКП картинки - должна быть тоже картинка


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

В общем, это нужно найти прогу которая делает 2д спектрограмму картинки и посмотреть как она себя ведет для различных картинок, и чем отличается одна и та же картинка если на нее нанести шум или заблюрить, или применять какие-нибудь еще фильтры из фотошопа.

4
Автор поста оценил этот комментарий

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

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

Так вот, эти квадратики с числами можно визуализировать и по-другому. Поставим каждому квадратику в соответствие один пиксель, яркость которого будет соответствовать написанному числу. Большие отрицательные числа станут тёмно-синими, большие положительные — ярко-жёлтыми, средние — оттенками красного. Это и будет наша тепловая карта.

Иллюстрация к комментарию
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества