Ultralytics YOLO27: ウェイトリストに登録する
YOLOのライセンス
Ultralytics用語集に戻る

Transfer Learning

転移学習では、あるタスクで学習したモデルを別のタスクの出発点として再利用するため、新しいタスクに必要なラベル付きデータと学習時間を大幅に削減できます。

転移学習は、あるタスクで学習したモデルを、関連する別のタスクの出発点として再利用する機械学習の手法です。ニューラルネットワークをランダムな重みから学習するには、大規模なラベル付きデータセットと多くの計算リソースが必要ですが、数百万枚の画像で事前学習されたモデルは、ほとんどの新しいタスクで必要となる視覚特徴をすでに学習しています。学習済みのモデル重みを出発点にすれば、新しいモデルははるかに少ないラベル付き画像と短い学習時間で高い精度を達成できます。そのため、カスタムタスク向けのコンピュータービジョンモデルを構築する際には、転移学習が標準的な方法となっています。

転移学習の仕組み#

転移学習が機能するのは、ディープネットワークが階層的に特徴を学習するためです。バックボーンの最初の層は、ほぼあらゆる画像に現れるエッジ、色、テクスチャに反応します。一方、より深い層はそれらを組み合わせて、物体の部分やタスク固有の概念を表現します。Yosinskiらの研究では、畳み込みネットワークにおけるこの進行が測定されました。その結果、最初の層の特徴は汎用的であり、特徴が元のタスクに特化するにつれて高層での転移可能性は低下する一方、新しいデータセットでファインチューニングした後も、転移された特徴が汎化性能を向上させることが示されました。

このプロセスは2つの段階で構成されます。

  1. 事前学習: モデルはImageNet、COCO、Objects365などの大規模なベンチマークデータセットで汎用的な表現を学習し、事前学習済みの重みを生成します。
  2. 適応: 分類器や検出ヘッドなどの出力層を、新しいクラスに合わせて置き換えるかサイズ変更し、ターゲットデータセットで学習します。特徴抽出では、事前学習済みの層を凍結し、新しい層のみを学習させます。ファインチューニングでは、通常、より低い学習率で、事前学習済みの層の一部またはすべてのパラメーターも更新します。

ネットワークのどの程度を再学習するかは、2つの問いによって決まります。新しいタスクにどれだけのラベル付きデータがあるか、そしてそのデータが事前学習データにどれほど似ているかです。StanfordのCS231nノートでは、これらの組み合わせから生じる4つのケースが説明されています。

物体検出の転移学習#

検出モデルは、ほぼ常に転移学習でトレーニングされます。公式のYOLO26チェックポイントはObjects365で150エポック事前学習してから、COCOでファインチューニングされます。YOLO26のトレーニングレシピに詳細が記載されています。読み込んだチェックポイントに対して新しいデータセットでtrain()を呼び出すと、互換性のある重みをすべて転移し、クラス数が変わる場合はクラス別出力行をリセットしつつ、クラス名が一致する行を維持します。また、初期層を固定するfreeze引数も指定でき、小規模なデータセットで特に役立ちます。

from ultralytics import YOLO

# COCOの80クラスで事前学習されたYOLO26nの重みを読み込みます
model = YOLO("yolo26n.pt")

# 単一クラスの新しいデータセットに適応します。freeze=10は最初の10層を固定します
results = model.train(data="medical-pills.yaml", epochs=20, freeze=10)

事前学習済みのバックボーンはすでに形状、エッジ、テクスチャを検出できるため、Medical Pillsデータセットのラベル付きトレーニング画像92枚を使って、錠剤の見た目を学習するだけで済みます。

  • ファインチューニング: 転移学習を実施する方法の1つで、新しいデータを使って事前学習済みの重みを引き続き更新します。バックボーンを凍結する特徴抽出も、もう1つの主要な方法です。
  • ドメイン適応: タスクは同じままデータ分布が変化する場合の転移学習の一種です。たとえば、昼間の画像から夜間の画像への変化が該当し、ターゲットラベルがほとんどない、またはまったくない場合もよくあります。
  • ゼロショット学習と少数ショット学習: ラベル付きの例がない、またはごく少数しかない新しいクラスに対応します。完全な適応段階を設けず、事前学習済みモデルの汎用的な知識を活用します。
  • パラメーター効率の高いファインチューニング(PEFT): 元の重みを凍結したまま、LoRA行列など、追加または選択した少数のパラメーターを学習させることで、非常に大規模な事前学習済みモデルを適応させます。
  • 破滅的忘却: 新しいデータでモデルをファインチューニングした際に、元のタスクの能力が失われることです。新しいトレーニングセットに元のクラスの画像を一部混ぜるか、より多くの層を凍結すると、破滅的忘却を抑えられます。

ソリューションを見る

スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、自然保護、地理空間分析に活用できます。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOを活用して航空宇宙分野でコンピュータビジョンを導入し、航空機検査、滑走路上のFOD検出、空港の地上業務、複合材の欠陥検出に活用できます。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る

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

機械学習の未来に向けた歩みを始めましょう