YOLOv6-3.0とYOLOv7の比較#
リアルタイムコンピュータービジョンの進化は、アーキテクチャ効率と学習手法の急速な進歩によって特徴づけられてきました。この分野に大きな影響を与えた代表的なモデルが、YOLOv6-3.0とYOLOv7です。どちらのフレームワークも、ハイエンドのサーバーGPUからエッジデバイスまで幅広いデプロイを対象に、推論速度と検出精度のバランスを取る新しい手法を導入しました。
この包括的な技術比較では、両モデルのアーキテクチャ、パフォーマンス指標、最適なユースケースを検討します。また、最新のUltralytics Platformと新しいYOLO26モデルが、これらの基礎的な概念をどのように発展させ、比類のない開発者体験を実現するかについても説明します。
YOLOv6-3.0:産業用スループットの最適化#
MeituanのVision AI部門が開発したYOLOv6-3.0は、高スループットの産業用途向けに明確に設計されました。ハードウェアアクセラレータ上でのパフォーマンス最大化を重視しており、専用GPUでのバッチ処理が可能な環境に適しています。
- 著者: Chuyi Li、Lulu Li、Yifei Geng、Hongliang Jiang、Meng Cheng、Bo Zhang、Zaidan Ke、Xiaoming Xu、Xiangxiang Chu
- 組織: Meituan
- 日付: 2023-01-13
- Arxiv: 2301.05586
- GitHub: meituan/YOLOv6
アーキテクチャの革新#
YOLOv6-3.0は、GPUのメモリアクセスコストを最適化するために設計された、ハードウェアに適したEfficientRepバックボーンを採用しています。異なるスケール間の特徴融合を強化するため、モデルのネックに双方向連結(BiC)モジュールを導入しています。これにより、従来のバージョンよりも複雑な空間階層を効果的に捉えられます。
さらに、YOLOv6-3.0はアンカー支援学習(AAT)戦略を実装しています。この手法は、アンカーベース学習の豊富な勾配情報と、アンカーフリー推論による効率的なデプロイの利点を組み合わせます。後処理速度を損なうことなく、モデルのより安定した収束を促します。
YOLOv6-3.0は、サーバーグレードのGPU(NVIDIA T4など)で優れた性能を発揮しますが、特定の構造的な再パラメーター化に大きく依存しているため、新しいアーキテクチャと比べて、CPUに制約されたエッジデバイスではレイテンシが最適でない場合があります。
YOLOv7:バッグ・オブ・フリービーの先駆け#
Academia Sinicaの研究者がリリースしたYOLOv7は異なるアプローチを採用し、推論コストを増加させない勾配経路の分析と学習時の最適化を重視しました。著者らはこの概念を「学習可能なフリービーの集合」と呼んでいます。
- 著者: Chien-Yao Wang、Alexey Bochkovskiy、Hong-Yuan Mark Liao
- 所属機関: 台湾、中央研究院情報科学研究所
- 日付: 2022-07-06
- Arxiv: 2207.02696
- GitHub: WongKinYiu/yolov7
アーキテクチャの革新#
YOLOv7の中核をなすのは、拡張効率的レイヤー集約ネットワーク(E-ELAN)です。E-ELANは、元のネットワークトポロジーを崩すことなく、異なる層がより多様な特徴を学習できるようにして、勾配経路を最適化します。その結果、優れた平均適合率(mAP)を実現できる、表現力の高いモデルになります。
YOLOv7はモデルの再パラメーター化も積極的に活用し、推論時に畳み込み層とバッチ正規化を統合します。これにより、NVIDIA TensorRTやONNXなどのフレームワークを使ってデプロイする際に、パラメーター数が減少し、フォワードパスが高速化します。
パフォーマンス比較#
MS COCOデータセットでこれらのモデルを評価すると、YOLOv6の超軽量バリアントと、パラメーター数が多く精度を重視するYOLOv7アーキテクチャの間に、明確なトレードオフが見られます。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
データによると、YOLOv6-3.0nは非常に高速な推論を実現し、高頻度の動画分析に適しています。一方、YOLOv7xは最高のmAPを達成しており、フレームレートよりも検出精度が重要なタスクで優位性を発揮します。
ユースケースと推奨事項#
YOLOv6とYOLOv7のどちらを選ぶかは、プロジェクト固有の要件、デプロイ上の制約、エコシステムに関する好みによって異なります。
YOLOv6を選ぶ場合#
YOLOv6が適している用途:
- 産業用ハードウェアを考慮したデプロイ: モデルのハードウェアを考慮した設計と効率的な再パラメーター化によって、特定のターゲットハードウェア上で最適な性能が得られるシナリオです。
- 高速な1ステージ検出: 制御された環境でのリアルタイム動画処理において、GPU上での生の推論速度を重視するアプリケーションです。
- Meituanエコシステムとの統合: すでにMeituanの技術スタックとデプロイインフラストラクチャを利用しているチームです。
YOLOv7を選ぶ場合#
YOLOv7は次の用途におすすめです。
- 学術的なベンチマーク: 2022年当時の最先端の結果を再現する場合、またはE-ELANやトレーニング可能なbag-of-freebies技術の効果を研究する場合。
- 再パラメーター化の研究: 計画的な再パラメーター化畳み込みや、複合モデルスケーリング戦略を調査する場合。
- 既存のカスタムパイプライン: YOLOv7固有のアーキテクチャを中心に高度にカスタマイズされ、容易にリファクタリングできないパイプラインを使用するプロジェクト。
Ultralytics (YOLO26)を選ぶ場合#
多くの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験を最適なバランスで提供します。
- NMSを使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションを備えていないデバイスで、YOLO26の最大43%高速なCPU推論が大きな優位性を発揮します。
- 小物体検出: ドローンによる航空画像やIoTセンサーの分析など、ProgLossとSTALによって小さな物体の精度が大幅に向上する難しいシナリオ。
Ultralyticsの強み:未来への一歩#
YOLOv6-3.0とYOLOv7は重要な節目となるモデルですが、異なるリポジトリを本番パイプラインに統合する際には、モデルのデプロイやハイパーパラメーターの調整が課題になることがよくあります。Ultralyticsエコシステムは、合理化された統一インターフェースを提供することで、こうした課題を解消します。
Ultralyticsを選ぶ理由#
- 使いやすさ:Ultralytics Python APIを使えば、数行のコードでモデルの読み込み、学習、エクスポートができます。旧モデルから最新のアーキテクチャに切り替える際に変更するのは、1つの文字列だけです。
- 十分にメンテナンスされたエコシステム:Ultralyticsは頻繁な更新、活発なコミュニティサポート、充実したドキュメントを提供します。
- 汎用性:主にバウンディングボックスに特化した従来のモデルとは異なり、Ultralyticsのモデルは、インスタンスセグメンテーション、姿勢推定、回転バウンディングボックス(OBB)などのマルチタスク学習をネイティブにサポートします。
- メモリ要件:Ultralytics YOLOモデルは、RT-DETRのようなTransformerベースのアーキテクチャと比べ、学習時のメモリ使用量が少ないため、研究者は一般向けハードウェアでも効率的に学習できます。
YOLO26へのアップグレード#
最高のパフォーマンスを求める開発者にとって、YOLO26(2026年1月リリース)は物体検出のパラダイムを根本から変えるモデルです。オプションのエンドツーエンドNMSフリー設計(nms=False)を導入し、複雑な後処理ロジックを排除して、エッジデバイスでのレイテンシのばらつきを大幅に低減します。
YOLO26の主な革新点は次のとおりです。
- MuSGDオプティマイザー:SGDとMuonを組み合わせた高度なハイブリッドで、非常に安定した学習ダイナミクスと、より速い収束を実現します。
- DFLの除去:Distribution Focal Lossを取り除くことで、YOLO26はエクスポートの互換性を簡素化し、低消費電力デバイスでのパフォーマンスを向上させます。
- ProgLoss + STAL:小物体認識を大幅に向上させる高度な損失関数です。
- 比類のない速度:前世代と比べてCPU推論が最大43%高速化し、Raspberry PiやApple CoreMLへのデプロイなど、組み込みシステムに最適です。
エコシステムには、YOLO11やYOLOv8など、優れた性能を持つモデルもあります。どちらも、旧世代ハードウェアとの統合に適した優れたパフォーマンスバランスを実現します。
Ultralytics Platform上にコンピュータービジョンアプリケーションを構築すれば、データセットローダーやデプロイスクリプトを書き直すことなく、将来の最先端モデルをすぐに利用できます。
コード例:効率的なトレーニング#
以下のスニペットでは、Ultralytics APIを使って最先端のYOLO26モデルを簡単に学習する方法を示します。このワークフローはYOLO11やYOLOv8にもそのまま適用でき、従来のリポジトリで通常必要となる定型コードを抽象化します。
from ultralytics import YOLO
# 最新のYOLO26 nanoモデルを読み込み、高速に学習します
model = YOLO("yolo26n.pt")
# COCO8データセットでモデルをトレーニングします
# APIがデータセットのダウンロード、拡張、ハイパーパラメーター設定を処理します
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device="cuda:0", # PyTorchのGPUアクセラレーションを自動的に使用します
)
# テスト画像に対して、エンドツーエンドのNMSフリー推論を実行します
predictions = model.predict("https://ultralytics.com/images/bus.jpg", nms=False)
# クロスプラットフォームのデプロイに向けてONNXにエクスポートします
model.export(format="onnx")結論#
YOLOv6-3.0とYOLOv7は、リアルタイム検出の課題の異なる側面にうまく対処しました。YOLOv6-3.0は専用の産業用GPU環境で優れた性能を発揮し、YOLOv7は徹底した勾配経路の最適化によって高い精度を実現します。
しかし、比類のない汎用性、最小限のデプロイの手間、最先端のパフォーマンスが求められる最新のアプリケーションでは、Ultralytics YOLO26が最適な選択肢です。NMSフリーアーキテクチャ、高度なMuSGDオプティマイザー、Ultralytics Platformとの緊密な統合により、開発者は強力でスケーラブルなビジョンAIソリューションをこれまで以上に迅速にデプロイできます。