
Пару лет назад я показал, как мы можем использовать ИИ для переноса стилей, такой как CycleGAN, для преобразования графики одной игры, чтобы она выглядела похожей на другую, на примере Fortnite в PUBG. Этот проект до сих пор остается одним из самых просматриваемых, и спустя два года он все еще привлекает новых зрителей. Это означает, что это направление исследований в области ИИ вызывает большой интерес, но, к сожалению, мы пока не видим больших подвижек по превращению таких прототипов в реальность. Хотя и были представлены версии этого ИИ, работающиее на более высоком разрешении, они нуждались в использованию нескольких графических процессоров для обучения, что является непрактичным для использования в реальном мире.
К счастью, по прошествии большого количества времени у нас наконец-то есть статья, демонстрирующая значительный прогресс в попытке уменьшить вычислительную мощность, необходимую для обучения этого ИИ. Статья от Калифорнийского университета в Беркли и Adobe называется «Contrastive Learning (контрастное обучение) для непарного преобразования изображений» (CUT).

Используя тот же набор данных и то же самое аппаратное обеспечение с тем же графическим процессором, которое я использовал в прошлый раз, эта новая модель позволила мне перейти с разрешения 256p до 400p для синтезированных изображений. Более того, мне понадобилось чуть меньше чем за 2 часа на обучение модели, по сравнению с 8+ часами в прошлый раз.
CycleGAN и Patchwise Contrastive Framework.
Наблюдается существенная разница в количестве требуемых вычислительных мощностей по сравнению с CycleGAN. Итак, чем отличается этот подход от CycleGAN? Теперь он использует фреймворк Patchwise Contrastive Learning, который требует значительно меньше графической памяти и вычислений по сравнению с CycleGAN.

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

А здесь мы используем Contrastive Loss (контрастную потерю). Во-первых, вместо того, чтобы работать со всеми изображениями сразу, этот метод фокусируется на извлечении фрагментов из входных и выходных изображений. Задача нашей модели здесь — определить, какой из нескольких входных ключей является положительным совпадением с нашим проверочным фрагментом, полученным из синтезированного изображения. Это называется Contrastive Learning, и это позволяет модели обучаться лучшему представлению признаков с помощью самоконтроля.
Сравнение с CycleGAN
Этот новый подход является причиной того, что синтезированные с помощью этого метода изображения имеют более четкие границы разделения объектов и сохраняет больше информации из исходного изображения после преобразования.


И помните, все это еще и имеет меньшие требования к графическому процессору, так что это просто фантастика! Чтобы узнать больше о результатах этой статьи на других наборах данных, посетите страницу этого проекта.
Полезные ссылки
-
Полный текст статьи (PDF)
Спасибо за внимание. Если вам понравилась эта статья, вы можете следить за другими моими работами на Medium, GitHub или подписаться на мой YouTube-канал.
Перевод материала подготовлен в преддверии старта курса «Компьютерное зрение» от OTUS. Если вы заинтересованы в обучении по данному направлению, рекомендуем посмотреть запись дня открытых дверей, в рамках которого мы подробно рассказываем о процессе обучения, а также приглашаем всех желающих записаться на бесплатный демо-урок по теме: «Компьютерное зрение в спортивной аналитике».
—
ссылка на оригинал статьи https://habr.com/ru/company/otus/blog/551672/
Добавить комментарий