Читая про то, как появилась технология DeepFake,...

Телеграм сент. 19, 2019

Читая про то, как появилась технология DeepFake, я задумывался, какой подход я бы использовал для решения задачи замены лица в видео для нейросети, ничего, кроме тактики ''пробить стену лбом'' в голову не приходило.

Напомню, что для успешной нейросетевой магии надо:

  1. Четко сформулировать задачу, понять что и из чего должна получать нейросеть.
  2. Собрать данные (фотки и видео, в сети навалом) и разметить их (адская унылая работа, для одиночки - энтузиаста неподъемная задача).
  3. Подобрать модель (инфы по работе с изображениями в сети навалом) и обучить её (годится любой хороший игровой компьютер, а ещё можно бесплатно воспользоваться сервисом Google Colaboratory)

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

Автор DeepFake, правильно поставив задачу, убил сразу двух зайцев: решил задачу и избавился от нудной рутины, которую обычно сваливают на ''турков''.

Какой подход он использовал:

  1. Написал программу, случайным образом искажающую лицо на фото.
  2. Нагуглил много фоточек какой-то звезды и для каждой из них сделал тысячи вариаций искажений.
  3. Задача формулируется так: Нейросеть! Научись из искажённой фотки получать исходную. Научилась? А теперь представь, что лицо рандомного порноактера на самом деле - искаженное лицо звезды и восстанови его.

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

Eshu Marabo

Теги