Grounding
AIにおけるgroundingの基礎を説明します。Ultralytics YOLO26とYOLO-Worldを使用して自然言語を視覚データに結び付け、オープンボキャブラリー検出を行う方法を学びます。
グラウンディングとは、人工知能システムが抽象的な概念(通常は自然言語から導出されます)を、視覚データや感覚入力など、物理世界における具体的かつ明確な表現に結び付ける能力を指します。コンピュータービジョンの文脈では、モデルが単にテキストを処理するだけでなく、「犬を散歩させている人」のようなフレーズを解析し、画像やビデオフィード内でそれらの対象を正確に特定できることを意味します。このプロセスは、記号的推論とピクセルレベルの知覚の隔たりを埋め、認知科学における基本的な記号接地問題に対処します。言語トークンを視覚的特徴に結び付けることで、グラウンディングは現代のマルチモーダルAIの基盤となり、機械が変化する人間の環境とより直感的にやり取りできるようにします。
グラウンディングの仕組み#
技術的には、グラウンディングは異なるモダリティのデータを、共有された高次元ベクトル空間に整列させる処理です。自然言語処理(NLP)で使用されるTransformerフレームワークを基盤に構築されることの多い高度なアーキテクチャでは、テキストの説明と視覚入力の両方に対して、埋め込みと呼ばれる数値表現を生成します。トレーニング中、モデルはテキストプロンプト(例:「青いバックパック」)の埋め込みと、対応する視覚領域の埋め込みとの距離を最小化するように学習します。
この整列により、オープンボキャブラリー検出が可能になります。モデルが固定されたカテゴリセットに制限される従来の教師あり学習とは異なり、グラウンディングはゼロショット学習を可能にします。グラウンディングされたモデルは、対象を説明する言語を理解できれば、トレーニング中に明示的に見たことのない物体も識別できます。この柔軟性は、PyTorchのようなディープラーニングフレームワークによって支えられており、マルチモーダルな整列に必要な複雑な行列演算を実行できます。
実世界での利用例#
グラウンディング技術は、システムがユーザーの意図を解釈し、構造化されていない環境を効果的にナビゲートできるようにすることで、さまざまな業界を変革しています。
- ロボティクスにおけるAI: グラウンディングは、音声指示を実行する自律エージェントに不可欠です。倉庫ロボットに「最上段の棚にある荷物を取って」と指示した場合、視野内の特定の3D座標に「荷物」と「最上段の棚」という概念を対応付ける必要があります。この能力は、MIT CSAILにおけるロボティクス研究の主要な焦点であり、ロボットが人間と安全に協働できるようにします。
- セマンティック検索とメディア検索: グラウンディングは、キーワード照合を超えた高度な検索エンジンを支えます。ユーザーは「夕暮れ時に左折するサイクリスト」のような複雑な説明でビデオアーカイブを検索でき、システムはグラウンディングを使用して該当するタイムスタンプを取得します。これにより、セキュリティやメディア管理におけるビデオ理解が大幅に向上します。
- 支援技術: 視覚障害のあるユーザー向けに、グラウンディングによって、堅牢な画像認識と音声生成を組み合わせ、周囲の状況をリアルタイムで説明したり、環境に関する質問に回答したりするアプリケーションを実現できます。
Ultralytics YOLO-Worldによるグラウンディング#
Ultralyticsエコシステムは、YOLO-Worldのような専用アーキテクチャを通じてグラウンディングをサポートしています。標準的なモデルでは特定のデータセットを使用したトレーニングが必要ですが、YOLO-Worldでは、テキストプロンプトを使用してカスタム検出クラスを即座に定義できます。これにより、再トレーニングなしで、自然言語入力を画像に効果的に「グラウンディング」できます。
次の例では、ultralyticsパッケージを使用して、カスタムテキスト説明に基づいて物体を検出する方法を示します。
from ultralytics import YOLO
# Load a pre-trained YOLO-World model for open-vocabulary detection
model = YOLO("yolov8s-world.pt")
# Define custom text prompts (classes) to ground in the image
# The model maps these descriptions to visual features
model.set_classes(["person wearing hat", "blue backpack"])
# Run prediction on an image source to localize the described objects
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()グラウンディングと関連概念の違い#
グラウンディングの有用性を十分に理解するには、類似するコンピュータービジョンタスクとの違いを確認すると役立ちます。
- 物体検出との比較: 最先端のYOLO26などの従来の検出モデルは、事前定義された閉じたカテゴリセット(例:COCOの80クラス)から物体を識別します。グラウンディングはオープンエンドであり、自由形式のテキストに基づいて物体を識別します。
- 画像キャプション生成との比較: キャプション生成は、画像全体に対する説明文を生成します(Image $\to$ Text)。グラウンディングは通常、逆方向または双方向に機能し、テキスト入力に基づいて特定の視覚要素を特定します(Text $\to$ Image Region)。
- 視覚的質問応答(VQA)との比較: VQAは、画像に関する具体的な質問(例:「車は何色ですか?」)に回答する処理です。グラウンディングは特に位置特定のステップに焦点を当て、言及された物体の周囲にバウンディングボックスを描画します。
課題と今後の展望#
進歩が続いている一方で、グラウンディングは依然として計算負荷の高い処理です。大規模な言語モデルをビジョンエンコーダーと整列させるには、膨大なGPUリソースと効率的なメモリ管理が必要であり、これはNVIDIAのようなハードウェアイノベーターが取り組んでいる課題です。さらに、モデルは言語の曖昧さへの対応に苦労することがあり、「bat」という単語がスポーツ用具を指すのか動物を指すのかを判断するには、大規模なコンテキストウィンドウが必要になります。
今後の開発は、ネイティブにマルチモーダルな統合基盤モデルへと進んでいます。Ultralytics Platformのようなツールは、こうしたタスクに必要な複雑なデータセットを開発者が管理できるよう進化しており、データアノテーションやモデルデプロイメントの効率化されたワークフローを提供しています。これらの技術が成熟するにつれて、グラウンディングがエッジデバイスにシームレスに統合され、よりスマートで応答性の高いAIアプリケーションが実現すると期待されます。









