Що таке Deepfakes і як їх створити?

| | 0 Comments| 6:21 AM
Categories:

Ваш універсальний пояснювач на Deepfakes і легко створювати їх за допомогою Faceswap.

Штучний інтелект уже не такий «штучний». Ці часи поставили його небезпечно близько до нас, людей.

Він може пропонувати, писати, створювати мистецтво, а тепер виглядає та розмовляє як живий.

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

Що таке Deepfakes?

Слово Deepfake виникло шляхом поєднання глибокого навчання та підробки. Простіше кажучи, ви також можете припустити, що це вміло оброблені або глибоко підроблені ЗМІ.

Відповідно до Вікіпедії, це також відоме як синтетичний носій, у якому існуюче зображення, аудіо чи відео змінено, щоб повністю представляти когось іншого.

Як правило, дипфейки змушують відомих особистостей говорити те, чого вони інакше не сказали б.

Виходячи з майстерності його творця, може бути надзвичайно важко визначити, справжній він чи підробка.

Як працюють Deepfakes?

Простіше кажучи, частина оригінального відео (скажімо, обличчя) замінюється подібною на вигляд підробкою. У такому випадку це також можна назвати зміною обличчя, як у цьому відео «Обами».

Однак це не обмежується лише відео, ми також маємо глибокі підробки зображень і аудіо (і хто знає, у найближчому майбутньому підроблені аватари VR).

Джерело: Disney

Робоча методологія таких трюків залежить насамперед від програми та основного алгоритму.

Згідно з цією дослідницькою статтею Діснея, існують різні техніки, зокрема кодери-декодери, генеративні змагальні мережі (GAN), глибинні фейки на основі геометрії тощо.

Однак на наступні розділи значною мірою впливає те, як він працює з Facewap. Це безкоштовне програмне забезпечення Deepfake з відкритим вихідним кодом, яке дозволяє використовувати кілька алгоритмів для отримання очікуваного результату.

Є три основні процеси для створення дипфейків: вилучення, навчання та перетворення.

#1. Видобуток

Йдеться про виявлення та вичавлювання предметної області із семплів медіа, оригіналу та для обміну.

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

Наприклад, Faceswap має кілька різних варіантів вилучення, вирівнювання та маскування на основі ефективності ЦП або ГП.

Екстракція просто визначає обличчя в загальному відео. Вирівнювання виділяє ключові риси будь-якого обличчя (очі, ніс, підборіддя тощо). І нарешті, маскування блокує інші елементи зображення, за винятком області інтересу.

Загальний час, витрачений на вихід, важливий у виборі будь-якої опції, оскільки вибір ресурсомістких алгоритмів на посередньому апаратному забезпеченні може призвести до збою або значно тривалого часу для отримання прийнятних результатів.

Окрім апаратного забезпечення, вибір також залежить від параметрів, наприклад, чи страждає вхідне відео від перешкод обличчя, як-от рухи рук або окуляри.

Зрештою, необхідним елементом є очищення (пояснено пізніше) результату, оскільки вилучення матимуть кілька помилкових спрацьовувань.

Зрештою, вилучення повторюється для оригінального відео та підробленого (використовується для обміну).

#2. Навчання

Це серце створення дипфейків.

Навчання стосується нейронної мережі, яка складається з кодера та декодера. Тут алгоритми передають витягнуті дані, щоб пізніше створити модель для перетворення.

Кодер перетворює вхідні дані у векторне представлення, щоб навчити алгоритм відтворювати обличчя з векторів, як це робить декодер.

Після цього нейронна мережа оцінює свої ітерації та порівнює їх з оригіналом, призначаючи оцінку втрат. Це значення втрат з часом падає, оскільки алгоритм продовжує повторюватися, і ви зупиняєтесь, коли попередній перегляд стає прийнятним.

  Чому люди виглядають по-різному на фотографіях, зроблених з різними об’єктивами

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

Наприклад, Faceawap пропонує щонайменше 500 зображень, оригінальних і для обміну. Крім того, зображення повинні істотно відрізнятися між собою, охоплюючи всі можливі ракурси в унікальному освітленні для найкращого відтворення.

Враховуючи тривалість тренування, деякі програми (наприклад, Faceswap) дозволяють зупинити тренування на півдорозі або продовжити пізніше.

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

#3. Перетворення

Це останній розділ у створенні deepfake. Для алгоритмів перетворення потрібні вихідне відео, навчена модель і вихідний файл вирівнювання.

Згодом можна змінити кілька параметрів, пов’язаних із корекцією кольору, типом маски, бажаним вихідним форматом тощо.

Після налаштування цих кількох параметрів ви просто чекаєте на остаточний рендер.

Як згадувалося, Faceswap працює з багатьма алгоритмами, і можна грати між ними, щоб отримати прийнятну зміну обличчя.

Це все?

Немає!

Це була лише зміна обличчя, підмножина технології deepfake. Зміна обличчя, як і буквальне значення, замінює лише частину обличчя, щоб дати слабке уявлення про те, що може зробити deepfakes.

Для достовірної заміни вам також може знадобитися імітувати аудіо (більш відоме як клонування голосу) і всю фігуру, включаючи все, що вміщується в кадрі, ось так:

Отже, у чому тут гра?

Що могло статися, так це те, що автор deepfake сам зняв відео (як зазначено в останні кілька секунд), синхронізував діалог з синтетичним голосом Моргана Фрімена та замінив голову.

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

На YouTube можна знайти безліч глибоких фейків, аж до такої міри, що стає страшно, чому довіряти. І все, що для цього потрібно – це потужний комп’ютер із ефективною відеокартою.

Однак досконалості важко досягти, і це особливо актуально з deepfakes.

Щоб створити переконливий дипфейк, який може ввести в оману або вразити аудиторію, потрібна вправність і від кількох днів до тижнів обробки хвилини-двох відео.

Цікаво, що ці алгоритми зараз настільки ефективні. Але те, що чекає в майбутньому, включно з тим, наскільки ефективними можуть бути ці програми на апаратному забезпеченні нижчого класу, є те, що змусило нервувати цілі уряди.

Однак ми не будемо занурюватися в його майбутні наслідки. Замість цього, давайте перевіримо, як зробити це самостійно для невеликої розваги.

Створення (базового) відео Deepfake

Ви можете перевірити багато програм у цьому списку програм deepfake для створення мемів.

Одним із них є Faceswap, який ми будемо використовувати.

Перш ніж продовжити, ми переконаємося в деяких речах. По-перше, у нас має бути якісне відео мішені із зображенням різних емоцій. Далі нам знадобиться вихідне відео для заміни на цільове.

Крім того, закрийте всі програми, які інтенсивно використовують графічну карту, як-от браузери чи ігри, перш ніж продовжити Faceswap. Це особливо вірно, якщо у вас менше 2 ГБ VRAM (відеоRAM).

Крок 1: Вилучення облич

Першим кроком у цьому процесі є вилучення облич із відео. Для цього ми маємо вибрати цільове відео у вхідному каталозі та вказати вихідний каталог для вилучення.

Крім того, є кілька варіантів, включаючи детектор, вирівнювач, маскувальний пристрій тощо; пояснення для кожного з них є у розділі поширених запитань Faceawap, і було б марною тратою повторювати інформацію тут.

  Як надсилати електронні листи через Gmail на Python?

Джерело: Faceswap FAQ

Загалом корисно переглянути документацію для кращого розуміння та отримання гідного результату. Однак у Faceswap є корисні тексти, які можна знайти, навівши курсор на певну опцію.

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

Для контексту я використовував Mtcnn (детектор), Fan (вирівнювач) і Bisenet-Fp (маскер), зберігаючи всі інші параметри як є.

Спочатку я спробував це з S3Fd (найкращий детектор) і кількома іншими масками разом. Однак моя 2 Гб Nvidia GeForce GTX 750Ti не витримала основного удару, і процес неодноразово давав збій.

Нарешті я зменшив свої очікування та налаштування, щоб це досягти.

Окрім вибору відповідного детектора, засобів маскування тощо, є ще кілька параметрів у меню «Параметри» > «Налаштувати параметри», які допомагають налаштувати окремі параметри, щоб допомогти апаратному забезпеченню.

Простіше кажучи, виберіть найменший можливий розмір партії, вхідний розмір і вихідний розмір і позначте LowMem тощо. Ці параметри не є універсальними, і вони залежать від конкретного розділу. Крім того, довідкові тексти додатково допомагають у виборі найкращих варіантів.

Хоча цей інструмент чудово справляється з вилученням облич, вихідні кадри можуть мати набагато більше, ніж потрібно для навчання моделі (розглянемо пізніше). Наприклад, він матиме всі обличчя (якщо відео має більше одного) і деякі неправильні виявлення, які взагалі не мають цільового обличчя.

Це призводить до очищення наборів даних. Або можна перевірити вихідну папку та видалити себе, або скористатися сортуванням Faceswap, щоб отримати допомогу.

Використовуючи вищезгаданий інструмент, ви зможете послідовно розташувати різні обличчя, звідки ви зможете об’єднати потрібні в одну папку та видалити решту.

Нагадуємо, що ви також захочете повторити вилучення для вихідного відео.

Крок 2: Навчання моделі

Це найдовший процес у створенні дипфейка. Тут вхід A відноситься до цільового обличчя, а вхід B стосується вихідного обличчя. Крім того, каталог моделі – це місце, де зберігатимуться навчальні файли.

Тут найбільш значущим варіантом є Trainer. Є багато з індивідуальними параметрами масштабування; однак те, що спрацювало на моєму апаратному забезпеченні, це Dfl-H128 і Lightweight тренажери з найнижчими параметрами конфігурації.

Далі – розмір партії. Більший розмір пакету зменшує загальний час навчання, але споживає більше VRAM. Ітерації не мають фіксованого впливу на результат, тому вам слід встановити достатньо високе значення та припинити навчання, коли попередні перегляди стануть прийнятними.

Є ще кілька налаштувань, включаючи створення таймлапсу з заданими інтервалами; однак я навчив модель із мінімумом.

Крок 3: заміна на оригінал

Це останній подвиг у створенні deepfake.

Як правило, це не займає багато часу, і ви можете пограти з багатьма варіантами, щоб швидко отримати бажаний результат.

Як показано на зображенні вище, це кілька параметрів, які потрібно вибрати, щоб почати перетворення.

Більшість параметрів уже обговорювалося, як-от каталог введення та виведення, каталог моделі тощо. Одна важлива річ — вирівнювання, яке стосується файлу вирівнювання (.fsa) цільового відео. Він створюється у каталозі введення під час видобування.

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

Для цього цей міні-інструмент знаходиться в Інструменти > Вирівнювання.

Почніть із вибору Remove-Faces у розділі Job, виберіть оригінальний файл вирівнювання та папку з очищеними цільовими гранями та клацніть Alignments унизу праворуч.

  Як налаштувати оболонку Gnome

Це створить змінений файл вирівнювання, який відповідає папці оптимізованих облич. Будь ласка, пам’ятайте, що нам це потрібно для цільового відео, яке ми хочемо замінити.

Ще кілька конфігурацій включають налаштування кольору та тип маски. Регулювання кольору визначає змішування маски, і ви можете спробувати кілька, перевірити попередній перегляд і вибрати оптимальний варіант.

Тип маски важливіший. Це, знову ж таки, залежить від ваших очікувань і доступного обладнання. Як правило, вам також потрібно враховувати характеристики вхідного відео. Наприклад, Vgg-Clear добре працює з обличчями без перешкод, тоді як Vgg-Obstructed також може працювати з перешкодами, такими як жести руками, окуляри тощо.

Далі Writer пропонує кілька варіантів на основі результату, який ви хочете. Наприклад, виберіть Ffmpeg для візуалізації відео.

Загалом, ключем до успішного deepfake є попередній перегляд кількох виходів і оптимізація відповідно до доступності часу та потужності апаратного забезпечення.

Програми Deepfake

Є хороші, погані та небезпечні застосування дипфейків.

Хороші полягають у відтворенні уроків історії тими, хто насправді був там для більшої залученості.

Крім того, вони використовуються навчальними онлайн-платформами для створення відео з текстів.

Але одним із найбільших бенефіціарів буде кіноіндустрія. Тут буде легко уявити справжню головну роль, яка виконує трюки, навіть якщо це буде каскадер, ризикуючи своїм життям. Крім того, створювати багатомовні фільми стане легше, ніж будь-коли.

Якщо говорити про погані, то їх, на жаль, багато. Найбільше застосування deepfake на сьогоднішній день, фактично 96% (згідно з цим звітом Deeptrace), є в порноіндустрії для заміни облич знаменитостей на порноакторів.

Крім того, глибокі фейки також використовуються проти «стандартних» жінок, які не є знаменитостями. Зазвичай такі жертви мають у своїх профілях у соціальних мережах якісні фото чи відео, які використовуються для створення дипфейків.

Ще одна страшна програма — вішинг, або голосовий фішинг. В одному з таких випадків генеральний директор британської фірми переказав 243 000 доларів США за наказом «генерального директора» своєї німецької материнської компанії, щоб потім з’ясувати, що насправді це був глибокий фейковий телефонний дзвінок.

Але ще небезпечніше те, що deepfake провокує війни або вимагає капітуляції. Під час останньої спроби український президент Володимир Зеленський сказав своїм військам і народу здатися у війні, яка триває. Однак правду цього разу видало недоброякісне відео.

Зрештою, існує багато додатків deepfake, і вони тільки починаються.

Це підводить нас до питання на мільйон доларів…

Чи законні Deepfakes?

Це багато в чому залежить від місцевої влади. Хоча чітко визначені закони, зокрема те, що дозволено, а що ні, ще не видно.

Однак очевидно, що це залежить від того, для чого ви використовуєте глибокі фейки — від наміру. Навряд чи є якась шкода, якщо ви маєте намір розважити чи навчити когось, не засмучуючи ціль обміну.

З іншого боку, шкідливі програми повинні каратися законом, незалежно від юрисдикції. Ще одна сіра зона – це порушення авторських прав, яке потребує належного розгляду.

Але повторюю, вам слід перевірити в місцевих органах влади щодо легальних додатків deepfake.

Слідкуйте!

Deepfkaes використовує штучний інтелект, щоб змусити будь-кого щось сказати.

Не довіряйте всьому, що бачите в Інтернеті, — це перша порада, за якою ми повинні діяти. Є маса дезінформації, і її ефективність тільки зростає.

І оскільки створювати їх стане легше, настав час навчитися виявляти дипфейки.