CV Time – Telegram
CV Time
2.74K subscribers
178 photos
6 videos
91 links
Канал о компьютерном зрении от ml-специалистов Яндекса: разбор актуальных статей, горячие обсуждения и личный опыт из первых рук. Присоединяйтесь!

Вопросы и предложения > @yandex_ml_brand
Download Telegram
Minimalist Vision with Freeform Pixels

На ECCV-24 была секция, посвящённая низкоуровневому устройству систем компьютерного зрения. По настоящему low-level решение предложили в статье Minimalist Vision with Freeform Pixels, которая получила награду Best Paper Award. Авторы создали прототип полностью автономной по электропитанию камеры.

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

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

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

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

Разбор подготовила Алиса Родионова
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥229👍8🤯3
Movie Gen: A Cast of Media Foundation Models

Кажется, что после ECCV 2024 только ленивый не написал о Movie Gen. Тем не менее далеко не все авторы ссылаются на оригинальный технический отчёт и описывают подробности.

Movie Gen — большая модель на 30 миллиардов параметров, которую исследователи из Meta* разработали для генерации видео. Она может создавать клипы длительностью до 16 секунд с частотой 16 кадров в секунду и разрешением 1080p. Новой модели можно доверить:

— cтандартную генерацию видео по текстовому запросу;
— персонализированную генерацию по референсному изображению;
— редактирование видео по текстовому запросу.

Movie Gen сочетает в себе несколько интересных архитектурных решений. Создатели модели:

— позаимствовали базовый трансформер у языковой модели LLaMA от той же Meta, но дополнили его блоками, специфичными для диффузионных генеративных моделей;
— обучили собственную эффективную модель, которая преобразует высокоразмерное пиксельно-временное пространство в куда более компактное латентное;
— добавили video-super-resolution-модель, которая повышает разрешение исходной генерации с 768p до 1080p;
— скомбинировали несколько моделей для кодирования текстовой информации с разными свойствами;
— использовали отдельную модель, чтобы генерировать синтетические промпты специально для видео.

На иллюстрации к посту — процедура обучения Movie Gen. Сначала модель предобучали на большом количестве изображений с низким разрешением, потом — тренировали на клипах низкого (256p) и высокого (768p) разрешения. А после всего — файнтюнили на небольшом датасете из вручную отобранных и размеченных данных высокого качества.

Для того, чтобы оценить качество модели, команда собрала примерно тысячу текстовых запросов из разных областей и сравнила качество их обработки с текущей SOTA (все closed-source) — Runway Gen3, Kling 1.5 и Sora от OpenAI. Согласно user preference study, модель от Meta превосходит конкурентов (или не уступает им) в большинстве аспектов: например, в следовании текстовому запросу, естественности и плавности движений.

В задачах персонализации и редактирования модель тоже показывает хорошее качество. Самый существенный недостаток Movie Gen — большой размер: для работы с ней потребуются значительные вычислительные ресурсы.

P. S. А ещё команда из Meta обучила модель для генерации звука и музыки — Movie Gen Audio, которая тоже представляет собой большой (на 13 миллиардов параметров) трансформер. Но это уже совсем другая история несколько иная архитектура.

Разбор подготовил Денис Кузнеделев

CV Time
___
Meta признана экстремистской организацией, а Facebook и Instagram запрещены на территории РФ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥126
Как LLaMA 3.1 работает с изображениями

Сегодня расскажем, как LLaMA 3.1 работает с изображениями. Как устроена архитектура модели, на чём её обучали и какие результаты она показывает на разных бенчмарках.

В основе энкодера изображений в Llama 3 выступает модель ViT-H/14 с 630 миллионами параметров, обученная на наборе из 2,5 миллиарда пар изображений и текстов. Картинку, полученную на вход, делят на патчи размером 16X16, прогоняют через линейное преобразование и трансформерные слои.

На выходе получается картиночное представление из 2 308 токенов, что весьма много. Эта последовательность с помощью кросс-аттеншен блоков подается в LLM. Это интересно, потому что, как правило, в мультимодальных LLM (visual language models, VLM) картиночные токены подают прямо в промпт, добавляя к текстовым. Это сделано для того, чтобы заморозить веса LLM и обучать только голубые блоки на схеме.

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

Что касается видео, то тут меняется количество кадров на входе: на претрейне их 16, а на файнтюне — 64. Далее их сводят к фиксированной размерности и точно так же, как с изображениями, добавляют через кросс-аттеншн в LLM.

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

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

Существует весьма необычная стадия пост-претрейна — с применением небольшого датасета на 500 миллионов сэмплов. 150 миллионов из них — это изображения вроде скриншотов с HTML-кодами и таблицами.

На файнтюне инженеры прибегают к ещё одному нестандартному трюку — hot-swap. Они подменяют веса предварительно обученной LLM на веса языковой модели, прошедшей Instruction Tuning. На SFT используют академические датасеты, ответы, написанные людьми, и синтетические данные — например, изображения, созданные из текстовых описаний.

Далее создают пары, оцененные асессорами по семибалльной шкале. Кроме того, есть процедура Rejection sampling для итеративного выбора высококачественных ответов, сгенерированных моделью. Потом авторы статьи обучают reward-модель и делают DPO, как и для текстовой модели.

Получившаяся модель на 405 миллиардов параметров показывает 80,2 пункта в бенчмарке VQAv2 и 84,8 пункта в TextVQA. При этом она уступает Claude 3.5 в DocVQA, ChartQA и AI2 Diagram.

Разбор подготовил Роман Исаченко

CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥138
Впечатления от ECCV 2024

Мы попросили инженеров Яндекса подвести личные итоги конференции ECCV и рассказать, чем она запомнилась. О трендах в индустрии, интересных статьях и многом другом — в наших карточках.

А остальные посты по следам конференции вы можете найти в канале по тегу #YaECCV.

CV Time
🔥18👍119
DART: Denoising Autoregressive Transformer for Scalable Text-to-Image Generation, часть 1

Превратить авторегрессионную визуальную генерацию в диффузионную можно, если соблюдать три ограничения:

1. Фиксировать процесс зашумления.
2. Работать в парадигме, где модель зависит только от одного предыдущего состояния, а не от целой последовательности: тогда процесс становится Марковским.
3. Взвешивать loss на коэффициенты, которые зависят от timestamp и наложенного шума.

Авторы сегодняшнего препринта предлагают ослабить второе условие: добавить зависимость от предыдущих зашумлённых изображений. Такую модель они называют DART — Denoising Autoregressive Transformer или диффузионная авторегрессионная модель.

Саму последовательность при этом можно генерировать по-разному:

1. На каждом шаге генерировать частично расшумлëнное изображение — такой метод называется DART.
2. На каждой стадии расшумления авторегрессионно генерировать изображение по патчам — DART-AR (ДАРТ с авторегрессией).
3. Генерировать изображения, последовательно увеличивая их размер — Matryoshka-DART.
4. Кроме изображения, генерировать ещë и его текстовое описание — Kaleydo-DART.

В качестве трансформера для генерации на основе текстового промпта используется предобученная модель Flan-T5-XL, а для генерации на основе заданного класса — дополнительные слои Adaptive LayerNorm.

Разбор подготовил Александр Шишеня
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍64
DART: Denoising Autoregressive Transformer for Scalable Text-to-Image Generation, часть 2

На иллюстрации к посту изображено устройство самой наивной имплементации такой модели — DART. У неё стандартный диффузионный loss, а её единственный существенный недостаток — слишком малый объём входных данных, 4000 токенов. Это накладывает ограничение на скорость обучения модели.

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

Ещё одна модификация — DART-FM, с Flow Matching. Схема усложняется: поверх основного алгоритма DART добавляют несколько прогонов простой нейросети. Эта легковесная «голова» используется на стадии инференса: для итерирования между основными шагами расшумления, чтобы повысить качество генераций.

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

Разбор подготовил Александр Шишеня
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👀76👍3
Pyramidal Flow Matching for Efficient Video Generative Modeling

Чтобы сгенерировать видео, свежие Sora-like-модели (как на первой картинке) создают каждый кадр из чистого шума, а потом расшумляют его. Но сделать видео так гораздо сложнее, чем картинку:

1. Нужно смоделировать не одно изображение, а целую последовательность. То есть, если один кадр размером хотя бы 500 пикселей, а видео должно длиться 5 секунд с частотой 30 FPS, то нейросеть нарисует 150 кадров по 500 пикселей — потребуются значительные вычислительные мощности.
2. Sora-like-модели не авторегрессионные, а значит, не могут создать видео длиннее тех, на которых обучались. Это можно обойти трюками, например, генерируя кадры «внахлëст».

Авторы сегодняшнего препринта предлагают поступиться качеством изображений, чтобы повысить эффективность и обучения, и инференса: на низком пространственном разрешении и так много шума, а значит, можно генерировать кадры видео менее чёткими, чем обычные картинки. А ещё их модель by design использует фреймы из прошлого и поэтому в теории может предсказывать без склеек консистентные видео любой длины.

Как и все модные ребята, эти предлагают обучать модель на flow-matching-лоссе: предсказывать векторное поле пикселей. То есть, пытаться угадать, куда они сдвинутся и как изменят кадр с течением времени.

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

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

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

Авторы не приводят сравнения с диффузионным лоссом. Как думаете, сошлось бы?

Разбор подготовил Александр Маркович
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥166👍6
Тематическая подборка статей: галлюцинации VLM

Сегодня пробуем новый формат — делимся целой подборкой интересных статей по теме. Забирайте в избранное и читайте полные материалы в свободное время! А в комментариях пишите, полезен ли такой формат и хотите ли вы, чтобы наши авторы разобрали одну или несколько статей подробно.

Magnifier Prompt: Tackling Multimodal Hallucination via Extremely Simple Instructions
Авторы получают на бенчмарке POPE буст, просто добавляя в промпт явную просьбу больше внимания обращать на изображение, а в случае конфликта знаний и содержимого изображения приоритизировать именно изображение.

MLLM can see? Dynamic Correction Decoding for Hallucination Mitigation
Для борьбы с галлюцинациями авторы предлагают костыльный фикс: определять, когда в средних слоях VLM уверена в ответе, и пропагейтить эти знания до финальных слоев, где они могут затираться знаниями LLM. Таким образом они исправляют ситуацию, когда по мере прохождения в более глубокие слои language bias начинает перевешивать токены изображения.

The Curse of Multi-Modalities: Evaluating Hallucinations of Large Multimodal Models across Language, Visual, and Audio
Авторы винят в галлюцинациях "Over reliance on unimodal priors" и" Spurious inter-modality correlations", а на основе своих находок делают бенчмарк для диагностики VLM.

Trust but Verify: Programmatic VLM Evaluation in the Wild
Бенчмарк со сложным пайплайном для оценки галлюцинирования: берем картинки с подробными кэпшнами, строим по ним граф сцены, подаем в LLM, которая возвращает вопросы-ответы и программы верификации для них. Авторы утверждают, что такой подход позволяет разложить модель на helpfulness и trustfulness + делают анализ по этому разбиению. Спойлер: большинство моделей оказываются хороши только по одному из этих аспектов.

Mitigating Hallucinations in Large Vision-Language Models via Summary-Guided Decoding
Авторы считают, что по мере написания кэпшна VLM все больше начинает зависеть от language prior’а, а не от изображения; при этом есть трейдофф между числом галлюцинаций и качеством текста. Для борьбы с проблемой предлагают укорачивать сгенерированный текст, а также используют дополнительную LLM.

Подборку подготовил
Артём Конев
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18👍95
Switti: Designing Scale-Wise Transformers for Text-to-Image Synthesis
Часть 1, предыстория и предшественники

Диффузионные модели уверенно занимают пьедестал почета в задаче генерации изображений по тексту. Но существует альтернативная парадигма — авторегрессионные модели, которые генерируют изображения последовательно патч за патчем (маленькими кусочками, скажем, 16x16 пикселей). На практике они работают медленнее и уступают в качестве диффузионкам, поэтому долгое время считались неконкурентоспособными.

Весной исследователи из ByteDance в работе VAR предложили альтернативную авторегрессионную парадигму для генерации изображений: из одного пикселя 1х1 генерируем картинку 2х2, потом 4х4 и так далее, причем каждое следующее разрешение предсказывается за один проход модели. В пиксельном пространстве работать все еще дорого, поэтому переходим в латентное пространство VAE, где с помощью метода Residual Quantization (RQ), представляем латентную переменную в виде пирамидки: нижние уровни соответствуют общей семантике, а верхние — мелким деталям и текстурам.

На нижних уровнях мало патчей, поэтому прогон модели дешевле. Стоимость возрастает с переходом на следующие уровни. Во время генерации модель смотрит на прошлые разрешения с помощью causal трансформера и генерирует текущее. Итоговую картинку получают, суммируя все предсказанные разрешения. Авторы добились качества, сопоставимого с современными диффузионками на ImageNet, при этом будучи значительно их быстрее.

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

Обзор подготовил Дмитрий Баранчук
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
👍118🔥6
Switti: Designing Scale-Wise Transformers for Text-to-Image Synthesis
Часть 2, методы

Приступив к созданию Switti (Scale-wise transformer for text-to-image), мы взяли за основу архитектуру STAR и начали постепенно её улучшать. Оригинальная модель оказалась нестабильной при обучении, и, мотивируясь работами по диффузионным трансформерам, мы добавили в модель дополнительные нормализационные слои, что стабилизировало обучение и улучшило итоговое качество.

Затем мы обратили внимание, что модель на входе на текущем уровне уже получает информацию о всех предыдущих уровнях по построению и при этом дополнительно смотрит на них с помощью attention-слоев, что показалось нам лишним и неэффективным. Убрав авторегрессию на прошлые разрешения, удалось ускорить пайплайн генерации для 512х512 изображений на 11%, уменьшить потребление памяти и немного улучшить качество генерации.

Также мы заметили, что модель слабо опирается на текстовые описания на самых последних уровнях генерации. Это натолкнуло на мысль, что можно не использовать технику classifier-free-guidance (CFG) на уровнях высокого разрешения. Напомним, что CFG играет важную для повышения качества генерации и соответствия запросу в text-to-image моделях, но при этом требует дополнительный прогон модели на каждом шаге. Поэтому отключение CFG на последних уровнях значительно ускоряет генерацию. Более того, мы заметили, что помимо скорости, модель также продуцирует меньше артефактов при генерации мелких деталей и позволяет использовать более высокие значения CFG без ущерба качеству.

Обзор подготовил Дмитрий Баранчук
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍86
Switti: Designing Scale-Wise Transformers for Text-to-Image Synthesis
Часть 3, эксперименты и результаты

Мы обучили 2.5B модель на внутреннем датасете из 100М картинок. В качестве бейзлайнов взяли сравнимые по размеру SD3-Medium, Lumina-Next, Stable Diffusion XL и её дистиллированные версии: SDXL-Turbo, DMD2; а также авторегрессионные модели: Emu3, Lumina-mGPT, LlamaGen и HART.

Для оценки качества использовали стандартные метрики: FID, CLIP, Pickscore, Image Reward, — а также бенчмарк GenEval и пользовательские предпочтения на корзинке из 128 запросов (Parti Prompts). Юзеры оценивали релевантность, эстетичность, комплексность и дефектность изображений.

Switti значительно превзошла существующие авторегрессионные подходы, как по метрикам, так и по пользовательским предпочтениям. С диффузионками добились паритета по качеству, но при этом Switti генерирует в 7 раз быстрее оригинальной SDXL-модели и в 2 раза быстрее её ускоренных версий.

Отметим, что это пока лишь шаг в развитии новой генеративной парадигмы и ещё есть, куда расти, чтобы дотянуть качество до уровня ведущих генеративных моделей: YaART, Midjourney, FLUX, Recraft и Ideogram-v2. Наша команда уже приступает к дальнейшему развитию Switti. Так что следите за обновлениями!

Обзор подготовил
Дмитрий Баранчук
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥117
Тематическая подборка статей: картиночные модели

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

Архитектура
MoH: Multi-Head Attention as Mixture-of-Head Attention
Авторы переносят Mixture-of-Experts в аттеншн: предлагают относиться к головам как к экспертам и активировать только часть из них. Показывают, что так можно дотюнить обученные модели и что этот подход работает для широкого класса задач. На ViT и Llama3 получили неплохие результаты, но непонятно, можно ли теоретический профит перенести на практику.

Дообучение
Locality Alignment Improves Vision-Language Models
Ресерчеры предлагают использовать схему с маскированием для дообучения CLIP-трансформеров, которое улучшает их качество как VLM-бэкбонов на пространственных задачах.

When Does Perceptual Alignment Benefit Vision Representations?
Исследователи файнтюнят через LoRA бэкбоны на датасете Nights (20 тысяч триплетов с разметкой, где отражено, какое из двух изображений более похоже на первое с т. з. человека) и пишут, что после этого модели извлекают более хорошие фичи для широкого класса задач. Удивляет, что в 20 тысячах триплетов оказалось достаточно информации, чтобы заметно повлиять на качество модели.

Дистилляция
TAS: Distilling Arbitrary Teacher and Student via a Hybrid Assistant
Авторы говорят, что при дистилляции между моделями разных семейств (CNN/MLP/ViT) можно использовать модель-ассистента, состоящую из блоков разного типа. Это позволяет повысить гибкость и расширить потенциал дистилляции знаний в случае, если у модели-учителя и ученика разные архитектуры.

Датасеты
WorldCuisines: A Massive-Scale Benchmark for Multilingual and Multicultural Visual Question Answering on Global Cuisines
Датасет с блюдами разных стран и культур, 6 тысяч изображений. Очень много авторов для такой узкой темы и разнообразная аннотация как бонус.

Подборку подготовил Артём Конев
CV Time
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥145👀4
Роботы — круто

А статьи о робототехнике — ещё круче. Руководитель группы нейросетевых технологий Yandex.Robotics Виктор Юрченко рекомендует семь интересных работ по теме. Все подробности — в карточках.

CV Time
💯17👍10🔥74