Ultralytics YOLO27:
Get Started

YOLOv5とYOLOv7#

コンピュータービジョンの分野は、より高速で高精度なリアルタイム物体検出のニーズに後押しされ、ここ数年で急速に進化しています。コンピュータービジョンプロジェクトに適したアーキテクチャを選ぶ際、Ultralytics YOLOv5やYOLOv7などの人気モデルの違いを理解することが重要です。この包括的な技術比較では、情報に基づいた判断に役立つよう、それぞれのアーキテクチャ、トレーニング手法、性能指標、最適なデプロイシナリオを詳しく解説します。

概要:モデルの起源#

これらのモデルの起源と設計思想を理解すると、アーキテクチャの選択に関する背景がわかります。

YOLOv5の詳細:

YOLOv7の詳細:

YOLOv7の詳細を見る

他のアーキテクチャを見る

これらのモデルと他のモデルとの比較に興味がある方は、YOLOv5とYOLO11の比較やYOLOv7とEfficientDetの比較もご覧ください。物体検出エコシステムへの理解を深められます。

アーキテクチャの革新と違い#

YOLOv5:導入しやすさの標準#

2020年にUltralyticsが発表したYOLOv5は、PyTorchフレームワークをネイティブに採用し、パラダイムシフトをもたらすとともに、研究者や開発者が利用を始める際の障壁を大きく引き下げました。そのアーキテクチャはModified CSPDarknet53バックボーンを基盤とし、Cross Stage Partial(CSP)ネットワークを統合することで、勾配の流れを維持しながらパラメーター数を削減します。

最大の強みの一つは、メモリ要件です。旧世代の2段階検出器やRT-DETRのような大規模なTransformerモデルと比べ、YOLOv5はトレーニング時に必要なCUDAメモリが大幅に少ないため、一般的なコンシューマー向けGPUでもバッチサイズを大きくできます。さらに、ネイティブに統合された汎用性により、画像分類、物体検出、画像セグメンテーションをシームレスにサポートします。

YOLOv7:リアルタイム精度の限界を押し広げる#

2022年半ばにリリースされたYOLOv7は、MS COCOベンチマークにおけるリアルタイム検出の最先端を押し広げることに重点を置いていました。著者らはExtended Efficient Layer Aggregation Network(E-ELAN)を導入し、元の勾配経路を損なわずにネットワークの学習能力を向上させました。

YOLOv7は「trainable bag-of-freebies」でも知られています。特にトレーニング中の再パラメーター化手法では、複数のモジュールを推論用の単一の畳み込み層に変換し、精度を損なうことなく速度を高めます。ただし、この複雑なトレーニング手法は、ネイティブのUltralyticsエコシステムと比べて学習曲線が急になり、エクスポートパイプラインもわかりにくくなることがよくあります。

パフォーマンス比較#

これらのモデルを評価する際は、速度、精度、計算コストの性能バランスが重要です。以下に、MS COCO val2017データセットに基づく性能指標の詳細な比較を示します。

モデルサイズ
(ピクセル)
mAPval
50-95
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
パラメーター
(M)
FLOPs
(B)
YOLOv5n64028.0-1.121.94.5
YOLOv5s64037.4-1.927.216.5
YOLOv5m64045.4-4.0321.249.0
YOLOv5l64049.0-6.6146.5109.1
YOLOv5x64050.7-11.8986.7205.7
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

YOLOv7は大型モデルでより高い絶対mAPスコアを達成しますが、YOLOv5は極めて軽量なNano(YOLOv5n)からクラウド推論向けのExtra-Large(YOLOv5x)まで、比類のない幅広いモデルを提供します。

Ultralyticsエコシステムの利点#

モデルの有用性は、そのアーキテクチャだけでは決まりません。モデルを取り巻くエコシステムが、本番環境へどれだけ迅速にデプロイできるかを左右します。この点でUltralyticsモデルは優れています。

  • 使いやすさ:Ultralytics Platformと統一されたPython APIにより、効率的なユーザーエクスペリエンス、シンプルな構文、充実したドキュメントを利用できます。カスタムデータセットのトレーニングにボイラープレートコードは不要です。
  • メンテナンスの行き届いたエコシステム:Ultralyticsは、活発な開発、頻繁なアップデート、充実したコミュニティサポートを強みとしています。Comet MLやWeights & Biasesなどのツールとの連携も組み込まれています。
  • トレーニング効率:データローダー、スマートキャッシュ、マルチGPUサポートにより、Ultralyticsモデルは非常に効率よくトレーニングできます。すぐに利用できる事前学習済み重みは、転移学習を大幅に高速化します。

コード例:使い始める#

Ultralyticsを使用すれば、わずか数行のコードでモデルをデプロイできます。以下のPythonスニペットは、推奨されるultralyticsパッケージを使って、モデルの読み込み、トレーニング、推論を簡単に実行する方法を示しています。

from ultralytics import YOLO

# 事前学習済みYOLOv5sモデルを読み込む
model = YOLO("yolov5su.pt")  # YOLOv5u: ultralyticsパッケージ向けのアンカーフリーYOLOv5重み

# COCO8のサンプルデータセットでモデルをトレーニングする
# Ultralyticsがデータのダウンロードと拡張を自動的に処理します
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# サンプル画像で推論を実行する
predictions = model("https://ultralytics.com/images/bus.jpg")

# 予測結果を表示する
predictions[0].show()

一方、元のYOLOv7リポジトリを利用するには、一般に複雑なリポジトリのクローン、依存関係の手動管理、長いコマンドライン引数の使用が必要です。

実環境での用途と適したユースケース#

YOLOv7を選ぶ場合#

YOLOv7は、最高のmAPのみを目標とし、アンカーベースの出力テンソルに合わせてシステムがすでに調整されている場合、学術的なベンチマークや特定のレガシーGPUパイプラインに有力な候補であり続けます。勾配経路の分析に取り組む研究者は、ベースラインとしてYOLOv7をよく使用します。

YOLOv5を選ぶ場合#

YOLOv5は非常に安定しているため、本番環境で広く選ばれています。次の用途に適しています。

  • モバイルおよびエッジコンピューティング:CoreMLを介してiOSに、またはLiteRTを介してAndroidにYOLOv5nをデプロイできます。
  • 俊敏なスタートアップ:データセット管理やクラウドトレーニングのために、シームレスなUltralytics Platform連携を活用することで、迅速な反復サイクルを必要とするチームにメリットがあります。
  • マルチタスク環境:物体検出、分類、セグメンテーションを同時に必要とするシステムに適しています。

次世代への展望:YOLO26への移行#

YOLOv5とYOLOv7の比較は、ビジョンAIの進化を理解するうえで優れた題材ですが、最先端技術はその後も進歩しています。2026年1月にリリースされたUltralytics YOLO26は大きな飛躍を遂げ、新規プロジェクトでは旧世代のアーキテクチャがほぼ時代遅れになるほどです。

最高の性能を求める開発者に向けて、YOLO26はYOLOv5とYOLOv7の両方を上回る、画期的な利点をいくつか備えています。

  • エンドツーエンドのNMSフリーデザイン:後処理の非極大値抑制(nms=False)をオプションで省略することで、YOLO26はデプロイを大幅に簡素化し、安定した低レイテンシーを実現します。
  • MuSGDオプティマイザー:Moonshot AIによるLLMの革新に着想を得たこのハイブリッドオプティマイザーは、非常に安定したトレーニングと迅速な収束を実現します。
  • 前例のないエッジ速度:エッジ環境向けに特化して最適化されたNanoモデルは、Distribution Focal Loss(DFL)を削除することで、CPU推論を最大43%高速化します。
  • 優れた精度: ProgLoss + STALなどの新しい損失関数により、小さなオブジェクトの認識精度が大幅に向上し、ドローン映像やロボティクスに最適です。

既存のYOLOv5パイプラインを維持する場合も、最先端のYOLO26を導入する場合も、Ultralytics Platformは現代のコンピュータービジョンで成功するために必要なすべてのツールを提供します。

コントリビューター

コメント