Ultralytics YOLO27: ウェイティングリストに登録してください。
Get Started

YOLO26とYOLOv8の比較#

コンピュータービジョンモデルには、精度を損なわずにリアルタイム性能を実現することが求められます。機械学習に携わる開発者にとって、適切なモデルアーキテクチャの選択は重要です。この技術比較では、2023年にリリースされ幅広く採用されているアーキテクチャUltralytics YOLOv8から、2026年1月にリリースされたUltralytics YOLO26への移行を取り上げます。

アーキテクチャ、性能指標、学習手法を比較することで、物体検出、セグメンテーションなどにおいて、アップグレードがどのような利点をもたらすかを示します。

モデルの背景情報とメタデータ#

これらのアーキテクチャの成り立ちを理解すると、それぞれの設計上の選択を把握しやすくなります。どちらのモデルも、ビジョンAIを利用しやすくデプロイしやすいものにすることを目指すUltralyticsが開発しました。

YOLO26の詳細:

YOLOv8の詳細:

アーキテクチャの革新#

YOLOv8からYOLO26への移行では、ネットワークが予測を生成する方法と損失を計算する方法が変わります。

YOLO26:エッジ効率#

YOLO26は、デプロイのボトルネックを解消し、リソースに制約のあるハードウェアで推論速度を最大化するよう設計されています。

  • エンドツーエンドのNMSフリーデザイン: YOLOモデルにYOLOv10が導入したNMSフリートレーニングを基盤に、YOLO26はオプションのone-to-oneヘッド(nms=False)を通じたエンドツーエンド推論をサポートします。Non-Maximum Suppression(NMS)の後処理を省略することで、レイテンシーのばらつきを抑え、厳密なリアルタイム性が求められるアプリケーションのデプロイロジックを簡素化します。
  • DFLの削除: Distribution Focal Loss(DFL)を取り除き、出力ヘッドを簡素化しています。このアーキテクチャ上の選択により、低消費電力のエッジデバイスとの互換性が向上し、ONNXやCoreMLなどのフォーマットへのエクスポートも簡単になります。
  • MuSGD Optimizer: Moonshot AIのKimi K2のような大規模言語モデル (LLMs)で見られる学習の安定性に着想を得て、YOLO26は確率的勾配降下法とMuonを組み合わせたハイブリッド型のMuSGDオプティマイザーを採用しています。これにより、LLMの学習手法をコンピュータービジョンに取り入れ、収束の高速化と学習実行の安定化を実現しています。
  • ProgLoss + STAL: 小さな対象物の認識という難題に対処するため、YOLO26はProgressive Loss (ProgLoss)とSmall-Target-Aware Label Assignment (STAL)を組み合わせて実装しています。これにより小物体検出が向上し、ドローン用途に適したモデルになっています。
タスク固有の改良

YOLO26は、複数のコンピュータービジョン領域に特化した改良も実現しています。セマンティックセグメンテーション損失とマルチスケールプロトを用いてインスタンスセグメンテーションを改善し、Residual Log-Likelihood Estimation (RLE)によって姿勢推定の精度を高め、専用の角度損失によって有向バウンディングボックス (OBB)の境界問題を解決します。

YOLOv8:高い汎用性を備えた主力モデル#

2023年のリリース時、YOLOv8はアンカーフリー設計へ全面的に移行し、新たなベンチマークを確立しました。この設計は、さまざまなデータセットのアスペクト比に対して、より優れた汎化性能を発揮しました。

  • C2fモジュール: 従来のC3モジュールをC2fブロックに置き換え、ネットワークのバックボーン全体で勾配の流れを改善しました。
  • Decoupled Head: YOLOv8は分類とバウンディングボックス回帰を独立して計算するデカップルドヘッドを備えており、平均適合率 (mAP)を向上させています。
  • Task Versatility: さまざまなタスクに対応する統一APIを標準搭載した初期のモデルの1つであり、検出、セグメンテーション、画像分類、姿勢推定、さらに後にはOBBタスクもサポートしました。

パフォーマンス指標とリソース要件#

本番環境向けのモデルを評価する際は、精度、推論速度、モデルサイズのバランスが重要です。YOLO26はすべてのサイズでYOLOv8より高精度であり、パラメーター数とFLOPsが少なく、sスケール以上ではT4 TensorRTのレイテンシも低くなっています。

モデルサイズ
(ピクセル)
mAPval50-95速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
パラメーター
(M)
FLOPs
(B)
YOLO26n64040.938.91.72.45.5
YOLO26s64048.687.22.59.520.9
YOLO26m64053.1220.04.720.468.4
YOLO26l64055.0286.26.224.886.8
YOLO26x64057.5525.811.855.7194.4
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.1
YOLOv8x64053.9479.114.3768.2257.8

注: 強調表示された値は、YOLO26アーキテクチャが前世代モデルを上回るパフォーマンスのバランスと効率の向上を示しています。

分析#

YOLO26は、ほとんどのスケールで同等のYOLOv8モデルより高速なCPU推論を実現します。たとえば、YOLO26nはONNXを使用したCPU上で38.9 msで動作し、YOLOv8nの80.4 msと比べて高速である一方、mAPは37.3から40.9に向上します。このCPU効率の向上は、主にDFLの削除とNMSフリーヘッドによるもので、専用GPUのない環境にYOLO26が適しています。ただし、YOLOv8xは例外で、YOLO26xよりCPU上で高速に動作します(479.1 ms対525.8 ms)。

さらに、YOLO26モデルは各サイズ区分でパラメーター数とFLOPsが少ないため、推論時や学習時のGPUメモリ使用量を抑えられます。

Ultralyticsエコシステムの利点#

AIモデルを選ぶ際に重要となるのが、周辺のインフラです。YOLO26とYOLOv8はいずれも統合されたUltralytics Platformと、共通の開発者エクスペリエンスを利用できます。

  1. Ease of Use: 開発者は数行のコードでモデルの読み込み、学習、エクスポートを行えます。Python APIは、モデルの世代が変わっても一貫しています。
  2. Training Efficiency: Ultralytics YOLOモデルは通常、RT-DETRのようなTransformerモデルより学習時のCUDAメモリ使用量が少なくて済みます。そのため、一般向けハードウェアでもバッチサイズを大きくできます。
  3. Well-Maintained Ecosystem: 継続的なアップデート、厳格なCI/CDパイプライン、Weights & BiasesやTensorRTなどのツールとの深い連携に支えられ、Ultralyticsリポジトリは本番環境に対応しています。
  4. Versatility: 1つのインポートで多様なタスクとデータセットに対応し、追跡、分類、セグメンテーションを同時に必要とする複雑なシステムをサポートします。
簡単なアップグレード

Ultralytics APIは高度に標準化されているため、本番システムをYOLOv8からYOLO26にアップグレードする際は、スクリプト内の文字列"yolov8n.pt"を"yolo26n.pt"に変更するだけで済む場合があります。

実際の用途#

これらのモデルのどちらを選ぶかは、多くの場合、デプロイ上の制約によって決まります。ただし、新規プロジェクトにはYOLO26を推奨します。

エッジコンピューティングとIoTネットワーク#

Raspberry Piへのデプロイや工場内のローカルセンサーなどのエッジ環境では、YOLO26がより優れた選択肢です。CPU速度とオプションのNMSフリーヘッドにより、スマートカメラは後処理のボトルネックを避けながら高フレームレートの動画を処理でき、駐車場管理に役立ちます。

高高度撮影と航空画像#

農業モニタリングやドローンによるインフラ点検では、小物体検出が重要です。YOLO26のProgLoss + STAL実装により、旧世代のYOLOv8などでは見逃す可能性のある小さな害虫やパイプラインの細かな亀裂を検出できます。そのため、VisDroneなどの航空画像データセットを使用した学習に役立ちます。

旧世代のGPUシステム#

YOLOv8は、特定のバウンディングボックス回帰出力と密接に結び付いたシステムや、長期の検証サイクルに固定され、アーキテクチャを容易に移行できないエンタープライズ環境では、引き続き有用です。

ユースケースと推奨事項#

YOLO26とYOLOv8の選択は、プロジェクト固有の要件、デプロイ上の制約、エコシステムの好みによって決まります。

YOLO26を選ぶ場合#

YOLO26は、次のような用途に適しています。

  • NMSを使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
  • CPU-Only Environments: 専用GPUアクセラレーションを備えていないデバイスでは、YOLO26の最大43%高速なCPU推論(YOLO26n対YOLO11n)が大きな優位性をもたらします。
  • 小物体検出: ドローンによる航空画像やIoTセンサー分析など、ProgLossとSTALによって小物体の精度が向上する難易度の高いシナリオに適しています。

YOLOv8を選ぶ場合#

YOLOv8は、次のような場合におすすめです。

  • Versatile Multi-Task Deployment: Ultralyticsエコシステム内で、検出、セグメンテーション、分類、姿勢推定に対応する実績あるモデルが必要なプロジェクトに適しています。
  • 確立済みの本番システム: 安定性と十分なテストが確認されたデプロイパイプラインを備え、すでにYOLOv8アーキテクチャを基盤として構築されている本番環境。
  • 広範なコミュニティとエコシステムのサポート: YOLOv8の豊富なチュートリアル、サードパーティ製ツールとの統合、活発なコミュニティリソースを活用できるアプリケーション。

コード例:使い始める#

以下のPythonコードでは、COCO8データセットでYOLO26モデルを学習し、NMSフリー推論を実行する方法を示します。

from ultralytics import YOLO

# 高効率なYOLO26 Nanoモデルを読み込みます
model = YOLO("yolo26n.pt")

# 標準のCOCO8データセットでトレーニングします
# デフォルトのハイパーパラメーターとデータ拡張が自動的に適用されます
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    device="0",  # 最初のCUDA GPU。CPUでトレーニングするにはdevice="cpu"を使用します
)

# ソース画像に対してエンドツーエンドのNMSフリー推論を実行します
predictions = model("https://ultralytics.com/images/bus.jpg", nms=False)

# 検出結果を可視化します
predictions[0].show()

検討すべきその他のモデル#

YOLO26は推奨されるUltralyticsモデルですが、多様なアプリケーションを開発する場合は、次のモデルも検討できます。

  • YOLO11: YOLO26の直前のモデルです。YOLOv8を改良したもので、現在も本番システムで広く使用されています。
  • RT-DETR: Baiduのリアルタイム物体検出Transformerです。ビジョンタスクにおけるアテンション機構を研究する場合に適していますが、標準的なUltralytics YOLOモデルより学習時に多くのCUDAメモリを必要とします。

クラウド学習、データセットのラベリング、デプロイを一か所で行うには、Ultralytics Platformをご覧ください。

コントリビューター

コメント