CV Time


Kanal geosi va tili: Rossiya, Ruscha


Канал о компьютерном зрении от ml-специалистов Яндекса: разбор актуальных статей, горячие обсуждения и личный опыт из первых рук. Присоединяйтесь!
Вопросы и предложения > @yandex_ml_brand

Связанные каналы

Kanal geosi va tili
Rossiya, Ruscha
Statistika
Postlar filtri


Sparse Forcing: Native Trainable Sparse Attention for Real-time Autoregressive Diffusion Video Generation 

Сегодня разбираем работу, в которой предложили sparse attention для авторегрессионной генерации видео.

В целом идея sparse attention в видео не новая. В предыдущих работах, таких как  Sparse VideoGen и Sparse VideoGen2, разреженный паттерн задавали заранее или подбирали динамически, но в основном уже на инференсе. Из-за этого возникал мисматч — обучалась модель с обычным аттеншном, а при генерации получала другую схему доступа к контексту.

В Sparse Forcing предлагается end-to-end-подход, в котором sparse attention становится частью обучения. Кроме того, генерация видео происходит именно авторегрессионно, а не bidirectional, как было в прошлых статьях.

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

Тензор видеолатентов разбивают на небольшие пространственно-временные блоки. Дальше для каждого query-блока динамически выбирают фиксированное число блоков, на которые ему полезнее всего смотреть.

Память при этом делится на две части:

🔴persistent memory хранит не всю историю, а ограниченный набор блоков (sink-блоки + динамически отобранное подмножество, Top-C), доступна всем query и аттендится каждым из них. Именно за счёт того, что история не хранится целиком, достигается снижение пикового KV-кэша;

🔴local memory работает как sliding window и может отличаться для разных query.

Чтобы не считать полный аттеншн только ради выбора нужных блоков, каждый блок сначала сжимают в один вектор простым усреднением его токенов. По этим представлениям считают грубый attention score. Его используют двумя способами:

1) внутри локального окна для каждого query-блока выбирают top-k релевантных блоков и точный аттеншн считают только по ним;

2) агрегированный score по истории решает, какие блоки удержать в persistent memory (Top-C) при вытеснении из локального окна. При этом сами persistent-блоки не фильтруются через top-k — их плотно аттендят все query.

То есть сначала делают дешёвый поблочный скоринг, а потом считают точный аттеншн по выбранному подмножеству. Сам sparse-паттерн меняется динамически и отдельно для каждого query, но число выбранных блоков остаётся фиксированным. Похоже sparse attention устроен в DeepSeek, где тоже есть отдельный скоринг на более компактных представлениях, который определяет, к каким блокам обращаться.

Для такого подхода нужны специальные кернелы. Авторы заявляют ускорение относительно FlashAttention-2 и показывают, что оно зависит от размера локального окна и отношения выбранных блоков к общему контексту, доли persistent-памяти (N_P/N_L) и длины блока. Динамический отбор блоков должен быть особенно полезен для длинной авторегрессионной генерации, где история и KV-кэш постоянно растут.

Но здесь возникает главный вопрос к работе. Кернелы не опубликованы, кода на момент написания поста тоже нет. В экспериментах sparse attention сравнивают в основном с FlashAttention-2, хотя всё запускали на H100 и могли бы проверить FlashAttention-3. Поэтому оценить реальный спидап сложно.

С видеомоделями ситуация похожая. Авторы сравниваются с CausVid, Self Forcing, SkyReels-V2 и MAGI-1 и говорят о сниженной  задержке и меньшем количестве артефактов. Но самых близких sparse-бейзлайнов в сравнении нет — от них авторы открещиваются говоря, что паттерн одновременно обучаемый, динамический и авторегрессионный.

В итоге модель сама учится работать с ограниченным набором блоков, поэтому качество должно проседать меньше. Динамический выбор контекста тоже кажется полезнее фиксированной маски.

Но насколько большой практический выигрыш даёт именно этот метод, по приведённым экспериментам понять трудно — из-за слабых бейзлайнов и отсутствия кода.

Разбор подготовил Федор Великонивцев
CV Time

716 0 14 1 34

DiffusionNFT: Online Diffusion Reinforcement with Forward Process [2/2]

Завершаем разбор статьи об RL для диффузионок от NVIDIA. В первой части рассказали, что предложили авторы. Переходим к самому интересному — результатам.

Что крутого в решении:

🔴Независимость от солвера — тренировка полностью отделена от семплирования: можно использовать любой black-box-солвер, не нужно хранить траектории.
🔴Неявное «впекание» CFG — направление ∆ (по сути CFG-подобный гайденс) встраивается прямо в модель через репараметризацию, без отдельной гайденс-модели и guided-семплирования.
🔴Likelihood-free — метод не использует приближение правдоподобия (в отличие от DPO-style-методов с ELBO и неравенством Йенсена, или дискретизации обратного процесса), а значит не вносит систематическое смещение в оценку.

Если упростить до алгоритма обучения:

1) Семплируем роллауты без CFG — прогоняем текущую v_old по промптам, группами (group rollouts, как в GRPO).

2) Для каждого члена группы считаем reward и нормализуем его внутри группы — получаем аналог advantage.

3) Из набранных групп формируется пул данных, по которому оптимизируется введённый выше objective мини-батчами — обновляется только v_θ.

4) После прохода по всему набору групп делается EMA-like апдейт v_old ← v_θ .

Отдельно замечу: в самой статье об этом ни слова, но в опубликованном коде NFT дополнительно используется KL-регуляризация к исходной модели — то есть на практике это не просто голый flow matching objective на implicit positive/negative policy, а ещё с якорем на исходные веса.


На SD3.5-Medium предложенный метод сходится заметно быстрее, чем Flow-GRPO — в head-to-head-сравнениях авторы заявляют до 25× по эффективности. Например, на GenEval DiffusionNFT доходит с 0,24 до 0,98 всего за 1 тысячу шагов, тогда как Flow-GRPO выходит лишь на 0,95 за 5k+ шагов и дополнительно требует CFG на инференсе. При этом сама тренировка у DiffusionNFT полностью CFG-free, а значит легче: не нужно гонять условную и безусловную ветку, не нужно хранить полные траектории семплирования.

Подводя итог, метод действительно впечатляет. Относительно Flow-GRPO он буквально не имеет недостатков, при этом помимо RL мы попутно получаем и «впекание» гайденса, а значит, на последующей стадии общей дистилляции на одну головную боль становится меньше.

Кажется, что в будущем такой подход к RL диффузионных моделей может стать новой общепринятой практикой. Уже сейчас ссылки на DiffusionNFT можно найти в MeanFlow NFT от Tencent, где NFT успешно распространяют на MeanFlow-формулировку, а также в Mage-Flow — новой диффузионной генеративке Microsoft, где метод применили на стадии пост-трейнинга вместо GRPO.

Разбор подготовил Валерий Старцев
CV Time


DiffusionNFT: Online Diffusion Reinforcement with Forward Process [1/2]

Сегодня разберём свежую статью из мира RL для диффузионок — Diffusion NFT от NVIDIA, представленную на ICLR 2026.

В сообществе доминируют два подхода к RL-дообучению диффузионных моделей: офлайн-обучение на предпочтениях (DPO-style) и онлайн-GRPO — де-факто стандарт в text-to-image-моделях продакшен-уровня.

У обоих есть проблемы. У DPO — неустойчивый objective, офлайновость и необходимость собирать большие датасеты с человеческой разметкой. У GRPO — неудобность: нужно хранить траектории всех генераций в группе и жёстко привязываться к определённому виду семплера.

Авторы из NVIDIA предложили метод, который решает проблемы GRPO, при этом сходится быстрее и позволяет «вшить» CFG прямо в результирующую модель.

Идея — делать RL не на обратном процессе (как в GRPO), а на прямом. Так родился DiffusionNFT (Diffusion Negative-aware FineTuning). Вместо policy gradient метод напрямую оптимизирует форвард-процесс через flow matching objective. Смысл в том, чтобы задать контрастное «направление улучшения» между двумя неявными политиками, обученными на позитивных и негативных семплах (по реворду), и двигаться в сторону позитивной политики, не трогая сам процесс семплирования.

Плюсы такой формулировки:
🔴работает с любыми солверами, а не только с SDE первого порядка;
🔴не нужно хранить целые траектории семплирования — только чистые картинки;
🔴минимальные изменения в существующем коде обучения.

Технически это устроено так: есть претрейн policy π_old и датасет промптов. На каждой итерации семплим K картинок по промпту и оцениваем каждую скалярным reward r ∈ [0,1] — это «вероятность оптимальности» картинки. Каждая картинка с вероятностью r попадает в «позитивный» датасет D+, иначе — в «негативный» D−. При бесконечном числе семплов D+ соответствует implicit policy π+ (условная на успех), D− — implicit policy π− (условная на неуспех). Авторы показывают, что всегда верно π+ ≻ π_old ≻ π−.

Наивный вариант — Rejection FineTuning (RFT): тренировать модель только на D+. Работает, но не использует негативные данные, и чистое обучение на позитивах приводит к коллапсу.
Ключевая идея — ввести «направление улучшения» ∆ между π_old и целевой policy, по аналогии с гайденсом (как в CFG):

v* = v_old + (1/β)·∆
где, β — сила гайденса.

Теорема авторов показывает, что ∆ можно эквивалентно выразить через любую пару {v_old, v+, v−}:

∆ = (1−α)·(v_old − v−) = α·(v+ − v_old)

где α ∈ [0,1] — скаляр, зависящий от реворд-статистики. То есть направление к «хорошей» политике можно получить и через контраст с «плохой» политикой — они пропорциональны друг другу.

Главный трюк. Вместо обучения двух отдельных моделей v+_θ и v−_θ, авторы параметризуют их через одну и ту же сеть vθ:

v+_θ = (1−β)·v_old + β·vθ — implicit positive policy
v−_θ = (1+β)·v_old − β·vθ — implicit negative policy

И обучают на единый лосс:

L(θ) = E[ r·‖v+_θ(x_t,c,t) − v‖² + (1−r)·‖v−_θ(x_t,c,t) − v‖² ]

На позитивных семплах (вес r) модель обучается через ветку implicit positive policy; на негативных (вес 1−r) — через implicit negative policy, но обе ветки завязаны на одну и ту же сеть vθ. При достаточном количестве данных и капасити оптимум этого лосса даёт нужное направление улучшения:

vθ* = v_old + (2/β)·∆

По сути это обычный supervised диффузионный лосс с двумя ветками для позитивных и негативных примеров — но при этом даёт полноценный RL-эффект.

Во второй части разберём, почему это круто и какие результаты получились.

Разбор подготовил Валерий Старцев
CV Time


Курс по Visual GenAI от Yandex Research и ШАД

Авторы CV Time не только пишут обзоры статей о компьютерном зрении, но и создают обучающие курсы.

Сегодня делимся курсом ШАДа «Генеративные модели в компьютерном зрении», который ведёт Дмитрий Баранчук, руководитель группы GenAI в Yandex Research, вместе с праймовой командой исследователей в этой области.

Будет полезно тем, у кого есть базовые знания по генеративкам и желание разобраться глубже:

• в теории диффузионных моделей, эффективных методах их обучения и семплирования;
• в новых гибридных моделях на основе диффузии для генерации изображений, видео и 3D.

У курса есть открытый GitHub-репозиторий, где можно найти слайды, записи лекций и семинаров, а также домашние задания.

CV Time


Qwen-Image-Agent: Bridging the Context Gap in Real-World Image Generation

Сегодня разбираем статью о Qwen-Image-Agent — не столько техническую, сколько идеологическую. Авторы предлагают добавить перед генеративной моделью агентский пайплайн, который собирает недостающий контекст.

Главной проблемой называют Context Gap — разрыв между тем, что пользователь написал, и тем, что модели нужно для качественной генерации. Дело в том, что промпт юзера может быть неполным: не хватает деталей, референсов или контекста предыдущего диалога. Кроме того, он обычно не попадает в распределение, на котором училась модель.

Например, пользователь просит нарисовать скорборд финала NBA 2026 с логотипами команд и итоговым счётом. Но генеративная модель может не знать, кто играл, какой был счёт и как выглядят логотипы. Если отправить запрос напрямую, она, скорее всего, что-нибудь нагаллюцинирует.

Qwen-Image-Agent сначала определяет, какой информации не хватает, и формулирует вопросы. Затем они направляются в нужный механизм:

🔴Reasoning — логика, здравый смысл и визуальный ризонинг;
🔴Search — веб-поиск и поиск изображений;
🔴Memory — история диалога и прошлые генерации;
🔴Feedback — проверка результата через VLM-as-a-Judge.

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

Дальше генерируется изображение, а VLM-as-a-Judge проверяет его по чек-листу. Если всё выполнено, картинка возвращается пользователю. Если нет, система смотрит оставшийся Context Gap, уточняет промпт и запускает новую итерацию.

В пайплайне задействованы две модели. Мультимодальная — отвечает за планирование, ризонинг, поиск и оценку результата, а генеративная — за синтез изображения.

Дополнительного обучения нет, вся система работает zero-shot на системных промптах. Именно в системном промпте задаются правила, когда использовать Reasoning, а когда Search.

Есть момент, что граница между Reasoning и Search довольно размыта. Общие и стабильные знания можно брать из весов модели, а точные, визуальные или динамические данные лучше искать. (Например, модель может примерно знать логотип команды, но для точного воспроизведения надёжнее найти референс.)

Отдельный уровень планирования нужен для multi-image- и multi-turn-генерации. Например, при создании презентации несколько слайдов должны сохранять единый стиль. В одном из примеров система сначала генерирует титульный слайд, а затем использует его как стилевой референс для остальных. При этом из памяти извлекается только релевантный контекст, иначе он быстро раздуется.

Важная часть статьи — Image Agent Bench, бенчмарк для end-to-end-оценки агентских систем генерации. Проверяет четыре способности: Planning, Reasoning, Search и Memory. Для каждого кейса есть свой чек-лист, всего в них около 1800 пунктов.

Для оценки используют Pass Rate, Checklist Accuracy и интегральный Image Agent Score. Срезы взвешиваются как 0,3 / 0,3 / 0,3 / 0,1 — памяти дают меньший вес, потому что она используется только в multi-turn-задачах.

В работе привели абляцию, по которой агентский пайплайн получает около 45 баллов против 17 у базовой Qwen-Image без агента. Замена как генеративной, так и ризонящей модели на более слабую результат снизила, но агентские версии всё равно остаются лучше прямой генерации.

Отключение Feedback Loop приводит к самому маленькому падению качества. Фидбек при этом очень дорогой, так как нужен дополнительный вызов VLM-джаджа, а при ошибке требуется повторная генерация. Возможно, планирование, поиск и ризонинг уже закрывают большую часть Context Gap, поэтому дополнительный выигрыш от фидбека невелик.

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

Разбор подготовил Василий Прядченко
CV Time


High-Fidelity Two-Step Image Generation via Teacher-Aligned End-to-End Distillation

Сегодня разбираем статью о Z-Image Turbo++. Основная идея — повторное применение DMD к уже задистилелной модели. Так авторы дистиллируют 8-шаговый Z-Image Turbo в 2-шаговый генератор. Достигается это с помощью трёх приёмов:

1) Distribution-aligned adversarial training. В качестве «настоящих» семплов для дискриминатора GAN используют не реальные фотографии, а изображения, сгенерированные 8-шаговым teacher'ом. Так семплы тяжелее различить дискриминатору. По наблюдениям авторов, подмена реальных изображений сгенерированными стабилизирует обучение, а итоговая модель даёт меньше артефактов. Возможно, использование дополнительных техник для усложнения задачи дискриминатора, например R1-регуляризации, стабилизировало обучение с реальными данными.

2) Step-decoupled weights. Шагам 1 и 2 дают по собственной полной копии весов (обе инициализируются из teacher) вместо одной общей модели. Два шага решают очень разные подзадачи (шум → грубое изображение vs грубое изображение → чистое изображение). Поэтому одной общей модели не хватает ёмкости на оба шага. Использование отдельных LoRA-адаптеров для каждого шага работает хуже, чем тюнинг всех весов — например, для отрисовки текста.

3) End-to-end-обучение c отдельным лоссом для каждого шага. Оба шага обучаются вместе как единый пайплайн (шум → модель шага 1 → промежуточный результат → модель шага 2 → финальное изображение), так что градиенты от качества финального изображения текут обратно и в шаг 1, а не только в шаг 2. Важно, что при этом сохраняется явный лосс на собственном промежуточном выходе шага 1 (той же формы, что и лосс шага 2). Если его убрать, промежуточный результат первого шага коллапсирует в бессмысленное представление — и модель на последнем шаге исправляет это представление вместо того, чтобы просто добавить деталей.

Разбор подготовил Александр Целоусов
CV Time


Что нового в архитектуре Alice AI ART 2.0

В Алисе AI и Шедевруме теперь работает Alice AI ART 2.0 — это большой шаг к созданию unified-модели, которая одинаково хорошо умеет генерировать и редактировать картинки. Команда генеративных моделей в компьютерном зрении рассказала на Хабре об экспериментах на пути к решению — удачных и не очень. В этом разборе сосредоточимся на архитектурной части.

Несколько вводных

В мультимодальном ассистенте Алиса AI есть два базовых сценария: T2I и I2I. До релиза они жили как два разных стека — каждый со своими моделями, данными и метриками. И сейчас мы сделали большой шаг их объединению в модели.

В Alice AI ART 1.0 был классический для T2I диффузионный свёрточный генератор с текстовым энкодером на базе LLM. А редактирование работало на своей базовой модели и своём пайплайне инференса. Это приносило много сложностей в разработке и продуктизации.

Хотелось свести две модели в одну и при этом поднять качество каждой.

Unified-претрейн

Главный герой решения — общий претрейн на данных обоих типов («текст → картинка» и «картинка + инструкция → картинка»). Была гипотеза, что общий визуальный и текстовый контекст перетекает между задачами и улучшает качество. Например, концепты, выученные на T2I, становятся доступны в I2I без дополнительного сбора данных. И это действительно подтвердилось.

Что поменялось в архитектуре

🔴Заменили бэкбон со свёрточной модели на MMDiT‑трансформер с single‑stream‑архитектурой. Теперь текст и входная картинка представляются как токены в одной последовательности, и обрабатывать оба сценария проще.
🔴Использовали общий аттеншн для текстовых и визуальных токенов вместо двух раздельных.
🔴Добавили U‑RoPE — позиционное кодирование, которое поддерживает разные разрешения и конкатенацию «картинка + текст».
🔴Увеличили размер модели для совместной задачи T2I + I2I;
🔴Заменили текстовый энкодер с LLM на VLM, обученный на паре «текст + картинка»). Это улучшило понимание связи текста и изображения.

Результаты

В обеих задачах модель стала заметно лучше прошлой версии и по нашим замерам сейчас занимает второе место после Gemini 3.1 Flash.

Ещё один показатель — это реакция пользователей. Число скачиваний результатов генерации и редактирования выросло на 37 %, а запросов на генерацию с персонажем стало больше на 23 %.

Больше подробностей найдёте в хабростатье.

CV Time


Три идеи для обучения text-to-image с ICML 2026

В Сеуле идёт ICML 2026, а мы продолжаем делиться работами на тему компьютерного зрения. Кстати, доля работ из области computer vision в этом году — почти 8%. Вторая по популярности тематика после LLM.

Ambient Dataloops: Generative Models for Dataset Refinement

Авторы рассматривают специфическую для text-to-image-моделей проблему, когда данных для конкретного домена немного, и семплы в них могут быть низкого качества. Например, хотим учиться генерировать советских космонавтов, но фотографий с ними очень мало, а те, что есть, часто в низком разрешении и с шумами.

В работе предложили итеративную процедуру обучения и рефайнмента данных, на которых оно проводится. Важно, что в работе считается, что метрика качества данных (асессорская разметка, эстетический скор, VLM-as-a-judge) уже задана, и мы заранее можем подсчитать, какие семплы хотим рефайнить. В таком случае можно:

🔴сделать одну или две эпохи обучения,
🔴пройтись по плохим данным, частично зашумить-расшумить их для рефайнмента,
🔴пройтись по всему набору данных ещё раз или два.

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

Think-Then-Generate: Reasoning-Aware Text-to-Image Diffusion with LLM Encoders

За последнее время вышло много работ вокруг переписывания входных промптов для text-to-image- и editing-моделей. Те, которые показывали максимальное качество без циклического переписывания в формате inference-time scaling, в основном использовали для репромптинга внешние проприетарные модели вроде GPT или Gemini из-за более высокого базового качества. Использование текстовых энкодеров самих генеративных моделей в таком сетапе оказалось не очень полезным.

В этой работе предлагают сделать end-to-end-дообучение модели вместе с текстовым энкодером для буста качества репромптинга. Для этого авторы:

🔴для каждого исходного промпта генерят ризонинг-цепочку и финальный репромпт текстовым энкодером;
🔴по каждому репромпту делают несколько генераций с разными сидами;
🔴для каждой генерации вычисляют значения ревордов несколькими реворд-моделями;
🔴усредняют реворды по сидам генерации, чтобы получить GRPO.
🔴делают бекпроп через всю цепочку генерации, включая текстовый энкодер.

Такая схема невозможна с использованием внешней модели репромптинга — и интересно видеть, что авторы получили хороший буст качества. По их словам, инференс в таком сетапе всё ещё может быть не слишком дорогим, потому что можно настроить модель на генерацию небольших цепочек (порядка 200 токенов).

Но важно помнить, что в таком обучении выбор информативных ревордов ещё важнее. В неудачном случае скатиться в коллапс может не только генератор, но и текстовая модель.

MIRO: Multi-Reward cOnditioned pretraining improves T21 quality and efficiency

Авторы переизобрели технику из DALL-E 2, когда вместе с текстовым условием на вход дополнительно подаются значения реворд-моделей.

Справедливости ради, техрепорт DALL-E 2 полноценной статьёй не был, и предложенный там механизм ни с чем проаблейчен. В этой работе авторы показывают, что описанный там механизм предпочтительнее RL-методов из-за более высокой стабильности процесса обучения.

Глубоким придумыванием самих ревордов авторы тоже не занимались. «Просто нашли семь самых залайканных реворд-моделей для T2I на Hugging Face и просчитали их», — прокомментировал автор.

Интересное увидел Сергей Кастрюлин

#YaICML2026

CV Time


Concept Removal for Frontier Image Generative Models

Есть такая задача — разучивать модель генерировать нежелательные концепты: объекты и отношения между ними, стили и прочее. Нужно это для white-box-сетапов — случаев, когда модель необходимо дать пользователю не через API, а как набор весов.

Авторы статьи предлагают использовать transcoder-блок, который конвертирует латент нежелательного концепта в null и дальше подаёт в боттлнек и декодер генератора. Задача — обучить этот transcoder так, чтобы на инференсе он какие-то концепты кодировал, а какие-то — игнорировал.

Мы пробовали более простой архитектурно, но более требовательный к качеству данных подход. В нём:

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

Оказалось, что авторы работы тоже много экспериментировали с этим методом и даже написали о нём отдельную статью. По их словам, он сложнее для качественной реализации, чем описанный в этой работе. А ещё — склонен негативно влиять на общую релевантность (что мы тоже замечали).

Разбор подготовил Сергей Кастрюлин

#YaICML2026

CV Time


GLM-Image: Auto-regressive for Dense-knowledge and High-fidelity Image Generation

Продолжаем разбирать интересные авторегрессионные модели text-to-image. Недавно рассказывали о BitDance, а сегодня на очереди GLM-Image. В блогпосте технических деталей почти нет, зато есть код в Diffusers, так что архитектуру можно восстановить довольно подробно.

Идея в следующем. Большая LLM каузально генерирует последовательность семантических визуальных токенов, а затем отдельный DiT восстанавливает по ним изображение высокого качества. Генерация и редактирование картинок напрямую LLM — мысль не новая (вспомним хотя бы Janus), но GLM-Image отличается несколькими интересными design choice и заметно превосходит предыдущие авторегрессионные модели по качеству.

Архитектура состоит из двух частей: авторегрессионного GLM-4-9B и диффузионного декодера на 7B параметров.

LLM генерирует изображение поэтапно. Сначала строится сетка 8х8 токенов — грубая композиция сцены. Она остаётся в KV-cache, и модель продолжает генерацию уже для 16х16, а затем и 32х32 токенов. Получается обычная авторегрессионная генерация в raster-порядке, но с постепенным увеличением разрешения.

Дальше семантические токены поступают в single-stream DiT, где поканально конкатятся с латентом шума. Примерно за 50 шагов диффузии модель восстанавливает финальное изображение. Любопытно, что текстовые эмбеддинги в DiT вообще не используются, поскольку считается, что вся семантика уже содержится в токенах, сгенерированных LLM. Исключение — текст в кавычках. Его дополнительно кодируют через ByT5 и подают как отдельное условие, чтобы модель лучше рисовала надписи.

Эдитинг устроен похоже. Исходное изображение кодируют в те же семантические токены и вместе с текстом отправляют в LLM. Параллельно картинка проходит через VAE encoder, после чего его признаки объединяются с семантическими фичами и поступают в DiT. В итоге LLM отвечает только за семантику, а восстановление структуры и мелких деталей остаётся за диффузионным декодером.

Самая интересная часть работы — токенизатор. Авторы выбирают между обычным VQ-VAE и semantic-VQ. Первый лучше оптимизирует реконструкцию, второй специально обучается так, чтобы токены содержали семантическую информацию. При одинаковом размере кодбука авторегрессионной модели заметно проще предсказывать именно semantic-VQ-токены, поэтому выбор падает на них. Кроме того, с заделом на будущее такой токенизатор открывает путь к единому представлению для мультимодальных моделей.

Про обучение известно немного. Авторы почти полностью ссылаются на X-Omni. Берут SigLIP2-g, добавляют vector-квантизацию, выравнивают представления с помощью небольшой Qwen2.5-1.5B и получают кодбук всего на 16 тысяч токенов с адаптером в пространство LLM.

Сам авторегрессионный бэкбон — GLM-4-9B-0414. Текстовые эмбеддинги замораживают, добавляют эмбеддинги визуальных токенов и заменяют LM-head новой головой, предсказывающей элементы кодбука. По сути, LLM просто учится продолжать последовательность, где после текста идут токены изображения. Судя по X-Omni, DiT отдельно обучают реконструкции по семантическим токенам, а затем обе модели шлифуют с помощью GRPO.

На бенчмарках GLM-Image находится в нижнем сегменте открытых SOTA-диффузионных моделей, но среди авторегрессионных подходов это большой шаг вперёд. Главная идея работы — использовать LLM как генератор семантических токенов, а восстановление деталей оставить диффузионному декодеру. Такая схема позволяет использовать знания LLM из текстового претрейна, естественно работать с interleaved-контекстом и получать качество, уже близкое к современным диффузионным моделям.

Разбор подготовил Валерий Старцев
CV Time


DeepEyesV2: Toward Agentic Multimodal Model

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

Сегодня разбираем DeepEyesV2 — открытый бейзлайн мультимодального агентного ризонера. Авторы собирают его на основе опенсорсных данных в стадиях ColdStart и RL, и показывают рост по многим бенчмаркам. Бонусом — делятся данными неудачных подходов и проводят интересные ablation studies.

RL без Cold Start

В предыдущей DeepEyesV1 авторы через RL обучали модель использовать специализированные инструменты — функции кропа картинок и зума. В V2 попробовали тот же подход на сложных инструментах (Python и картиночном поиске) — и получили негативный результат.

Оказалось, что даже если до RL модель (в данном случае Qwen-2.5VL-7B) выполняла вызовы, после — разучивалась это делать (!). Причина в форматных ошибках: вызовы сложных инструментов требуют точного синтаксиса, в отсутствие которого модель получала штрафы от реворда форматирования. А при добавлении реворда на вызов, она обучалась хакать его — генерировать бессмысленные (но гарантированно корректные) вызовы Python, вроде:

# There is no need to write code

Авторы пришли к выводу, что для сложных инструментов необходимо сначала показать модели примеры правильных вызовов во время Cold Start.

Сбор данных и обучение

Авторы постарались выжать из опенсорсных данных сложный и разнообразный датасет. Собрав наборы вопросов, картинок и ответов, они выфильтровывают примеры, которые Qwen-2.5.VL-7B уже может решить без ошибок. На оставшихся примерах в качестве ground-truth собирают траектории фронтирных моделей. Для определения сложности семплов используют pass@k как с инструментами, так и без них, руководствуясь следующей логикой:

🔴если модель без инструментов решает задачу — задача не нужна в обучении;
🔴если модель с инструментами решает задачу редко — задача отправляется на RL-стадию;
🔴если модель с инструментами не решает задачу вовсе, то на RL она получит нулевой advantage, но траекторию решения полезно положить в ColdStart.

В Cold Start авторы используют стандартный NLL, а в RL — DAPO с двумя ревордами: форматным (правильное форматирование CoT и вызова тулов) и на результат.

Результаты

Замеры показывают хороший рост на бенчмарках, особенно на CharXiv Reasoning (вопросы по инфографике), MathVerse (задачки по математике) и HRBench (поиск объектов на картинках с высоким разрешением) — около +5%, выше предыдущей версии и схожих конкурентов. С другой стороны, при сравнении с фронтирными моделями или топовыми китайскими VLM, разрыв остаётся огромным — в десятки процентов, а главный сценарий использования Python — Numerical Analysis (то есть продвинутый калькулятор).

Аблейшены

В статье есть ряд любопытных замеров. Например разбивка обучающих данных по категориям Perception/Reasoning/Search с тренировкой по разным сплитам. Интересный результат — на второй картинке: после RL количество вызовов становится меньше на тех же бенчмарках по сравнению с ColdStart. Это показывает, что на RL модель обучается выбирать инструмент «по сложности», а не детерминировано вызывать Python в любой ситуации.

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

Разбор подготовил Борис Зимка
CV Time


Несколько идей о perception и reasoning в VLM

Глобально качество любой мультимодальной модели строится на трёх вещах: knowledge — визуальных и текстовых знаниях, заложенных в модель; perception — умении хорошо понимать изображение; и reasoning — её способности учитывать эти два пункта и делать по ним выводы. Сегодня делимся подборкой на эту тему от руководителя команды претрейна VLM Данила Кашина.

VLM Perception

Distributional Vision-Language Alignment by Cauchy-Schwarz Divergence

CLIP и другие VLM обучаются через InfoNCE, который максимизирует mutual information (MI). Но высокий MI не гарантирует близость распределений, поэтому текстовые и визуальные эмбеддинги могут оставаться разделёнными. В качестве решения авторы используют разложение “InfoNCE = alignment + uniformity” и добавляют дивергенцию Коши-Шварца для согласования распределений модальностей.

MergeMix: A Unified Augmentation Paradigm for Visual and Multi-Modal Understanding

В работе хотят сделать дешевле стадию DPO, для которой обычно нужна ручная разметка preference-пар. Вместо этого предлагают генерировать пары автоматически с помощью аугментаций. Берут изображение, подмешивают часть другого изображения и используют ответ для второго изображения как негативный, а ответ для исходного — как позитивный. Для этого применяют MergeMix — комбинацию ToMe-attention, mixup и SimPO. ToMe во время форварда объединяет похожие визуальные токены, что позволяет аккуратно переносить части одного изображения в другое. На полученных аугментациях делают обучение.

Learning to See Before Seeing: Demystifying LLM Visual Priors from Language Pre-training

Исследуют, как текстовый претрейн влияет на качество мультимодальных моделей. Во-первых, скейлинг оказывается неоднородным: для одних задач важнее размер модели, для других — объём данных. Во-вторых, для визуально-языкового ризонинга лучше работают сильные ризонинг-источники из текстового претрейна — код, математика и академические тексты. В-третьих, на визуальное восприятие сильно влияет качество визуального энкодера, и что интересно, качество на perception-based-задачах в процессе обучения быстро выходит на плато.

VLM Reasoning

Perception-R1: Advancing Multimodal Reasoning Capabilities of MLLMs via Visual Perception Reward

RL улучшает ответы модели, но почти не влияет на её способность видеть изображение. Поэтому к RLVR добавляют награду за атомарные визуальные факты (atomic visual facts), извлечённые из изображений. Так модель получает сигнал не только за правильный ответ, но и за правильное восприятие картинки.

Unleashing Perception-Time Scaling to Multimodal Reasoning Models

В обычных VLM perception — очень короткая фаза. Модель быстро переводит изображение в текстовое пространство и дальше рассуждает уже текстом. Чтобы это исправить, предлагают сделать perception длиннее и структурированнее за счёт перевода некоторых объектов с изображений в символьный вид. Это даёт дополнительный сигнал для RL, и мультимодальный ризонинг улучшается.

SophiaVL-R1: Reinforcing MLLMs Reasoning with Thinking Reward

Подход к оцениванию качества цепочки рассуждения, где предлагают добавлять reward за него. А чтобы избежать reward hacking, проверяют, различает ли верификатор правильные и неправильные ответы. Если да — используют его сигнал для обучения, если нет — отбрасывают такие примеры.

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic Shuffle

Решают проблему эффективности RL-дообучения. Оставляют самые контрастные пары с большим различием в реворде, а затем делают семплирование с возвращением, где вероятность выбора зависит от разницы между наградами. Чем контрастнее пара, тем чаще она попадает в обучение. За счёт этого растёт энтропия и RL-обучение становится лучше.

Разбор подготовил Данил Кашин
CV Time


Thinking with Visual Primitives

Сегодня в области мультимодальных моделей основной упор делают на языковой ризонинг. А для VLM интересно было бы перенести его в визуальное пространство. В своей статье авторы из DeepSeek предлагают делать это с помощью визуальных примитивов: точек и bounding-боксов.

Архитектура решения довольно стандартная. Берут DeepSeek-V4 (LLaVA) на 284 млрд параметров (13 млрд — активных) и прикручивают к нему трансформер DeepSeek-ViT. Он кодирует картинку размером 756x756 с помощью 324 визуальных токенов.

Стадии обучения следующие:

1. Pretraining

Добавляют дополнительные данные, чтобы модель уже на претрейне хорошо видела визуальные токены. Для этого кроулят Hugging Face и другие источники — и собирают почти 98 тысяч датасетов, которые затем фильтруют по качеству и покрытию разметки. В итоге остаётся около 32 тысяч датасетов. Bounding-боксы и точки задают в текстовом формате, а весь претрейн занимает триллионы мультимодальных токенов.

2. ColdStart Data

Для cold-start собирают отдельные датасеты по разным срезам: counting, spatial reasoning, vqa, maze navigation, path tracing. Counting делится на coarse-grained-задачи («посчитай всех медведей») и fine-grained-задачи («посчитай всех медведей, которые находятся на земле»).

Для fine-grained counting используют GQA и граф-сцены, с помощью которых генерируют более сложные запросы. Также для задач Spatial Reasoning и VQA берут реальные картинки из GQA, но такие данные получаются слишком простыми, поэтому дополнительно добавляют синтетику из CLEVR — датасета с искусственно сгенерированными сценами.
Чтобы избежать галлюцинаций, добавляют негативные семплы. Например, модель просят найти медведей на сцене, где медведей на самом деле нет.

3. Specialized SFT и Specialized RL

На стадии Specialized SFT учат две модели, стартуя с общего претрейна: одну на данных с bounding-боксами, другую — на данных с точками.

После SFT специализированные модели отдельно дообучают через GRPO. Используют три типа ревордов: на формат, качество (проверяют избыточность CoT, консистентность с ответом и прочее) и точность ответа. Для лабиринтов и path tracing добавляют дополнительные проверки, чтобы модель не хакала задачу и не строила неверные траектории. Для RL выбирают примеры, где модель отвечает не идеально, но хотя бы иногда правильно.

4. Unified RFT

Затем специализированными RL-моделями генерируют данные, на которых обучают единую модель. Для этого объединяют данные с bounding-боксами, точками и chain-of-thought.

5. On-Policy Distillation

Получившуюся модель дистиллируют сразу на две специализированные модели-учителя. После модель оценивают на counting, general VQA и других публичных visual reasoning-бенчмарках. Авторы пишут, что по качеству она конкурирует с Gemini 2.5 Flash и часто показывает первое или второе место.

Разбор подготовил Александр Шишеня
CV Time


404 Driver Not Found dan repost
Земной автомобиль, луноход или марсианский ровер — на ICRA 2026 припаркуются все

Позади второй день конференции — продолжаем делиться самым интересным об автономном вождении. Слово Максиму Спорышеву:

Среди докладчиков были те, кто буквально делает космолёты. Они рассказали о локализации для lunar landing, навигации на Марсе и детекции аномалий в космосе — только представьте, какие у них байки про продакшн.

Понравились три постера. Первый — от Waabi AI. Они реализовали 3D-реконструкцию в зоне, ближайшей к исходному треку. Хорошее решение для симуляции перестроения, но не подходящее для сложных разворотов и прокладывания нового маршрута.

Тесты проводят на дистанциях 3, 4 и 5 метров от исходных положений камер: делают feedforward-рендеринг с помощью 3D Gaussian Splatting, добавляют шум и денойзят всё диффузией, которая училась восстанавливать изображения на дистанции 3 метра.

Второй постер — об обучении через имитацию действий других участников дорожного движения. Чтобы собрать тренировочный датасет, авторы берут сцены на nuPlan, выбирают на них одного-двух хороших агентов и трансформируют их движение так, будто всё происходит от лица эго-агента. Плохие данные фильтруют по метрикам комфорта, пройденной дистанции и TTC.

С ростом количества данных эффективность обучения падает: между первыми точками графика заметна большая разница, а ближе к 100 тысячам сцен её почти нет. Для проверки использовали модель PLUTO.

На третьем постере — self-supervised-способ трекинга на лидарных облаках через кластеризации точек и фильтры Калмана. Жаль, что не удалось поймать авторов: они утверждают, что работают на уровне supervised-трекеров.

Отдельно отмечу два доклада, номинированных на звание лучших работ.

Do You Know Where Your Camera Is? View-Invariant Policy Learning with Camera Conditioning

Статья о robotic manipulation, но решаемая в ней проблема актуальна и для автономного транспорта.

Авторы показывают, что качество всех VLA сильно просаживается, если меняется положение камер: в сетапах с рандомным размещением success rate проседает в пару раз.

Решение — подавать положение камер через Plücker ray-maps. То есть задавать луч камеры для каждого пикселя шестью дополнительными числами: дельтами и моментами.

С таким кондишенингом на камеры авторы отыгрывают просадку: success rate становится в пару раз лучше, чем у обычных VLA.

FP3: A 3D Foundation Policy for Robotic Manipulation

Авторы критикуют vision-энкодеры в современных VLA и утверждают, что без трёхмерного представления о мире не обойтись.

Взамен предлагают сетап обучения с Uni3D в качестве энкодера. Он показывает довольно высокие success rates: до 90% на некоторых тасках.

Напоследок авторы показывают профит от масштабирования своего трансформера до 1,3B.


Конференция продлится до 5 июня — ещё вернёмся с новой порцией наблюдений.

#YaICRA26

404 driver not found


В эти дни в Вене проходит международная конференция по робототехнике ICRA 2026. Среди докладов — много работ на стыке робототехники и компьютерного зрения, как, например, в этом посте. Ещё больше разборов читайте в канале @DriverNotFound ⬇️


BitDance: Scaling Autoregressive Generative Models with Binary Tokens [3/3]

Завершаем разбор статьи BitDance об авторегрессионной генерации изображений. В первом посте мы обсудили бинарный VQ-VAE с качеством реконструкций, сопоставимым с непрерывными VAE. Во втором — замену линейной классификационной головы авторегрессионного бэкбона на диффузию, что одновременно снижает рост числа параметров и улучшает качество генерации. Сегодня поговорим об экспериментах.

Авторы исследовали, на что влияет размер кодбука бинарного автоэнкодера — подтвердили его корреляцию с качеством реконструкций и проверили взаимосвязь с качеством генеративной модели. Результат оказался неоднозначным: рост словаря улучшает генерацию только при одновременном увеличении размера трансформера. При этом для крупных моделей выигрыш по FID/IS минимален.

Для text-to-image в качестве базовой авторегрессионной модели авторы выбрали Qwen3-14B. Её дообучили на генерацию изображений с помощью 32-канального бинарного токенизатора с 16-кратным пространственным сжатием и генерацией патчами 4×4 токенов.

Обучение включает привычные стадии: претрейн, CT на высоких разрешениях, SFT и дистилляцию. Интересен размер претрейн-датасета — всего 256 млн изображений, что значительно меньше индустриальных стандартов на миллиарды семплов. Зато на файнтюне объём данных резко возрастает за счёт синтетических изображений, сгенерированных SoTA-моделями. Авторы делают ставку на качество данных и отдельно подчёркивают пользу mixed-resolution обучения уже на этапе претрейна.

Под дистилляцией в BitDance понимается переобучение SFT-модели на параллельную генерацию блоков 8×8 токенов, что ускоряет инференс без заметной потери качества.

На t2i-бенчмарках BitDance занимает лидирующие позиции среди AR-моделей и конкурирует с лучшими диффузионками. Любопытно, что для достижения такого качества потребовалось заметно меньше данных, хотя по сути за SFT происходит дистилляция SeedDream и Z-Image.

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

Качество генерации у BitDance действительно высокое, однако архитектура остаётся гибридной и использует диффузию внутри. Полностью авторегрессионной генерации визуальных токенов здесь нет, а значит, нет и бесшовной интеграции с текстовой модальностью. Из известных решений ближе всего к этой цели пока остаётся модель GLM Image.

Познакомиться с BitDance поближе можно на GitHub авторов.

Разбор подготовил Валерий Старцев
CV Time


ML Underhood dan repost
Как мы научили модель понимать структуру архивных записей

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

Дарья Виноградова, руководитель команды универсального применения компьютерного зрения в Яндексе, и Анна Сидорова, главный разработчик распознавания архивов, рассказали на Хабре, почему универсальные VLM-модели не подошли для этой задачи и как удалось перейти от распознавания текста к извлечению структуры и смысла из документов.

Как было раньше

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

Поиск работал в основном по текстовым совпадениям. Из-за этого вместе с нужными данными в выдачу попадали имена священников, номера записей, служебные пометки и другие нерелевантные части документа. Со временем проблемы стали чаще возникать на уровне структуры документа — из-за разбиения текста на строки и последующей склейки.

Как модель научили понимать структуру документов

В новой версии OCR остаётся отдельным этапом, но сам пайплайн строится уже вокруг структуры документа.

По сути, перед нами стояла KIE-задача (Key Information Extraction) — нужно было по изображению документа извлекать ключевую информацию о людях и их ролях. Но довольно быстро стало понятно, что работать со страницей целиком не получится. Типичный архивный скан имеет размер больше 2500 пикселей по стороне, содержит сразу несколько записей, а суммарно в них может упоминаться до 35 человек. Такой объём информации слишком большой и для модели, и для обучения. Поэтому мы решили сначала находить на странице отдельные записи — о рождении, браке или смерти — а уже потом извлекать информацию о людях из каждой выделенной области.


Для этого используют дообученную VLM‑модель Alice AI. Она получает изображение записи вместе с текстом от OCR и извлекает из документа структуру и связи между людьми. Ключевая метрика — доля людей, которых затем можно корректно найти по ФИО в сервисе. По ней модель достигает качества 90,5% на всех типах архивных записей.

Как усовершенствовали OCR

Параллельно команда перешла от строкового OCR к блочному. Так удалось убрать целый этап сборки строк в блоки, сократить количество моделей в пайплайне и уменьшить объём дополнительного процессинга при обработке сканов.

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

При этом сами блоки оказались очень разными по размеру: модель могла получить как маленький кусок с одним словом, так и огромный фрагмент на много строк. Из-за этого команде пришлось отдельно дорабатывать энкодер и оптимизировать токенизацию — иначе обработка больших блоков становилась слишком дорогой по вычислениям.

После перехода на новый OCR-пайплайн recall распознавания вырос до 93,2% на основной выборке и до 88,1% — на сложной.

Детали реализации и сложные кейсы распознавания вы найдёте в полной версии статьи.

ML Underhood


Делимся интересным рассказом об эволюции Поиска по архивам — от классического OCR-пайплайна к системе, которая умеет извлекать структуру документов и понимать связи между людьми.

В посте кратко рассказываем, как команда проекта решала KIE-задачу, зачем понадобилась VLM-модель поверх OCR и почему пришлось перейти от строкового распознавания к блочному⬇️


BitDance: Scaling Autoregressive Generative Models with Binary Tokens [2/3]

Продолжаем разбирать работу ByteDance на тему авторегрессионной генерации изображений. В первой части рассказали, как авторы пытались увеличить размер кодбука и боролись с «коллапсом» с помощью lookup-free-квантизации.

Однако полечив одно, неизбежно столкнулись с другой проблемой: в авторегрессионных языковых моделях для предсказания очередного токена используют линейную классификационную голову, выходная размерность которой равна размеру словаря токенизатора. Чтобы применить такой способ к генерации картиночного токена, где размер кодбука VQ-VAE равен 2^D, нужно хранить в памяти матрицу размера h x 2^D, где h — размерность скрытого слоя трансформерного бэкбона. Для сколь-нибудь больших D и h порядка 10^3 это будет приводить к OOM.

Можно попробовать предположить независимость каждого из D каналов бинарного токена, как было сделано в Infinity — одной из прошлых работ ByteDance по авторегрессионной генерации. Это снизит рост матрицы головы с экспоненциального до линейного: теперь нам потребуется матрица размера h x 2D. Однако при таком предположении качество картиночной генерации заметно падает.

Именно в этом месте исследователям на помощь приходит диффузия. Для предсказания D-мерного бинарного токена (он же — вершина D-мерного куба) предлагают выучить отображение распределения гауссовского шума в вершины D-мерного куба при условии эмбеддинга z, для которого мы и предсказываем бинарный токен. Дизайн денойзера в статье особо не обсуждается и не проверяется: берут «небольшой» трансформер и обучают его по замшумлённому токену x_t, времени t и эмбеддингу z предсказывать x. Причём диффузионный лосс считают во flow-matching-формате, то есть предсказание сети перепараметризовывается в предсказание скорости. После финального шага диффузии от предсказания берётся знак. По сравнению с диффузией на стандартных VAE-латентах, значения которых никак не ограничены, такая жёсткая схема помогает избежать накопления ошибки, которое происходит как в самой диффузии, так и в итеративном авторегрессионном процессе, а также приводит к более быстрой сходимости обучения.

Наконец, авторы пытаются выжать максимум из предсказания картиночных токенов, переходя от потокенной генерации к параллельной генерации патчей из PxP токенов. Во-первых, это ускоряет процесс: предсказывать диффузией сразу целый патч оказывается эффективнее, чем генерировать токены по одному. Во-вторых, это лучше соответствует локальной структуре изображения. Во время генерации патча эмбеддингов LLM-бэкбон использует bidirectional-маску в аттеншне-механизме, тогда как для текстовых токенов остается каузальная. Это положительно влияет на качество генерации.

Так авторегрессия сохраняется на уровне патчей, а внутри патча используется диффузионная генерация.

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

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

Разбор подготовил Валерий Старцев
CV Time


BitDance: Scaling Autoregressive Generative Models with Binary Tokens [1/3]

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

За последний год ресерчеры из ByteDance подходили к этой задаче с разных сторон. В этот раз они попытались разработать produciton-scale t2i-модель, которая бы продуцировала картинки тем же образом, что и текст, а именно — авторегрессионно. Такой единообразный подход максимально удобен как во время обучения, так и на инференсе. Попробуем разобраться в особенностях модели BitDance и понять, действительно ли предложенная архитектура подходит для мультимодальной генерации.

Сначала в статье перечисляют проблемы AR-подходов в t2i-генерации, и основной называют дизайн картиночного токенизатора. В распространённых в сообществе VQ-VAE типа Cosmos картинки дискретизируются в кодбук на десятки тысяч токенов. Для изображений с их непрерывной структурой этого мало, поэтому реконструкция получается плохая.

Логично попробовать увеличить размер кодбука. Но при стандартном обучении возникает проблема codebook collapse: модель из-за особенностей оптимизационного процесса за время тренировки обучается использовать лишь небольшую часть токенов.

Побороть неприятный оптимизационный эффект помогает приём lookup-free-квантизации, предложенный в MAGVIT-v2. Вместо обучаемого кодбука используют неявный бинарный: каждый «пиксель» непрерывного выхода энкодера VAE просто поканально отображается в свой знак. Таким образом каждая spatial-координата латента может быть закодирована бинарным вектором размера D, где D — число каналов латента, то есть размерность кодбука становится равной 2^D. За счёт увеличения числа каналов D потенциально можно «раздувать» кодбук до огромных размеров и предположительно решить проблему качества реконструкций.

Однако при подсчёте энтропийного лосса на обучении VQ-VAE для элемента х приходится вычислять попарные расстояния с каждым элементом кодбука, что с ростом D делает такое обучение вычислительно невозможным. В решении этой проблемы авторы ссылаются на метод из своей прошлой статьи WeTok. Предлагается разбить каналы полученного латента на К непересекающихся групп, считать кросс-энтропийный лосс в рамках каждой группы независимо и затем суммировать.

В конце концов, этот набор трюков для обучения VQ-VAE позволяет масштабировать размеры кодбука вплоть до 2^256. И это положительно отражается на метриках реконструкций: для некторых вариантов бинарного токенизатора предложенной архитектруы получается добиться качества реконструкций по метрикам, сравнимого с непрерывным SDXL-VAE.

Но тут появляется другая проблема, о которой мы расскажем во второй части разбора.

Разбор подготовил Валерий Старцев
CV Time

20 ta oxirgi post ko‘rsatilgan.