May 22

Обзор Seed1.5-VL — Pretrain

Ребята из ByteDance написали технический репорт для своей недавно вышедшей сетки Seed1.5-VL: https://arxiv.org/pdf/2505.07062

Циферки весьма неплохие, а потому обзору — быть!

Смотрим на графики и не осуждаем

Общее устройство

  • VIT - без хитростей, 532млн параметров, 2D Rope.
  • LLM - MOE with 20b active parameters
  • Адаптер — MLP

Свой ViT

VIT может работать с native resolution, в качестве позиционных эмбедов имеет 2D RoPE. Авторы подчёркивают, что переходить с 1D в 2D эмбеды, интерполяция эмбедов — не самые оптимальные пути к высокому качеству модели, а потому учат свой ViT, который уже может в динамическое разрешение картинок. Обучают в три стадии, данные берут прям из обучающей выборки VLM (приколдесно):

  1. Сначала пытаются свести косинусное расстояние между эмбедингами из ViT ученика (обучаемый ViT) и учителя (EVA02-CLIP-E). Авторы отмечают, что различие в позиционном кодировании (в учителе поз эмбеды другие) не мешает обучению, а сам шаг позволяет очень круто растить качество уже в VLM на Text-rich срезах: графики, документы, распознавание текста.
  2. Затем модель учат на image-text парах, текстовый энкодер берут из EVA02-CLIP-E, siglip loss;
  3. Интересный шаг без особых деталей, в которых хотят алайнить звук и картинки из видео с капшенами для этих самых картинок и звука. Как я понял, делают капшены для аудио-фрейма и картиночного (или нескольких сразу), а потом по классике алайнят через siglip.

Pretrain стадия

Очень много описывают про подготовку данных, совсем чуть-чуть про обучение.

Сбор данных

  • Image-text пары
    • Достаточно классические фильтрации, ака дедупликация, clip score и т.д.
    • Исследовали важность разнообразия визуальных данных в обучающей выборке
      • Разделяют пары на визуальные классы, считают частоты
      • Провели несколько экспериментов, из которой вывод: нужно оверсемплить данные низкочастотных классов, чтобы хорошо работать как на частых, так и на редких классах.
  • OCR-like данные
    • В общей сложности 1B примеров;
    • Сохраняют разнообразие по шрифтам, языкам, написаниям;
    • Намайнили какой-то датасет из кучи документов, откуда поизвлекали текст и его расположение (координаты);
    • Собрали около 200млн синтетических семплов;
    • Применили классические аугментаци блюра, муары и т.д.;
    • Намайнили данных из кучи источников для таблиц, потом их отрендирили — получили около 50млн семплов;
    • Собрали около 100млн синтетических семплов для графиков, где в качестве таргета: предсказать latex или Python-код, который сгенерировал этот графичек;
    • Использовали прошлую свою VLM чтобы нагенерить QA датасет к различным типам данных.
  • Grounding & Counting
    • Использовали относительные координаты, нормировали в диапазон [0, 999]
    • Bounding Box Data — предсказание координат
      • С помощью прошлой VLM пофильтровали датасеты;
      • Собирали данные для таргетов: предсказание координат; предсказание относительного положение; QA, где вопрос содержит координаты.
      • В итоге собрали около 48млн семплов.
    • Point Data — работа с центром объекта
      • С помощью Molmo и CountGD разметили большой датасет картинок из интернета и пофильтровали на качество;
      • Собрали около 170млн инструкций.
    • Counting Data
      • Посемплили из двух предыдущих, поменяли тип таргета. Получили около 8 млн примеров.
  • 3D Spatial understanding
    • Не часто встретишь;
    • Формируют датасеты на сортировку объектов по глубине, распознаванию координат в 3D;
    • В общей сложности около 21 млн семплов собрали.
  • Видео
    • Подробностей в целом мало;
    • Делают interleaved caption / QA — в хронологическом порядке описывают картинки, либо конструируют диалог;
    • Используют сихнронизированные капшены к фреймам.
  • Science, Technology, Engineering, and Mathematics (STEM)
    • Собрали около 3млн grouding семплов для кучи научных дисциплин;
    • Сгенерировали около 10млн структурированных разнообразных таблиц;
    • Сгенерировали около 4.5млн картинок химических структурных диаграмм;
    • Сгенерировали около 1.5млн картинок на координатной плоскости, в которых также были нарисованы графики;
    • Написали людьми 100,000 капшенов для образовательных картинок;
    • Нагенерили 1млн QA пар для областей наук;
    • Нагенерили 1млн капшенов картинок из различных областей наук;
    • Нагенерили 100к+ капшенов для геометрических рисунков.
    • Не понятно сколько собрали, но обработали около 100млн задач за всю школьную программу, 10млн+ задач для вузов и профессионалов, и несколько миллионов картинок про вопросы по английскому языку. Я так понял, что задачи все были на китайском.
  • Graphical User Interface
    • Собрали датасетик, который нацелен на следующие таргеты:
      • Описание элемента интерфейса;
      • Описание скриншота;
      • Обнаружение малозаметных изменений при смене кадров.
      • Выдавать координаты элемента по его текстовому описанию;
      • Многошаговые траектории для построения цепочек навигации по интерфейсам.

Обучение

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

Обучают в 3 стадии:

  1. Учат только адаптер. Чтобы обучение дальше лучше сходилось
    1. Говорят, если размораживать еше ViT — получается хуже;
  2. Учат всё. Основная стадия, используют почти все данные, которые могут поместиться в 32к токенов.
  3. Учат всё. Учат работать с длинным контекстом, видео, 3D.

Говорят, что претрейн им стоит 1.3млн GPU часов в терминах H800.