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

CLIP (Contrastive Language-Image Pre-training, предварительное обучение контрастного языка и изображения)

Изучите CLIP (Contrastive Language-Image Pre-training) для соединения зрения и языка. Узнайте, как он обеспечивает обучение без предварительной подготовки и поддерживает Ultralytics .

CLIP (Contrastive Language-Image Pre-training) — это революционная архитектура нейронной сети, разработанная OpenAI, которая устраняет разрыв между визуальными данными и естественным языком. В отличие от традиционных систем компьютерного зрения (CV), которые требуют трудоемкой маркировки данных для фиксированного набора категорий, CLIP учится понимать изображения путем обучения на миллионах пар изображений и текстов, собранных из Интернета. Такой подход позволяет модели выполнять обучение без предварительной подготовки, то есть она может идентифицировать объекты, концепции или стили, которые она никогда явно не видела во время обучения, просто читая текстовое описание. Путем отображения визуальной и лингвистической информации в общее пространство признаков CLIP служит мощной базовой моделью для широкого спектра последующих задач без необходимости обширной настройки под конкретные задачи .

Как работает архитектура

Основной механизм CLIP включает в себя два параллельных кодировщика: кодировщик изображений, обычно основанный на Vision Transformer (ViT) или ResNet, и текстовый Transformer, аналогичный тем, которые используются в современных больших языковых моделях (LLM). С помощью процесса, известного как контрастивное обучение, система обучается предсказывать, какой фрагмент текста соответствует какому изображению в партии.

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

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

Способность связывать зрение и язык сделала CLIP основополагающей технологией в современных приложениях искусственного интеллекта:

  • Интеллектуальный семантический поиск: CLIP позволяет пользователям выполнять поиск в больших базах данных изображений с помощью сложных запросов на основе обработки естественного языка (NLP) . Например, в сфере искусственного интеллекта в розничной торговле покупатель может ввести запрос «винтажное летнее платье с цветочным принтом» и получить визуально точные результаты, даже если изображения не имеют этих конкретных метаданных. Часто это обеспечивается высокопроизводительными векторными базами данных.
  • Генеративное управление ИИ: Модели, такие как Stable Diffusion, полагаются на CLIP для интерпретации запросов пользователей и управления процессом генерации. CLIP действует как оценщик, оценивая, насколько хорошо сгенерированный визуальный результат соответствует текстовому описанию, что необходимо для высококачественного синтеза текста в изображение.
  • Обнаружение объектов с открытым словарем: передовые архитектуры, такие как YOLO, интегрируют вложения CLIP для detect на основе произвольных текстовых вводов. Это позволяет осуществлять динамическое обнаружение в таких областях, как ИИ в здравоохранении, где необходимо идентифицировать новое оборудование или аномалии без повторного обучения.

Использование функций CLIP с Ultralytics

В то время как стандартные детекторы объектов ограничены своими классами обучения, использование функций на основе CLIP позволяет осуществлять обнаружение с открытым словарем. Следующее Python код демонстрирует, как использовать ultralytics пакет для detect с помощью настраиваемых текстовых подсказок:

from ultralytics import YOLOWorld

# Load a pre-trained YOLO-World model utilizing CLIP features
model = YOLOWorld("yolov8s-world.pt")

# Define custom classes using natural language text prompts
model.set_classes(["person wearing sunglasses", "red backpack"])

# Run inference on an image to detect the text-defined objects
results = model.predict("travelers.jpg")

# Display the results
results[0].show()

Различение смежных понятий

Чтобы понять специфическую полезность CLIP, полезно отличать его от других распространенных парадигм ИИ:

  • CLIP против контролируемого обучения: традиционные контролируемые модели требуют строгих определений и помеченных примеров для каждой категории (например, «кошка», «автомобиль»). CLIP обучается на основе необработанных пар «текст-изображение», найденных в Интернете, что обеспечивает большую гибкость и устраняет узкое место ручной аннотации, которая часто управляется с помощью таких инструментов, как Ultralytics .
  • CLIP vs. YOLO26: CLIP обеспечивает общее понимание концепций, а YOLO26 — это специализированный детектор объектов в реальном времени, оптимизированный для скорости и точной локализации. CLIP часто используется в качестве экстрактора признаков или классификатора zero-shot, тогда как YOLO26 — это движок для высокоскоростного вывода в реальном времени в производственных средах.
  • CLIP против стандартного контрастивного обучения: такие методы, как SimCLR , обычно сравнивают два дополненных вида одного и того же изображения для обучения признакам. CLIP сравнивает изображение с текстовым описанием, соединяя две разные модальности данных, а не только одну.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас