Tuna: Taming Unified Visual Representations for Native Unified Multimodal Models [код обещают тут] Ранее мы много обсуждали мультимодальную генерацию с точки зрения: - Архитектуры : учить ли голову поверх LLM/VLM или делать unified backbone; - Представления данных : дискретное или непрерывное кодирование для картинок и текстов - Визуальных энкодеров : обычно для дискриминативных и генеративных задач используют разные (SigLip/VAE), но, например, Show-o2 ( статья, разбор )
Tuna: Taming Unified Visual Representations for Native Unified Multimodal Models [код обещают тут] Ранее мы много обсуждали мультимодальную генерацию с точки зрения: - Архитектуры : учить ли голову поверх LLM/VLM или делать unified backbone; - Представления данных : дискретное или непрерывное кодирование для картинок и текстов - Визуальных энкодеров : обычно для дискриминативных и генеративных задач используют разные (SigLip/VAE), но, например, Show-o2 ( статья, разбор ) пытается фьюзить их в единую модель Последний пункт также интересен в разрезе работ семейства REPA, авторы которых показывают, что использование дескриминативных по своей природе SSL претренов ускоряет обучение генерации. В этой работе авторы делают мультимодальную генеративку TUNA , обученную поверх унифицированных understanding-generation представлений. Важно отметить, что именно в вопросе получения унифицированных представлений они не первые. Ранее уже выходили VAE дообученные на кодирование семантики, например UniTok и TokLIP . Также были работы про использование дискриминативных энкодеров для генеративного кодирования, например RAE . В этой работе авторы не предлагают новый энкодер-декодер. Их цель в последовательном применении двух картиночных энкодеров так чтобы взять лучшее от каждого. Метод Архитерктура (скрин) больше всего напоминает модель Show-o2 (сравнение в комментах). Тексты кодируются традиционно (токенизация + эмбединг слой), рассмотрим кодирование картинок: - Картинку Х переводим в латентное пространство VAE ( x_1 ) и зашумляем прямым процессом ( x_t ) - Дальше хотим кодировать с помощью SigLip, но у него в начале patch embeding слой 16х16, что слишком сильно понизит нам размерной, заменяем его на 1х1 - Теперь применение такого SigLip' не понизит размерность, применяем - В конце с помощью MLP делаем проекцию в пространство нужной размерности, получаем представление z , которое уже подаем в модель: z = MLP(SigLip′(x_t)) В остальном модель не отличается от других ML
| Type | Tool |
| Section | Images |
| Site language | en |