YandexART API открыт к тестированию в Yandex Cloud. Нейросеть основана на каскадной диффузии из 3-х моделей GEN64, SR256, SR1024. YandexART отлично справляется с сложными генерациями, но все еще уступает Midjourney.
Yandex Cloud предоставил возможность протестировать YandexART API — нейронную сеть, способную создавать изображения и анимацию. Ее можно опробовать в Foundation Models, где доступны и другие модели от Yandex.
Развитие YandexART
Сначала специалисты YandexART экспериментировали с латентной моделью. Для ее обучения они использовали датасет, созданный на базе запросов в поисковую систему («текст-картинка»). Однако результаты, полученные на основе этих данных, были низкого качества.
В связи с этим команда приняла решение перейти к использованию открытых датасетов, таких как LAION. С течением времени и накоплением опыта специалисты разработали собственный пайплайн для сбора датасета.
После этого были начаты более глубокие эксперименты с каскадной диффузией. Несколько лет тестирования позволили определить, что является действительно качественным датасетом для создания привлекательных изображений. В то же время постоянно проводились работы по оптимизации ресурсов.
«Пользователь задаёт текстом, что он хочет получить. Задача нейросети — из случайного набора пикселей формировать красивое изображение, которое соответствует тому, что просил пользователь».
Сергей Овчаренко, руководитель отдела нейросетевых технологий
В настоящее время в Шедевруме используется YandexART v2. Если учитывать внутреннюю нумерацию, то это уже 7-е поколение модели.
Архитектура YandexART
В Yandex были изучены 2 подхода к созданию архитектуры YandexART: латентная модель и каскадная диффузия. После серии экспериментов, выбор был сделан в пользу каскадной диффузии. В данной нейросети она включает в себя последовательное взаимодействие нескольких моделей:
- На основе промта создается изображение размером 64 × 64 пикселя с помощью модели GEN64, которая следует архитектуре U-Net и использует механизм Cross-Attention для обработки текстового ввода.
- Изображение увеличивается до разрешения 256 × 256 с помощью модели SR256, которая также основана на архитектуре U-Net и использует первую картинку 64 × 64 и промт в качестве условия генерации.
- Изображение увеличивается до размера 1024 × 1024. Здесь используется архитектура Efficient U-Net, которая уже не учитывает текст и имеет меньше параметров в верхних слоях.
Таким образом, в архитектуре YandexART используются 3 модели, каждая из которых выполняет свою роль в каскаде: GEN64 (основная модель с 2,3 млрд параметров), SR256 и SR1024 (модели для увеличения разрешения с 700 млн параметров).
Обучение моделей
Модели GEN64 и SR256 обучались на одном датасете, а SR1024 — на другом, где акцент был сделан на техническое качество.
Дообучение моделей было направлено на усиление определенных характеристик, таких как следование текстовому промту или эстетичность генераций. Улучшение набора данных было достигнуто с помощью ML-моделей и асессоров.
В Yandex используются три модели вознаграждения: «соответствие картинки и текста», «отсутствие дефектов» и «красота». Качество оценивалось с помощью автоматических метрик (FID/CLIP score) и ручной разметки.
Тестирование YandexART
Мы протестировали нейросеть и сравнили полученные результаты с Midjourney.
При первом запросе нейросетям был дан промт: «robot is holding a computer in its hands». Генерация в YandexART менее детализированная, хотя видно, что нейросеть сумела понять, что от нее требуется.
Во втором случае промт звучал так: «programmer writes code on a computer». Тут мы видим ту же самую ситуацию: изображение от Midjourney более детализировано и реалистично, чем от YandexART.
Тестирование YandexART показало, что нейросеть успешно справляется с задачами сложной генерации и понимает промты с дополнительными стилями. Однако все еще уступает по качеству таким системам, как Midjourney. Кроме того, в YandexART отсутствует возможность генерации изображений с заданной ориентацией.
«Я не умею красиво рисовать, хотя мне очень хочется. А с помощью нейросетей эта проблема решается».
Команда продолжает работать над генеративными технологиями, занимаясь созданием нового поколения моделей, которые будут еще более эффективно решать задачи пользователей.