CLIP (Contrastive Language-Image Pre-training)
ビジョンと言語を橋渡しするCLIP (Contrastive Language-Image Pre-training) を探索しましょう。ゼロショット学習を可能にし、Ultralytics YOLO26を強化する仕組みを学びます。
CLIP (Contrastive Language-Image Pre-training) is a revolutionary neural network architecture developed by OpenAI that bridges the gap between visual data and natural language. Unlike traditional computer vision (CV) systems that require labor-intensive data labeling for a fixed set of categories, CLIP learns to understand images by training on millions of image-text pairs collected from the internet. This approach allows the model to perform zero-shot learning, meaning it can identify objects, concepts, or styles it has never explicitly seen during training, simply by reading a text description. By mapping visual and linguistic information into a shared feature space, CLIP serves as a powerful foundation model for a wide variety of downstream tasks without the need for extensive task-specific fine-tuning.
Link to this sectionアーキテクチャの仕組み#
The core mechanism of CLIP involves two parallel encoders: an image encoder, typically based on a Vision Transformer (ViT) or a ResNet, and a text Transformer similar to those used in modern large language models (LLMs). Through a process known as contrastive learning, the system is trained to predict which text snippet matches which image within a batch.
トレーニング中、モデルは一致する画像とテキストのペアのベクトル 埋め込み (embeddings) を近づけ、一致しないペアを遠ざけるようにパラメータを最適化します。これにより、マルチモーダルな 潜在空間 (latent space) が作成されます。そこでは、「ゴールデンレトリバー」の画像の数学的表現が、「犬の写真」というテキストの埋め込みの空間的に近くに配置されます。これらのベクトル間の コサイン類似度 を計算することで、モデルは画像が自然言語のプロンプトとどの程度対応しているかを定量化でき、柔軟な 画像分類 や検索が可能になります。
Link to this section実社会での応用#
視覚と言語を結びつける能力により、CLIPは現代のAIアプリケーションにおける中核的な技術となっています。
- インテリジェントな セマンティック検索: CLIPを使用すると、ユーザーは複雑な 自然言語処理 (NLP) クエリを使用して大規模な画像データベースを検索できます。たとえば、小売業界におけるAI では、買い物客が「ヴィンテージの花柄のサマードレス」と検索し、画像に特定のメタデータタグが付けられていなくても、視覚的に正確な結果を取得できます。これは多くの場合、高性能な ベクトルデータベース によって支えられています。
- 生成AIの制御: Stable Diffusion のようなモデルは、ユーザーのプロンプトを解釈し、生成プロセスを誘導するためにCLIPに依存しています。CLIPはスコアラーとして機能し、生成された視覚的出力がテキストの説明とどの程度一致しているかを評価します。これは、高品質な テキストから画像への生成 合成に不可欠です。
- オープンボキャブラリーの 物体検出: YOLO-World のような高度なアーキテクチャは、CLIPの埋め込みを統合して、任意のテキスト入力に基づいてオブジェクトを検出します。これにより、ヘルスケアにおけるAI のような分野で動的な検出が可能になり、再トレーニングなしで新しい機器や異常を特定することが求められる状況に対応できます。
Link to this sectionUltralyticsでCLIP機能を使用する#
標準的な物体検出器はトレーニングされたクラスに限定されますが、CLIPベースの機能を使用することでオープンボキャブラリーの検出が可能になります。以下の Python コードは、ultralytics パッケージを使用してカスタムテキストプロンプトでオブジェクトを検出する方法を示しています。
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()Link to this section関連概念の区別#
その具体的な有用性を理解するために、CLIPを他の一般的なAIパラダイムと区別すると役立ちます。
- CLIPと 教師あり学習 の比較: 従来の教師ありモデルは、すべてのカテゴリ(「猫」、「車」など)に対して厳密な定義とラベル付けされた例を必要とします。CLIPはウェブ上の生のテキストと画像のペアから学習し、より高い柔軟性を提供するとともに、Ultralytics Platform のようなツールを通じて管理されることが多い手動アノテーションのボトルネックを解消します。
- CLIPと YOLO26 の比較: CLIPがコンセプトの汎用的な理解を提供するのに対し、YOLO26は速度と正確な位置特定のために最適化された専門的なリアルタイム物体検出器です。CLIPは多くの場合、特徴抽出器やゼロショット分類器として使用されますが、YOLO26は本番環境における高速な リアルタイム推論 のためのエンジンです。
- CLIPと標準的な対照学習の比較: SimCLR のような手法は、一般的に同じ画像の2つの拡張ビューを比較して特徴を学習します。CLIPは画像とテキストの説明を対照し、単一のデータモダリティではなく、2つの異なるデータモダリティを橋渡しします。






