Link to this sectionYOLOv5とYOLOv10の比較#
リアルタイム・コンピュータビジョンの分野は、ここ数年で指数関数的に成長しており、様々なアーキテクチャが最新ハードウェアで可能なことの限界を押し広げています。最先端のアーキテクチャを評価する際、YOLOv5とYOLOv10の比較は、物体検出の領域における重要な進化のステップを浮き彫りにします。本技術解説では、両者のアーキテクチャのパラダイム、パフォーマンスのトレードオフ、そして開発者が本番環境でこれらのツールをどのように活用できるかを深掘りします。
Link to this sectionアーキテクチャの深掘り#
これらのモデル間の構造的な違いを理解することは、現実世界で効率的に展開するために不可欠です。
Link to this sectionUltralytics YOLOv5:業界標準#
Ultralyticsによって導入されたYOLOv5は、その比類なきスピード、精度、そしてアクセシビリティのバランスで長年認知されてきました。
- 著者: Glenn Jocher
- 組織:Ultralytics
- 日付:2020年6月26日
- GitHub: YOLOv5 リポジトリ
- ドキュメント: YOLOv5 Docs
YOLOv5は、深く最適化されたCSPDarknetバックボーンと組み合わせたアンカーベースの検出メカニズムを採用しています。このアーキテクチャは、事実上すべての推論エンジンでサポートされている標準的な演算に大きく依存しているため、非常に汎用性が高いのが特徴です。その最大の強みは、洗練されたユーザーエクスペリエンス、シンプルなAPI、そして広範なドキュメントを提供するUltralytics Python SDKにあります。さらに、トランスフォーマーベースのモデルと比較してメモリ要件が低いため、コンシューマー向けGPUでもVRAMのオーバーヘッドを抑えながら迅速にトレーニング可能です。
Link to this sectionYOLOv10:パラダイムの進化#
清華大学の研究者らによって開発されたYOLOv10は、以前のアーキテクチャで見られた特定のレイテンシのボトルネックに対処することを目指しました。
- 著者:Ao Wang, Hui Chen, Lihao Liu 他
- 組織:清華大学
- 日付:2024-05-23
- ArXiv: 2405.14458
- GitHub: YOLOv10 リポジトリ
- ドキュメント: YOLOv10 Docs
YOLOv10の決定的な特徴は、NMS(Non-Maximum Suppression)を必要としないネイティブな設計です。トレーニング中に一貫したデュアルアサインメントを使用することで、推論時のNMS後処理が不要になります。この理論上のレイテンシ削減は、強力なNVIDIA TensorRTアクセラレーションを備えたハイエンドハードウェアでの展開には非常に有益ですが、エッジデバイスには構造的な複雑さをもたらす可能性があります。
YOLOv10には興味深いアーキテクチャ上の新規性がありますが、YOLOv5や新しいYOLO26のようなUltralyticsモデルは、Ultralytics Platform内でネイティブにサポートされており、優れたトレーニング効率、自動ハイパーパラメータ進化、および豊富なエクスポートオプションをすぐに利用できます。
Link to this sectionパフォーマンス分析#
これらのモデルを比較する場合、精度(mAP)と計算コスト(レイテンシおよびパラメータ)のバランスが最適なユースケースを決定します。以下は、COCO datasetにおける技術的なパフォーマンス比較です。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメータ (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
YOLOv10は、モダナイズされた効率と精度重視のモデル設計を活用し、同等のサイズスケールで明らかに高いmAP50-95を達成しています。しかし、YOLOv5は特にNanoおよびSmallティアで非常に競争力のあるレイテンシを維持しており、NVIDIA Jetsonシリーズのような制約のある組み込み環境や、OpenVINOを介した標準的なCPUにおいて非常に信頼性が高くなっています。
Link to this sectionトレーニング方法論とエコシステム#
モデルの価値は、それを取り巻くエコシステムと深く結びついています。Ultralyticsは、非常に幅広いタスクをサポートする、非常に整備されたエコシステムを維持しています。YOLOv10は2Dの物体検出に特化していますが、Ultralyticsはインスタンスセグメンテーション、画像分類、姿勢推定、および回転バウンディングボックス(OBB)をネイティブにサポートしています。
さらに、Ultralyticsモデルのトレーニングは、競合するトランスフォーマーベースの手法よりもメモリオーバーヘッドが大幅に低く、開発サイクルを迅速かつ費用対効果の高いものに保ちます。
Link to this sectionシームレスなコード実行#
トレーニング、検証、モデルのエクスポートは単一のAPIに統合されています。文字列を変更するだけでモデルを切り替えることが可能です。
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model for baseline testing
model_v5 = YOLO("yolov5s.pt")
# Load a YOLOv10 model for comparison
model_v10 = YOLO("yolov10s.pt")
# Train the model on the COCO8 dataset efficiently
results = model_v5.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device="0", # Automatically utilizes PyTorch CUDA acceleration
batch=16,
)
# Export to ONNX for CPU inference deployment
model_v5.export(format="onnx", simplify=True)Link to this sectionユースケースと推奨事項#
YOLOv5とYOLOv10のどちらを選択するかは、プロジェクトの特定の要件、展開の制約、およびエコシステムの好みによって異なります。
Link to this sectionYOLOv5を選択すべき場合#
YOLOv5は次の場合に強力な選択肢となります:
- 実証済みの本番システム: YOLOv5の長期にわたる安定性の実績、広範なドキュメント、および膨大なコミュニティサポートが重視される既存のデプロイ環境。
- リソースが制限されたトレーニング: GPUリソースが限られており、YOLOv5の効率的なトレーニングパイプラインと低いメモリ要件が有利に働く環境。
- 広範なエクスポート形式のサポート: ONNX、TensorRT、CoreML、TFLiteを含む多くのフォーマット全体でのデプロイが必要なプロジェクト。
Link to this sectionYOLOv10を選択すべき場合#
YOLOv10は以下の場合に推奨されます。
- NMSフリーのリアルタイム検出: Non-Maximum Suppression(NMS)を使用しないエンドツーエンド検出のメリットを享受し、デプロイの複雑さを軽減できるアプリケーション。
- バランスの取れた速度と精度のトレードオフ: さまざまなモデルスケール全体で、推論速度と検出精度の強力なバランスを必要とするプロジェクト。
- 一貫したレイテンシが求められるアプリケーション: roboticsや自律システムなど、予測可能な推論時間が不可欠なデプロイ環境。
Link to this sectionUltralytics (YOLO26) を選択すべき時#
ほとんどの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験の最良の組み合わせを提供します。
- NMSフリーのエッジ展開: Non-Maximum Suppression後処理の複雑さを伴わずに、一貫した低レイテンシの推論が求められるアプリケーション。
- CPUのみの環境: GPUアクセラレーションを利用できないデバイスにおいて、YOLO26の最大43%高速なCPU推論が決定的な利点となる場合。
- 小さな物体の検出: aerial drone imageryやIoTセンサー分析のような困難なシナリオで、ProgLossとSTALが微小な物体の検出精度を大幅に向上させる場合。
Link to this section未来:Ultralytics YOLO26#
YOLOv5がアクセシビリティに革命をもたらし、YOLOv10がNMSフリーアーキテクチャの限界を押し広げた一方で、最先端技術は進化し続けています。新しいプロジェクトには、2026年1月にリリースされた最先端のUltralytics YOLO26を強く推奨します。
YOLO26は、Ultralyticsエコシステムの信頼性と画期的な進歩を融合させています:
- エンドツーエンドのNMSフリー設計: UltralyticsフレームワークにNMSフリーのパラダイムを直接組み込むことで、YOLO26はデプロイを簡素化し、より低いレイテンシを保証します。
- 最大43%高速なCPU推論: Distribution Focal Loss(DFL)の削除により、YOLO26はGPUのないエッジデバイス上で驚くほど高速に動作します。
- MuSGDオプティマイザー: Moonshot AIによるLLMトレーニングの革新から着想を得たMuSGDオプティマイザーは、前例のない安定性と迅速な収束を提供します。
- ProgLoss + STAL: これらの新しい損失関数は、ドローン画像やロボット工学などの分野で不可欠な、小さな物体の認識精度を劇的に向上させます。
YOLO26の管理、トレーニング、および展開は、Ultralytics Platformを介して直接行うことができます。
Link to this section結論#
YOLOv5とYOLOv10の選択は、多くの場合、特定のプロジェクトの制約に基づきます。YOLOv10は、研究者やRAWのGPUスループットを活用するアプリケーションに対して優れたmAPを提供します。一方で、YOLOv5は標準的なデプロイメントにおいて、揺るぎない高い互換性を備えた主力モデルであり続けています。
しかし、コンピュータビジョンの分野は動的です。最高のパフォーマンスバランス、汎用性、使いやすさを最大限に引き出すために、開発者はUltralytics YOLO26に注目すべきです。これは、NMSフリー推論のスピードと、堅牢で文書化されたUltralyticsエコシステムを統合しており、ビジョンAIソリューションが将来にわたって有効であることを保証します。専門的なユースケースについては、開発者は一般的な堅牢性のためにYOLO11を、あるいはトランスフォーマーベースの精度のためにRT-DETRを検討することも可能です。