YOLO Vision Shenzhen
深セン
今すぐ参加
用語集

ゼロショット学習

Zero-Shot Learning (ZSL)を探求し、trainデータなしでオブジェクトを detect および classify しましょう。Ultralytics YOLO-Worldがどのようにリアルタイムのオープンボキャブラリー detectを可能にするかを学びます。

ゼロショット学習(ZSL)は、人工知能モデルが学習フェーズで一度も遭遇したことのないオブジェクトを認識、分類、またはdetectすることを可能にする機械学習パラダイムです。従来の教師あり学習では、モデルが識別する必要がある特定のカテゴリごとに数千のラベル付きの例が必要です。ZSLは、通常、テキスト記述、意味属性、または埋め込みといった補助情報を活用することで、既知のクラスと未知のクラス間のギャップを埋め、この厳密な依存関係を排除します。この機能により、人工知能(AI)システムは、あらゆる可能なオブジェクトに対して網羅的なデータを収集することが非現実的な動的環境を処理する上で、はるかに柔軟でスケーラブルになり、能力が向上します。

ゼロ・ショット・ラーニングの仕組み

ZSLの核となるメカニズムは、共有された意味空間を使用して、既知の概念から未知の概念へ知識を転移させることを含みます。「シマウマ」を白黒の縞模様のピクセルパターンを記憶するだけで認識するのではなく、モデルは視覚的特徴と、自然言語処理 (NLP)から導出される意味的属性(例:「馬のような形」、「縞模様」、「4本の脚」)との関係を学習します。

このプロセスは、画像とテキストの表現を整合させるマルチモーダルモデルに依存することがよくあります。例えば、OpenAIのCLIPのような基礎研究は、モデルが自然言語の教師あり学習から視覚概念を学習できることを示しています。ZSLモデルが未知のオブジェクトに遭遇すると、視覚特徴を抽出し、それらを意味ベクトル辞書と比較します。視覚特徴が新しいクラスのセマンティック記述と一致する場合、モデルはそれを正しく分類でき、効果的に「ゼロショット」予測を実行します。このアプローチは、広範なタスクにわたって汎化する現代の基盤モデルにとって不可欠です。

実際のアプリケーション

ゼロショット学習は、システムが初期の訓練データを超えて一般化することを可能にすることで、様々な産業における革新を推進している。

  1. オープンボキャブラリーオブジェクト検出: YOLO-Worldのような最新のアーキテクチャは、ZSLを利用してユーザー定義のテキストプロンプトに基づいてオブジェクトをdetectします。これにより、膨大なビデオアーカイブから特定のアイテムを検索するなど、事前に固定されたクラスリストを定義することが不可能なシナリオでのオブジェクト検出が可能になります。Google Researchの研究者たちは、これらのオープンボキャブラリー機能の限界を押し広げ続けています。
  2. 医療診断: ヘルスケアAIにおいて、希少疾患のラベル付きデータを取得することは、しばしば困難で費用がかかります。ZSLモデルは、一般的な疾患やPubMedなどのデータベースで見つかる医学文献からの希少症状の説明に基づいて訓練することができ、これにより、大量の陽性症例データセットを必要とせずに、医用画像内の潜在的な希少異常をシステムが検出できるようになります。
  3. 野生生物保護: 農業AIと生態学において、めったに撮影されない絶滅危惧種を特定することは極めて重要です。ZSLにより、自然保護活動家は生命の百科事典のような生物学的データベースで定義された属性ベースの記述を使用して、これらの動物をdetectできます。

Ultralyticsゼロショット検出

Ultralytics YOLOモデルは、ゼロショット学習の実践例である。 このモデルは、再学習を必要とせずに実行時に動的にカスタムクラスを定義することを可能にする。 これは、堅牢な検出バックボーンと自然言語を理解するテキストエンコーダーを接続することで実現されている。

以下のpythonの例は、YOLO-Worldを使用して、標準的なトレーニングセットに明示的に含まれていなかったオブジェクトをdetectする方法を示しています。 ultralytics パッケージで提供される。

from ultralytics import YOLOWorld

# Load a pre-trained YOLO-World model capable of Zero-Shot Learning
model = YOLOWorld("yolov8s-world.pt")

# Define custom classes via text prompts (e.g., specific accessories)
# The model adjusts to detect these new classes without retraining
model.set_classes(["blue backpack", "red apple", "sunglasses"])

# Run inference on an image to detect the new zero-shot classes
results = model.predict("https://ultralytics.com/images/bus.jpg")

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

関連概念との区別

ZSLを完全に理解するためには、次のような類似の学習戦略と区別することが役に立つ。 コンピュータビジョン(CV)で使用される同様の学習ストラテジーと区別することが有用である:

  • 少例学習(FSL) ZSLが対象クラスの例を一切必要としないのに対し、FSLはモデルに適応させるためのごく少数のサポートセット(通常1~5例)を提供する。ZSLは視覚的例ではなく意味的推論に完全に依存するため、一般的により困難とみなされている。
  • 一発学習FSLのサブセット。 FSLのサブセットで、モデルは正確に1つのラベル付き例から学習する。ZSLが根本的に異なるのは、新しいカテゴリの画像を1枚も使わずに学習することである。 ZSLは、新しいカテゴリの画像が1枚もなくても動作するので、根本的に異なる。
  • 転移学習この広義の あるタスクから別のタスクへ知識を伝達することを指す。ZSLは特定のタイプの転移学習である。 新しいデータで微調整を行うことなく、未知のクラスに知識を伝達するために意味属性を使用する。 新しいデータで微調整を行う必要がない

課題と今後の展望

ZSLは計り知れない可能性を秘めていますが、トレーニング中に学習された意味属性が未知のクラスの視覚的特徴に完全にマッピングされないというドメインシフト問題などの課題に直面しています。さらに、ZSLモデルはバイアスに悩まされることがあり、既知のクラスに対する予測精度が未知のクラスと比較して著しく高くなるという問題があります。

スタンフォード大学AIラボIEEEコンピュータソサエティのような組織からの研究は、これらの制限に対処し続けています。コンピュータービジョンツールがより堅牢になるにつれて、ZSLは標準機能となり、大規模なデータラベリング作業への依存を減らすと予想されています。高度なモデルをデプロイする前にデータセットを効率的に管理したいチームのために、Ultralytics Platformはアノテーションとデータセット管理のための包括的なツールを提供します。

共にAIの未来を築きましょう!

未来の機械学習で、新たな一歩を踏み出しましょう。