Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

SigLIP

Ознакомьтесь с SigLIP — методом сигмоидных функций потерь, оптимизированным с точки зрения использования памяти, для моделей «зрение-язык». Узнайте, как он улучшает масштабируемость и обучение вYOLO Ultralytics YOLO .

SigLIP (сокращение от Sigmoid Loss for Language Image Pre-Training) — это высокоэффективный подход к обучению моделей, объединяющих зрительную и языковую информацию. Этот метод, впервые представленный исследователями из Google , коренным образом меняет то, как модели искусственного интеллекта осваивают взаимосвязь между изображениями и соответствующими им текстовыми описаниями. Заменяя традиционные вероятностные функции более простым подходом бинарной классификации, SigLIP позволяет разработчикам обучать масштабные мультимодальные архитектуры со значительно меньшими затратами памяти и большей вычислительной эффективностью.

Понимание архитектуры

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

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

Отличие SigLIP от CLIP

При изучении современных архитектур искусственного интеллекта важно проводить различие между SigLIP и его предшественником, CLIP (Contrastive Language-Image Pre-training).

  • CLIP: Опирается на функцию потерь softmax, которая требует от модели одновременного сравнения изображения со всеми текстовыми описаниями в пакете. Это создает серьезное ограничение по памяти во время обучения глубоких нейронных сетей по мере увеличения размера пакетов.
  • SigLIP: Использует парную сигмоидную функцию потерь. Ему нужно лишь оценить, является ли отдельная пара «изображение-текст» истинным совпадением или ложным совпадением, что делает его высокомасштабируемым и упрощает распределение по нескольким устройствам при оптимизации рабочих процессов искусственного интеллекта.

Применение в реальном мире

Благодаря своей конструкции, обеспечивающей эффективную работу с памятью, SigLIP служит мощной основой для различных практических приложений в сфере высоких технологий :

  • Классификация изображений без предварительного обучения: SigLIP отлично справляется с классификацией изображений по новым классам, которые он никогда не видел во время обучения. Это невероятно полезно для динамических систем классификации изображений, где категории часто меняются, что избавляет от необходимости постоянной ручной маркировки данных.
  • Семантические поисковые системы: Благодаря генерации высокоточных мультимодальных вложений SigLIP обеспечивает работу передовых систем поиска. Пользователи могут вводить сложные текстовые запросы для высокоточного поиска в огромных неструктурированных базах данных изображений.

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

Пример реализации

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

import torch
import torch.nn.functional as F

# Simulate image and text embeddings from a vision-language model
image_embeddings = torch.randn(4, 256)
text_embeddings = torch.randn(4, 256)

# Calculate pairwise similarities (logits)
logits = torch.matmul(image_embeddings, text_embeddings.T)

# SigLIP uses a binary formulation: 1 for positive pairs, -1 for negative pairs
labels = torch.eye(4) * 2 - 1
loss = -F.logsigmoid(labels * logits).mean()

print(f"Calculated SigLIP Loss: {loss.item():.4f}")

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

Давайте вместе создадим будущее искусственного интеллекта!

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