Визуально-языковая модель (VLM)

Материал из MachineLearning.

Версия от 11:09, 18 июля 2026; Osman Osmanov (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск
Статья написана с использованием LLM Gemini 3.1 Pro и DeepSeek и проверена участником Osman Osmanov 14:09, 18 июля 2026 (MSD)

Промпт приводится полностью в Обсуждение:Визуально-языковая модель (VLM)


Содержание

Визуально-языковая модель (VLM)

Визуально-языковые модели (англ. Vision-Language Models, VLM) — класс мультимодальных архитектур глубокого обучения, осуществляющих совместную обработку визуальной и текстовой информации в едином непрерывном пространстве представлений. В отличие от классических систем компьютерного зрения (классификация, детекция, сегментация), которые отображают входное изображение в дискретные метки, VLM порождают ответ в свободной текстовой форме, опираясь на семантическое понимание сцены. По отношению к чистым текстовым LLM VLM приобретают способность интерпретировать визуальный мир: рассуждать об объектах и их отношениях, читать текст на изображениях, следовать визуальным инструкциям[1]. Объединение модальностей приводит к эмерджентным свойствам – способностям, возникающим без явного обучения – zero-shot классификации (классификации без примеров) по текстовому описанию, визуальному диалогу и переносу абстрактных языковых знаний на физическую реальность[1].

Математически VLM реализует условное распределение над текстовой последовательностью y = (y_1, \dots, y_T) при заданном изображении \mathbf{X} \in \mathbb{R}^{H \times W \times C} и (возможно) текстовом запросе q:

p_\theta(y \mid \mathbf{X}, q) = \prod_{t=1}^{T} p_\theta(y_t \mid \mathbf{X}, q, y_{<t})

Здесь параметры \theta включают визуальный энкодер, проекционный слой и декодер-LLM[1].

Признаки как эмбеддинги

В парадигме NLP базовой единицей является векторное представление токена: t_i отображается в \mathbf{e}_i \in \mathbb{R}^{d_{\text{text}}}. компьютерного зрения предлагает аналогичный взгляд: изображение — не матрица пикселей, а источник высокоуровневых визуальных токенов. Свёрточный энкодер или Vision Transformer выделяет из \mathbf{X} множество векторов \{\mathbf{v}_1, \dots, \mathbf{v}_N\}, \mathbf{v}_i \in \mathbb{R}^{d_{\text{vision}}}, кодирующих локальные или глобальные семантические признаки[1]. Эти векторы играют роль визуальных слов, которые затем проецируются в единое скрытое пространство с текстовыми эмбеддингами.

Процесс выравнивания (alignment) стремится сделать так, чтобы релевантные визуальные и текстовые векторы лежали близко по выбранной метрике (обычно косинусное расстояние). Контрастивная функция потерь, например InfoNCE, максимизирует сходство между соответствующими парами и минимизирует для несвязанных, порождая совместное скрытое пространство[1].

Фундаментальным ограничением остаётся Modality Gap (модальный разрыв) — явление, при котором распределения эмбеддингов изображений и текстов даже после идеального контрастивного обучения не перемешиваются, а образуют два кластера, разделённых пустой областью. Геометрически это означает существование гиперплоскости, почти безошибочно разделяющей модальности[1]. Данный зазор мешает тонким кросс-модальным рассуждениям: сдвиг распределений затрудняет интерполяцию и порождает артефакты при генерации по визуальному контексту.

Архитектура Трансформера

Трансформер служит универсальным оператором над последовательностями векторов. В основе лежит механизм многоголового Self-Attention, вычисляемый для каждого элемента как:

\text{Attention}(\mathbf{Q}, \mathbf{K}, \mathbf{V}) = \text{softmax}\!\left(\frac{\mathbf{Q}\mathbf{K}^\top}{\sqrt{d_k}}\right)\mathbf{V}

где запросы \mathbf{Q}, ключи \mathbf{K} и значения \mathbf{V} получены линейными проекциями входных векторов[1]. Архитектура не делает предположений о природе токенов; если визуальные патчи спроецированы в ту же размерность, что и текстовые эмбеддинги, единый Трансформер способен вычислять внимание между любыми парами элементов.

Для слияния модальностей используют две основные схемы:

Для дальнейшего масштабирования VLM без пропорционального роста вычислительных затрат на инференс активно применяется архитектура Mixture of Experts (MoE); ярким примером служит MoE-LLaVA, где разреженная активация экспертов позволяет наращивать ёмкость при сохранении скорости обработки токенов[1].

Составляющие современной VLM

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

\mathbf{Z} = f_{\text{proj}}(f_{\text{vis}}(\mathbf{X})), \quad \mathbf{y} = \text{LLM}\big([\mathbf{Z}; \text{embed}(q)]\big)

Визуальный токенизатор

В роли энкодера чаще всего выступает Vision Transformer[1]. Изображение \mathbf{X} \in \mathbb{R}^{H \times W \times C} разбивается на патчи фиксированного размера P \times P. Каждый патч выпрямляется (dense) в вектор \mathbf{x}_p \in \mathbb{R}^{P^2 C}, после чего линейный слой отображает его в эмбеддинг размерности d_{\text{vision}}:

\mathbf{v}_i = \mathbf{W}_{\text{patch}} \mathbf{x}_p^{(i)} + \mathbf{b}_{\text{patch}}, \quad \mathbf{W}_{\text{patch}} \in \mathbb{R}^{d_{\text{vision}} \times P^2 C}

К полученной последовательности добавляется обучаемый [CLS]-токен и позиционные кодировки \mathbf{p}_i. Далее стандартный трансформерный энкодер без причинной маски вырабатывает контекстуализированные признаки.

Однако ViT порождает серьёзную инженерную проблему — проклятие длины контекста. Даже скромное изображение 224×224 при патче 14×14 даёт 256 токенов, а при более высоком разрешении — 576, 1024 и более. Это быстро исчерпывает лимит контекстного окна LLM. Для задач чтения текста (OCR) на графиках, документах и схемах современные модели (Qwen-VL, InternVL) применяют технику динамического разбиения: изображение высокого разрешения нарезается на несколько суб-изображений, каждое из которых независимо токенизируется, а их визуальные токены конкатенируются в единый префикс с дополнительными позиционными метками, позволяя сохранить мелкие детали без экспоненциального роста размера контекста[1].

Проекционные адаптеры

Размерность визуальных токенов d_{\text{vision}} обычно не совпадает с размерностью эмбеддингов LLM d_{\text{LLM}}. Проекционный слой выполняет отображение \mathbb{R}^{N \times d_{\text{vision}}} \to \mathbb{R}^{N' \times d_{\text{LLM}}}. Используются два основных подхода:

  • Простые адаптеры — линейный слой или неглубокая MLP:
\mathbf{Z} = \sigma(\mathbf{V} \mathbf{W}_1 + \mathbf{b}_1) \mathbf{W}_2 + \mathbf{b}_2

Такое решение легковесно, но не уменьшает числа токенов. Оно применяется в LLaVA, где визуальные эмбеддинги после линейной проекции прямо подаются в LLM[1].

  • Ресамплеры признаков — обучаемые компактные модули, сжимающие большое число визуальных токенов в фиксированный набор визуальных слов. Ключевая идея Perceiver Resampler и Q-Former (BLIP-2) заключается во введении K обучаемых query-векторов \mathbf{Q} \in \mathbb{R}^{K \times d_{\text{LLM}}}, которые через перекрёстное внимание агрегируют информацию из визуальных токенов \mathbf{V}:
\mathbf{Z} = \text{CrossAttn}(\mathbf{Q}, \mathbf{V}, \mathbf{V})

Выходной тензор \mathbf{Z} \in \mathbb{R}^{K \times d_{\text{LLM}}} содержит сжатое представление, пригодное для подачи в LLM без переполнения контекстного окна[1].

Мультимодальный декодер

После проекции визуальные токены \mathbf{Z} ничем не отличаются от эмбеддингов текста. Они подаются в авторегрессионную LLM в качестве префикса последовательности. Модель обучается предсказывать следующий токен стандартной кросс-энтропийной потерей:

\mathcal{L}_{\text{LM}} = -\sum_{t} \log p_\theta(y_t \mid \mathbf{Z}, \text{embed}(q), y_{<t})

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

Таксономия подходов по методу слияния

По способу объединения модальностей выделяют три основных семейства:

  • Раннее слияние (Early Fusion / Single-stream) — визуальные и текстовые эмбеддинги конкатенируются и совместно обрабатываются одним трансформерным энкодером. Этот подход лежит в основе моделей типа VisualBERT, UNITER.
  • Позднее слияние (Late Fusion / Dual-stream) — классическая контрастивная парадигма, воплощённая в CLIP. Две независимые башни (визуальный энкодер и текстовый энкодер) порождают векторы \mathbf{u}_i и \mathbf{v}_j для каждой модальности. Сходство измеряется косинусной мерой, и модель оптимизирует симметричную InfoNCE-потерю:
\mathcal{L}_{\text{CLIP}} = -\frac{1}{2B} \sum_{i=1}^B \left[ \log \frac{e^{\mathbf{u}_i^\top \mathbf{v}_i / \tau}}{\sum_{j=1}^B e^{\mathbf{u}_i^\top \mathbf{v}_j / \tau}} + \log \frac{e^{\mathbf{u}_i^\top \mathbf{v}_i / \tau}}{\sum_{j=1}^B e^{\mathbf{u}_j^\top \mathbf{v}_i / \tau}} \right]

где \tau — обучаемый температурный параметр, а B — размер мини-батча. Полученное совместное пространство позволяет строить zero-shot классификаторы (классификаторы без примеров): изображению присваивается метка, текстовая формулировка которой имеет максимальное косинусное сходство[1].

  • Глубокое переплетение (Deep Fusion / Interleaved) — на каждом слое LLM встраиваются блоки кросс-внимания, через которые текст взаимодействует с визуальными признаками. Модель Flamingo добавляет к замороженному LM обучаемые Perceiver-подобные модули, которые перекрёстно внимают к выходу замороженного визуального энкодера. Это позволяет сохранить сильные языковые навыки и гибко обогащать их визуальной информацией без радикального увеличения числа обучаемых параметров[1].
Тип слияния Обучаемые модули Преимущества Недостатки Примеры
Раннее (Early) Весь трансформер (энкодер) Глубокое взаимодействие модальностей с первых слоёв Высокая вычислительная сложность, трудно масштабировать до современных LLM VisualBERT, UNITER
Позднее (Late) Раздельные энкодеры, опциональный проекционный слой Эффективность для поиска и zero-shot, модульность Ограниченное взаимодействие (только глобальные представления) CLIP, BLIP-1
Глубокое (Deep) Кросс-аттеншн адаптеры при замороженных энкодерах и LLM Перенос знаний мощных LLM без их модификации, гибкость Инференс требует хранения визуальных признаков для каждого слоя, повышенный расход памяти Flamingo, BLIP-2

Обучение

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

  1. Pre-training (Alignment) — на больших массивах пар (изображение, краткое описание) обучается только проекционный слой. Визуальный энкодер (часто CLIP-подобный) и LLM остаются полностью замороженными. Таким образом, адаптер учится переводить визуальные признаки в понятный языковой модели формат[1].
  2. Instruction Tuning — модель дообучается на наборах мультимодальных диалогов и инструкций (например, LLaVA-Instruct). На этом этапе LLM (или её адаптеры LoRA) размораживается, а визуальный энкодер, как правило, остаётся замороженным. Модель осваивает сложные формы рассуждений, уточняющие вопросы и многоходовые диалоги о содержании изображений[1].

Использование LoRA (низкоранговой адаптации) позволяет эффективно дообучать LLM с миллиардами параметров, сохраняя исходные веса и добавляя к ним обучаемые низкоранговые матрицы.

Ограничения

Несмотря на впечатляющие результаты, VLM подвержены ряду фундаментальных ограничений:

  • Визуальные галлюцинации — модель описывает объекты или сцены, отсутствующие на изображении. Причина кроется в доминировании языкового априорного распределения, т.е. LLM достраивает правдоподобный контекст, игнорируя слабые визуальные сигналы[1].
  • Пространственная слепота — затруднения с определением взаимного расположения объектов. VLM путают лево/право, не могут точно указать координаты, поскольку эмбеддинги патчей сохраняют лишь грубую пространственную информацию, а позиционные кодировки трансформера не спроектированы для метрических геометрических рассуждений.
  • Слабый счёт — количество объектов на изображении часто недооценивается или завышается, так как операция подсчёта требует агрегации информации по многим патчам и точной сегментации, чему стандартные ViT обучены плохо.
  • Мультимодальный Jailbreak — добавление в изображение состязательного шума, незаметного для глаза, может полностью обойти защитные барьеры LLM. Крошечные возмущения в пиксельном пространстве способны так исказить проекцию в эмбеддинги, что модель игнорирует текстовые ограничения и выдаёт запрещённый контент. Это обнажает уязвимость VLM к атакам на уровне сенсорного входа[1].

Визуально-языковая модель действий

Естественным развитием концепции VLM становится добавление модальности действия — Vision-Language-Action модели (VLA). Если текст токенизируется с помощью BPE-токенизатора, а изображение — с помощью патчевого энкодера, то действия робота также можно представить в виде дискретных токенов.

Непрерывные величины (углы сочленений, координаты схвата, скорость) квантуются в бины. Каждому бину ставится в соответствие уникальный токен из того же словаря, что и текст. Модель RT-2 использует именно такой подход: VLM на базе PaLI-X или PaLM-E, предобученная на веб-данных, дообучается на наборах демонстраций робота. Входом служат изображение с камеры и текстовая инструкция, а выходом — последовательность токенов действий. Авторегрессионный декодер порождает строку вида "1, 128, 34, 12", которая интерпретируется управляющим контуром[1].

Обучение сводится к уже знакомой кросс-энтропийной потере над токенами действий:

\mathcal{L}_{\text{VLA}} = -\sum_{t} \log p_\theta(a_t \mid \mathbf{Z}, \text{embed}(q), a_{<t})

Так семантические знания о мире, накопленные из интернета, напрямую переносятся в моторное управление. VLA, таким образом, замыкает эволюцию: текст -> визуальное восприятие -> физическое действие[1].

Методология валидации и бенчмарки

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

  • MMBench — многозадачный бенчмарк, проверяющий рассуждения, знание фактов и распознавание атрибутов[1].
  • MME (Multimodal Model Evaluation) — набор из 14 подзадач, включая OCR, счёт, пространственные отношения[1].
  • MMMU (Massive Multi-discipline Multimodal Understanding) — экзаменационные вопросы из точных и естественных наук, требующие чтения графиков, диаграмм и формул[1].
  • SEED-Bench — 19 тыс. вопросов с выбором ответа, покрывающих 12 измерений понимания[1].

Эти инструменты позволяют отслеживать прогресс VLM и выявлять их слабые стороны.


Ссылки

Личные инструменты