用語集

アクティブ・ラーニング

少ないラベルで精度を向上させる、費用対効果の高い機械学習手法、能動学習をご覧ください。AIトレーニングにどのような変化をもたらすかをご覧ください!

Ultralytics HUB で
を使ってYOLO モデルをシンプルにトレーニングする。

さらに詳しく

能動学習は機械学習(Machine Learning:ML)の中でも特殊なサブフィールドであり、学習アルゴリズムが、しばしば「オラクル」またはヒューマンアノテーターと呼ばれるユーザーに、新しいデータポイントのラベルを要求するために対話的に問い合わせを行うことができる。一般的に事前にラベル付けされた大規模なデータセットを必要とする従来の教師あり学習とは異なり、能動学習は、大幅に少ないラベル付け作業で高いモデル性能を達成することを目的としている。これは、最も情報量の多い未ラベルのインスタンスを戦略的に選択してアノテーションを行うことで実現される。このアプローチは、医療画像解析や複雑な自然言語処理(NLP)タスクのように、ラベル付きデータの取得にコストがかかり、時間がかかり、専門的な知識が必要な領域で特に有用である。核となる考え方は、モデルにデータラベリングプロセスをガイドさせることであり、モデルの精度を向上させるために最もインパクトのあるところに人間の労力を集中させることである。

アクティブ・ラーニングの仕組み

アクティブ・ラーニングのプロセスは、一般的に反復サイクルに従うため、対象となるデータによってモデルを段階的に改善することができる:

  1. 初期モデルのトレーニング:モデル、例えば Ultralytics YOLOのようなモデルは、最初にラベル付けされた小さなデータセットで学習される。
  2. ラベルなしデータの照会:訓練されたモデルは、ラベル付けされていないデータのプールに対して予測(推論)を行うために使用される。
  3. クエリー戦略の適用:クエリー戦略は、モデルの予測を分析し(例えば、予測の確信度や不確実性に基づいて)、最も情報量の多いラベルなしデータポイント(モデルが最も確信度の低いデータポイントや、最も新しい情報を提供すると予想されるデータポイント)を選択する。
  4. オラクル注釈:選択されたデータポイントは、ラベリングのために人間のアノテーター(オラクル)に提示される。ここでは効果的なデータ収集とアノテーションの実践が重要である。
  5. モデルの再トレーニング:新たにラベル付けされたデータがトレーニングセットに追加され、この拡張されたデータセットでモデルが再トレーニング(または微調整)される。
  6. 反復:希望する性能レベルに達するか、ラベリングバジェットを使い果たすか、有意に有益なサンプルが残らなくなるまで、ステップ2からのサイクルを繰り返す。

クエリー戦略

アクティブラーニングの有効性は、クエリー戦略(ラベル付けされていないデータポイントの中から、次にラベル付けすべきものを選択するためのアルゴリズム)に大きく依存する。目標は、一度ラベル付けされれば、モデル性能の最大の改善につながる可能性が高いサンプルを選択することである。一般的な戦略には以下が含まれる:

  • 不確実性サンプリング:モデルが予測に最も自信がないインスタンスを選択する。これは、予測確率、エントロピー、または上位予測間のマージンによって測定されることが多い。
  • クエリー・バイ・コミッティ(QBC):モデルのアンサンブルを使用。予測に関して委員会メンバーの意見が最も一致しないインスタンスが、ラベリングのために選択される。
  • 期待されるモデルの変化ラベルがわかっている場合に、モデルのパラメータまたは勾配に最も大きな変化を引き起こすインスタンスを選択します。
  • 密度ベースのアプローチ:不確実なだけでなく、基礎となるデータ分布を代表するインスタンスを優先する。

ストラテジーの包括的な概観は、バー・セットルズ氏のアクティブ・ラーニング文献調査などのリソースで見ることができる。

関連性とメリット

アクティブラーニングは、ロバストなディープラーニング(DL)モデル開発の大きなボトルネックとなりがちなデータラベリングに関連する負担とコストを大幅に削減します。アノテーション作業を戦略的に集中させることで、チームは以下のことが可能になります:

  • より少ないデータでより高い精度を達成同じラベリング予算であれば、ランダムサンプリングよりも優れたモデル性能を得ることができます。
  • ラベリングコストの削減:手作業によるアノテーションに費やす時間とリソースを最小限に抑えます。
  • モデル開発を加速:最も影響力のあるデータに優先順位をつけることで、望ましいパフォーマンスレベルに早く到達します。アクティブ・ラーニングがどのようにコンピュータ・ビジョンの開発を加速させるかをご覧ください。
  • モデルの頑健性を向上させる:曖昧な例や難しい例に焦点を当てることで、モデルの汎化性を高めることができる。

実世界での応用

能動学習は、ラベル付けされたデータが制約となる様々な分野で応用されている:

  • 医療画像: YOLO モデルを使用した腫瘍検出のようなタスクでは、専門家である放射線技師の時間は貴重です。アクティブラーニングは、最も曖昧なスキャンをレビュー用に選択し、専門家リソースの使用を最適化します。これは、効果的なヘルスケアAIソリューションを開発する上で極めて重要です。
  • 自然言語処理(NLP): センチメント分析や名前付きエンティティ認識(NER)のようなタスクでは、ラベリングのために有益なテキストサンプル(センチメントが曖昧なものや希少なエンティティなど)を特定することで、モデルの精度を効率的に向上させることができます。以下のようなプラットフォームからのツール Hugging Faceなどのツールは、このようなテクニックから恩恵を受けることが多い。
  • 自律走行車ラベル付けされていない膨大な走行データから、困難または稀な走行シナリオ(異常気象、複雑な交差点など)を選択してアノテーションを行うことで、自律走行システムの安全性と信頼性を向上させることができる。
  • 衛星画像解析:大規模な衛星画像データセットにおける特定の特徴や変化の特定は、専門家のレビューのためにモデルに不確実な領域を照会させることで加速することができる。

アクティブ・ラーニングと関連概念

アクティブ・ラーニングを、同じくラベルなしデータを利用する他の学習パラダイムと区別することは重要だ:

  • 半教師あり学習ラベル付けされたデータとラベル付けされていないデータを同時に使用する能動学習とは異なり、特定のインスタンスに対して選択的にラベルを問い合わせるのではなく、利用可能なすべてのラベルなしデータを受動的に使用するのが一般的である。
  • 自己教師あり学習ラベル付けされていないデータから、事前のタスク(例えば、画像のマスクされた部分を予測する)を作成することで表現を学習する。能動学習がラベルのオラクルに依存するのに対し、事前学習段階では人間のアノテーションを必要としない。
  • 強化学習環境との相互作用を通じて、試行錯誤しながら学習する。アクティブ・ラーニングのように明示的なラベルの問い合わせは行わない。
  • 統合学習データをローカルに保ちながら、分散化されたデバイス間でモデルをトレーニングすることに重点を置き、主にデータ・プライバシーの懸念に対処する。能動学習:効率的なラベル取得に重点を置く。これらの技術を組み合わせることもできる。

ツールと実装

能動学習の実装には、MLモデルとアノテーションツールの統合やデータワークフローの管理が含まれることが多い。scikit-learnのようなフレームワークやライブラリはいくつかの機能を提供するが、特定のタスクに特化したライブラリも存在する。Label Studioのようなアノテーションソフトウェアは、能動学習パイプラインに統合することができ、アノテーターがクエリされたサンプルにラベルを提供することを可能にする。以下のようなプラットフォーム DagsHub DagsHub Active Learning Pipelinesに関するYOLO VISION 2023の講演で述べられているように、 DagsHub ようなプラットフォームは、このようなパイプラインを構築・管理するためのツールを提供している。進化するデータセットと学習済みモデルの効果的な管理は非常に重要であり、Ultralytics HUBのようなプラットフォームは、開発ライフサイクルを通じてこれらの資産を整理するためのインフラを提供します。Ultralytics GitHubリポジトリを探索し、高度なML技術の実装に関する議論やリソースのためにUltralytics コミュニティに参加してください。

すべて読む