YOLOv7 と YOLO26 の比較#
コンピュータビジョンの進化は重要な節目によって特徴づけられており、レガシーアーキテクチャと現代の最先端モデルを比較することは、MLエンジニアにとって貴重な洞察をもたらします。この技術的な比較では、非常に影響力のあった YOLOv7 と革新的な Ultralytics YOLO26 の違いを掘り下げ、アーキテクチャ、学習手法、およびデプロイ効率における進歩に焦点を当てます。
YOLOv7: 「Bag-of-Freebies」の先駆者#
2022年半ばに導入されたYOLOv7は、推論コストを増加させることなく精度を向上させる複数のアーキテクチャ最適化を導入し、GPUハードウェアで可能な限界を押し広げました。
モデル詳細
- 著者: Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao
- 組織: Institute of Information Science, Academia Sinica
- 日付: 2022-07-06
- Arxiv: 2207.02696
- GitHub: WongKinYiu/yolov7
- ドキュメント: Ultralytics YOLOv7 Documentation
YOLOv7は、トレーニング可能な「バグ・オブ・フリービーズ」の概念を導入しました。これは再パラメータ化技術を大いに活用し、効率的なレイヤ集約ネットワーク(E-ELAN)を拡張したものです。これにより、モデルはより多様な特徴を学習し、元の勾配パスを損なうことなくネットワークの学習能力を継続的に向上させることが可能になりました。当時のCOCOにおいて印象的な最先端のベンチマークを達成した一方で、そのアーキテクチャはアンカーベースの出力に強く依存しており、複雑な Non-Maximum Suppression (NMS) 後処理を必要とするため、デプロイ時にレイテンシのボトルネックを引き起こす可能性があります。
YOLO26: エッジファーストのVision AI標準#
2026年1月にリリースされたUltralytics YOLO26は、デプロイの容易さ、学習の安定性、およびハードウェア効率を優先するために検出パイプラインを全面的に見直したパラダイムシフトを表しています。
モデル詳細
- 著者: Glenn Jocher and Jing Qiu
- 組織: Ultralytics
- 日付: 2026-01-14
- GitHub: ultralytics/ultralytics
- プラットフォーム: Ultralytics YOLO26 on Platform
YOLO26は、現代のエンジニアリング課題を解決するためにゼロから構築されました。そのアーキテクチャは、前身モデルを大幅に凌駕するいくつかの重要なイノベーションをもたらします。
- エンドツーエンドのNMSフリー設計: YOLO26は、YOLOv10 で初めて開拓された画期的なアプローチにより、NMS後処理をネイティブに排除します。これにより、混雑したシーンによって通常引き起こされる変動レイテンシを回避し、より高速で非常にシンプルなデプロイパイプラインを実現します。
- DFLの削除: Distribution Focal Loss (DFL) を削除することで、モデルはエクスポート用に根本的に簡素化され、エッジデバイスや低電力IoTハードウェアとの互換性が大幅に向上しました。
- 最大43%高速なCPU推論: アーキテクチャの簡素化と構造的プルーニングにより、YOLO26はエッジコンピューティングや専用GPUを搭載しないデバイス向けに最適化されており、標準的なプロセッサ上で古いアーキテクチャを容易に上回ります。
- MuSGDオプティマイザ: 大規模言語モデルの学習手法(具体的にはMoonshot AIのKimi K2)にインスピレーションを得たYOLO26は、Stochastic Gradient Descent とMuonのハイブリッドであるMuSGDオプティマイザを使用しています。これにより、コンピュータビジョンタスクに比類のない学習安定性と、はるかに高速な収束がもたらされます。
- ProgLoss + STAL: これらの高度な損失関数の導入により、aerial imagery、ロボティクス、および自動外観検査にとって重要な、小物体認識における顕著な改善がもたらされます。
- タスク固有の改善: 標準的な object detection を超えて、YOLO26は、segmentation tasks 向けのマルチスケールプロトおよび特殊なセマンティックセグメンテーション損失、pose estimation 向けのResidual Log-Likelihood Estimation(RLE)、および Oriented Bounding Boxes (OBB) における境界の問題を解決するための特殊な角度損失アルゴリズムを導入しています。
古いアーキテクチャからYOLO26へのアップグレードは、Pythonコード内のモデル文字列を yolo26n.pt に変更するだけと非常に簡単です。Ultralyticsパッケージは、自動重みダウンロードや設定のスケーリングを含め、移行全体を処理します。
パフォーマンスと指標の比較#
計算フットプリントを比較すると、YOLO26はパフォーマンスとメモリ要件のバランスにおいて明確な優位性を示しています。Transformerベースのモデルや古い重いアーキテクチャは、多くの場合、膨大なCUDAメモリ割り当てを必要としますが、YOLO26は民生用GPU上で効率的に学習できます。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメータ (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| YOLO26n | 640 | 40.9 | 38.9 | 1.7 | 2.4 | 5.4 |
| YOLO26s | 640 | 48.6 | 87.2 | 2.5 | 9.5 | 20.7 |
| YOLO26m | 640 | 53.1 | 220.0 | 4.7 | 20.4 | 68.2 |
| YOLO26l | 640 | 55.0 | 286.2 | 6.2 | 24.8 | 86.4 |
| YOLO26x | 640 | 57.5 | 525.8 | 11.8 | 55.7 | 193.9 |
上記のように、YOLO26m モデルは、大規模な YOLOv7x と同等の精度(53.1 mAP)を達成しながら、パラメータ数は3分の1未満(20.4M対71.3M)であり、TensorRT を介して非常に高速な推論時間を実現しています。
Ultralyticsエコシステムの利点#
レガシーモデルのデプロイでは、複雑なサードパーティ製リポジトリ、依存関係の地獄、手動のエクスポートスクリプトとの格闘が伴うことがよくあります。対照的に、Ultralytics Platform は、機械学習ライフサイクル全体を効率化する、よくメンテナンスされた一貫性のあるエコシステムを提供します。
- 使いやすさ: 直感的なPython APIと網羅的なドキュメントにより、数分でモデルのアノテーション、学習、デプロイを行うことができます。ONNX や CoreML などのフォーマットへのエクスポートは、わずか1行のコードで行えます。
- メモリ要件: Ultralyticsのモデルは、低いメモリ使用量で定評があります。かさばるビジョンTransformerとは異なり、YOLO26はメモリ不足(OOM)エラーに悩まされることなく、標準的なハードウェア上で簡単にファインチューニングできます。
- 多用途性: YOLOv7は主に物体検出器でしたが(他のタスク向けの試験的なブランチもありましたが)、YOLO26は検出、分類、追跡、姿勢、OBBを同等の習熟度で処理するネイティブな統合フレームワークです。
YOLO26が推奨標準である一方で、レガシーシステムを移行する開発者は、長期サポートプロジェクトに向けて優れた安定性を提供するUltralyticsラインナップのもう一つの非常に有能な世代である YOLO11 を探索することもできます。
コード例: 学習とデプロイ#
次の例は、ultralytics パッケージの洗練されたシンプルさを示しています。古いモデルのために長いコマンドライン引数を呼び出すのと比較して、インターフェースがいかにクリーンであるかに注目してください。
from ultralytics import YOLO
# Load the lightweight YOLO26 nano model
model = YOLO("yolo26n.pt")
# Train the model efficiently on a dataset (e.g., COCO8)
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
batch=32, # Efficient memory usage allows larger batch sizes
device=0,
)
# Run an NMS-free, end-to-end inference on a test image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Export directly to ONNX for edge deployment
export_path = model.export(format="onnx")
print(f"Model exported successfully to: {export_path}")実際のユースケース#
適切なアーキテクチャの選択は、完全に本番環境の制約に依存します。
YOLOv7を検討すべき時期: YOLOv7は、2022年の基準に対する学術的ベンチマークにおいて依然として価値のあるツールです。インフラストラクチャがYOLOv7の特定のアンカー出力に強くハードコードされたディープなレガシー CUDA pipelines を利用しており、リファクタリングにリソースを割り当てられない場合、堅牢なベースライン検出器として機能し続けます。
YOLO26を選択すべき時期: 新しいプロジェクトにとって、YOLO26は決定的な選択肢です。そのNMSフリーのアーキテクチャにより、低遅延の autonomous navigation やリアルタイムセキュリティシステムに最適です。DFLの削除と大幅なCPU速度の向上により、Raspberry Pi へのデプロイや家電製品の内部など、エッジAIのデプロイにおいて揺るぎないチャンピオンとなっています。さらに、ProgLoss + STALの機能強化により、製造業の品質保証や衛星画像における微小な異常の検出に非常に長けています。
最終的に、YOLO26はオープンソースコミュニティによる包括的なサポートに支えられ、精度、速度、シンプルさにおいて比類のない組み合わせを開発者に提供します。