Ознакомьтесь с SigLIP — методом сигмоидных функций потерь, оптимизированным с точки зрения использования памяти, для моделей «зрение-язык». Узнайте, как он улучшает масштабируемость и обучение вYOLO Ultralytics YOLO .
SigLIP (сокращение от Sigmoid Loss for Language Image Pre-Training) — это высокоэффективный подход к обучению моделей, объединяющих зрительную и языковую информацию. Этот метод, впервые представленный исследователями из Google , коренным образом меняет то, как модели искусственного интеллекта осваивают взаимосвязь между изображениями и соответствующими им текстовыми описаниями. Заменяя традиционные вероятностные функции более простым подходом бинарной классификации, SigLIP позволяет разработчикам обучать масштабные мультимодальные архитектуры со значительно меньшими затратами памяти и большей вычислительной эффективностью.
В стандартных конвейерах машинного обучения, в которых сочетаются визуальные и текстовые данные, модели, как правило, для правильного обучения опираются на общее представление о всех данных в данной партии. SigLIP устраняет это препятствие, рассматривая каждую пару «изображение-текст» как отдельную задачу бинарной классификации. Используя стандартную сигмоидную функцию, модель просто предсказывает, совпадают ли конкретное изображение и текстовое описание или нет.
Такой локализованный подход к функции потерь означает, что объем памяти, необходимый при обучении модели, растёт линейно, а не квадратично. Соответственно, инженеры могут использовать значительно большие размеры партий на стандартных аппаратных конфигурациях, поддерживаемых такими фреймворками, как PyTorch, что приводит к улучшению производительности на разнообразных наборах данных без необходимости экспоненциального увеличения GPU .
При изучении современных архитектур искусственного интеллекта важно проводить различие между SigLIP и его предшественником, CLIP (Contrastive Language-Image Pre-training).
Благодаря своей конструкции, обеспечивающей эффективную работу с памятью, 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, продолжает расширять границы мультимодального обучения, разрабатывая новые рекомендации по обучению моделей и передовые практики для следующего поколения ИИ в области компьютерного зрения.
Начните свой путь в будущее машинного обучения