Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Multi-Modal Learning

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

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

Люди без усилий объединяют сигналы разных органов чувств. При эффекте Мак-Гурка, описанном в 1976 году, видео с губами, произносящими «га», и наложенным звуком «ба» воспринимается как «да». В 2011 году Джикуань Нгиам и его коллеги из Стэнфорда применили эту идею к глубокому обучению: они обучали сети одновременно на аудио и видео губ, показав, что признаки, полученные из обеих модальностей, улучшают чтение по губам по сравнению с использованием только видео.

Основные задачи#

В обзоре 2019 года Тадас Балтрушайтис, Чайтанья Ахуя и Луи-Филипп Моренси сгруппировали задачи этой области в пять категорий:

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

Стратегии слияния#

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

Добавление модальности может также снизить точность. В 2020 году Вэйяо Ван, Ду Тран и Мэтт Файзли показали, что сеть классификации видео, совместно обученная на аудио, кадрах и движении, часто работает хуже лучшей модели с одной модальностью, поскольку она переобучается, а разные модальности обучаются с разной скоростью. Предложенный ими метод Gradient-Blending корректирует это, изменяя веса функции потерь для каждой модальности.

Контрастивное выравнивание#

Контрастивное обучение выравнивает модальности без ручной разметки. В 2021 году OpenAI CLIP обучила кодировщик изображений и кодировщик текста на 400 миллионах пар «изображение — подпись», чтобы каждое вложение изображения было наиболее похоже на свою подпись среди всех подписей в пакете. В результате точность исходной ResNet-50 на ImageNet была достигнута в режиме zero-shot, без использования 1,28 миллиона размеченных обучающих изображений ImageNet. Функция потерь — это перекрёстная энтропия по матрице сходства, применяемая в обоих направлениях:

import torch
import torch.nn.functional as F

torch.manual_seed(0)

# Unit-length embeddings for 4 images and 4 captions; row i of each is a matching pair
image_emb = F.normalize(torch.randn(4, 64), dim=-1)
text_emb = F.normalize(image_emb + 0.5 * torch.randn(4, 64), dim=-1)


def contrastive_loss(images, texts, temperature=0.07):
    """CLIP-style symmetric cross-entropy over the image-text similarity matrix."""
    logits = images @ texts.T / temperature
    targets = torch.arange(len(images))  # the matching caption sits on the diagonal
    return (F.cross_entropy(logits, targets) + F.cross_entropy(logits.T, targets)) / 2


print(f"Aligned pairs:    {contrastive_loss(image_emb, text_emb):.3f}")
print(f"Misaligned pairs: {contrastive_loss(image_emb, text_emb.roll(1, dims=0)):.3f}")

Если каждая подпись соответствует своему изображению, функция потерь равна 0,577; если сдвинуть подписи на одну строку, так что каждое изображение окажется сопоставлено с неправильной подписью, значение вырастет до 2,756. Обучение снижает эту потерю на пакетах из множества пар (CLIP использовала 32 768), приближая каждое изображение к собственной подписи и удаляя от остальных подписей пакета; CLIP обучается и параметру температуры, начальное значение которого — 0,07. ALIGN от Google (2021) масштабировала тот же подход до 1,8 миллиарда зашумлённых пар «изображение — альтернативный текст», SigLIP (2023) заменила softmax на независимую сигмоиду для каждой пары, а ImageBind компании Meta (2023) выровняла шесть модальностей, включая аудио, глубину, тепловые данные и данные датчиков движения, сопоставляя каждую из них с изображениями.

Детекторы с открытым словарём обучаются тому же выравниванию текста и областей изображения. Рецепт Ultralytics для обучения YOLOE-26 с нуля — детектора YOLO26 с открытым словарём на основе YOLOE Университета Цинхуа — сочетает метки детекции Objects365 с данными заземления GQA и Flickr30k, всего около 1,4 миллиона примеров. Обучающий кодировщик один раз кодирует каждое имя класса и словосочетание с помощью замороженного текстового кодировщика MobileCLIP2 от Apple и кэширует эмбеддинги, поэтому обучение обновляет только детектор, включая небольшой остаточный слой, который уточняет кэшированные текстовые векторы перед их сопоставлением с признаками областей.

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

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

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

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения