Ultralytics YOLO26

概要

Ultralytics YOLO26は、リアルタイム物体検出器のYOLOシリーズにおける最新の進化形であり、エッジデバイスや低電力デバイス向けにゼロから設計されました。不要な複雑さを排除した効率的なデザインを採用し、ターゲットを絞った革新的な機能を統合することで、より高速で軽量、かつ導入が容易なモデルを実現しています。

Ultralytics YOLO26 比較プロット

Ultralytics Platformで試す

Ultralytics PlatformでYOLO26モデルを直接体験・実行できます。

YOLO26のアーキテクチャは、3つのコア原則に基づいています。

  • シンプルさ: YOLO26はネイティブなエンドツーエンドモデルであり、非最大値抑制(NMS)を必要とせず直接予測を出力します。この後処理ステップを排除することで、推論が高速かつ軽量になり、現実世界のシステムへの導入が容易になります。この画期的なアプローチは、清華大学のAo Wang氏によってYOLOv10で初めて導入され、YOLO26でさらに発展しました。
  • 導入の効率性: エンドツーエンドの設計により、パイプラインの工程が削減され、統合の簡素化、レイテンシの低減、多様な環境下での導入における堅牢性が大幅に向上しました。
  • 学習の革新: YOLO26では、SGDMuonのハイブリッドであるMuSGDオプティマイザを導入しました。これは、LLM学習におけるMoonshot AIのKimi K2のブレイクスルーに着想を得たものです。このオプティマイザは、安定性と収束速度を向上させ、言語モデルで培われた最適化技術をコンピュータビジョンへと移行させます。
  • タスク固有の最適化: YOLO26では、特定のタスクに向けた改善が行われました。これには、セマンティックセグメンテーション損失や、セグメンテーション向けのマルチスケールプロトモジュール、高精度なポーズ推定のための残差対数尤度推定(RLE)、OBBにおける境界問題を解決するための角度損失を伴う最適化されたデコードなどが含まれます。

これらの革新により、小さな物体に対する精度が高く、導入が容易で、CPU上で最大43%高速に動作するモデルファミリが実現しました。YOLO26は、リソースが制限された環境において、これまでで最も実用的かつ導入しやすいYOLOモデルの一つです。

主な特徴

  • DFLの削除 Distribution Focal Loss (DFL)モジュールは効果的ですが、エクスポートを複雑にし、ハードウェアの互換性を制限することがありました。YOLO26はDFLを完全に削除することで、推論を簡素化し、エッジデバイスや低電力デバイスへの対応範囲を広げました。

  • エンドツーエンドのNMS不要推論 NMSを個別の後処理ステップとして依存する従来の検出器とは異なり、YOLO26はネイティブなエンドツーエンドです。予測が直接生成されるため、レイテンシが低減され、実運用環境への統合がより高速、軽量、かつ信頼性の高いものになります。

  • ProgLoss + STAL 改良された損失関数により検出精度が向上し、特にIoT、ロボティクス、航空画像、その他のエッジアプリケーションで不可欠な小物体認識において大きな改善が見られました。

  • MuSGDオプティマイザ SGDMuonを組み合わせた新しいハイブリッドオプティマイザです。Moonshot AIのKimi K2に着想を得たMuSGDは、LLM学習における高度な最適化手法をコンピュータビジョンに導入し、より安定した学習と高速な収束を実現します。

  • 最大43%高速なCPU推論 エッジコンピューティング向けに特化して最適化されており、YOLO26はCPUでの推論が大幅に高速化されているため、GPUを搭載していないデバイスでもリアルタイム性能を確保できます。

  • インスタンスセグメンテーションの強化 モデルの収束を改善するためのセマンティックセグメンテーション損失を導入し、マルチスケール情報を活用してマスク品質を向上させるアップグレードされたプロトモジュールを採用しました。

  • 高精度ポーズ推定 残差対数尤度推定 (RLE)を統合してキーポイントの局所化精度を高め、デコード処理を最適化することで推論速度を向上させました。

  • OBBデコードの洗練 正方形の物体に対する検出精度を向上させるための専門的な角度損失を導入し、OBBデコードを最適化して境界の不連続性の問題を解決しました。

Ultralytics YOLO26 エンドツーエンド比較プロット


サポートされているタスクとモード

YOLO26は、これまでのUltralytics YOLOリリースで確立された汎用性の高いモデル範囲を基盤としており、様々なコンピュータビジョンのタスクで強化されたサポートを提供します。

モデルファイル名タスク推論 (Inference)検証学習Export
YOLO26yolo26n.pt yolo26s.pt yolo26m.pt yolo26l.pt yolo26x.pt検出
YOLO26-segyolo26n-seg.pt yolo26s-seg.pt yolo26m-seg.pt yolo26l-seg.pt yolo26x-seg.ptインスタンスセグメンテーション
YOLO26-poseyolo26n-pose.pt yolo26s-pose.pt yolo26m-pose.pt yolo26l-pose.pt yolo26x-pose.ptポーズ/キーポイント
YOLO26-obbyolo26n-obb.pt yolo26s-obb.pt yolo26m-obb.pt yolo26l-obb.pt yolo26x-obb.pt方向付き検出
YOLO26-clsyolo26n-cls.pt yolo26s-cls.pt yolo26m-cls.pt yolo26l-cls.pt yolo26x-cls.pt分類

この統合フレームワークにより、YOLO26はリアルタイム検出、セグメンテーション、分類、ポーズ推定、および方向付き物体検出のすべてに適用可能であり、学習、検証、推論、エクスポートがサポートされています。

アーキテクチャのみのバリアント

yolo26-p2.yamlおよびyolo26-p6.yamlは、P2(小物体)またはP6(大入力)検出ヘッドを追加したもので、YAMLアーキテクチャのみとして提供されます。スケール固有の yolo26*-p2.ptyolo26*-p6.pt ウェイトはリリースされていません。YAMLからスケーリングされた設定をインスタンス化(例: YOLO("yolo26n-p6.yaml"))し、必要に応じて学習または微調整を行ってください。


性能メトリクス

性能

See Detection Docs for usage examples with these models trained on COCO, which include 80 pretrained classes.

モデルサイズ
(ピクセル)
mAPval
50-95
mAPval
50-95(e2e)
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
パラメータ
(M)
FLOPs
(B)
YOLO26n64040.940.138.9 ± 0.71.7 ± 0.02.45.4
YOLO26s64048.647.887.2 ± 0.92.5 ± 0.09.520.7
YOLO26m64053.152.5220.0 ± 1.44.7 ± 0.120.468.2
YOLO26l64055.054.4286.2 ± 2.06.2 ± 0.224.886.4
YOLO26x64057.556.9525.8 ± 4.011.8 ± 0.255.7193.9

パラメータおよびFLOPsの値は、Conv層とBatchNorm層を結合し、補助的なone-to-many検出ヘッドを削除する model.fuse() を実行した後のフューズドモデルに対するものです。事前学習済みチェックポイントは完全な学習アーキテクチャを保持しており、より高い数値を示す場合があります。


使用例

このセクションでは、基本的なYOLO26の学習および推論の例を紹介します。これらのモードおよびその他のモードに関する詳細なドキュメントについては、PredictTrainVal、およびExportのドキュメントページを参照してください。

Note that the example below is for YOLO26 Detect models for object detection. For additional supported tasks, see the Segment, Classify, OBB, and Pose docs.

PyTorch の事前学習済み *.pt モデルや設定用 *.yaml ファイルを YOLO() クラスに渡すことで、Pythonでモデルインスタンスを作成できます:

from ultralytics import YOLO

# Load a COCO-pretrained YOLO26n model
model = YOLO("yolo26n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLO26n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
デュアルヘッドアーキテクチャ

YOLO26は、さまざまなデプロイメントシナリオに対応する柔軟性を備えた デュアルヘッドアーキテクチャ を採用しています:

  • One-to-Oneヘッド(デフォルト): NMSなしでエンドツーエンドの予測を行い、画像あたり最大300個の検出結果を (N, 300, 6) の形式で出力します。このヘッドは高速な推論とシンプルなデプロイメントに最適化されています。
  • One-to-Manyヘッド: NMSポストプロセッシングを必要とする従来のYOLO出力を生成し、(N, nc + 4, 8400)nc はクラス数)の形式で出力します。このヘッドは通常、処理コストが増加する代わりに、わずかに高い精度を達成します。

エクスポート、予測、または検証の実行中に、ヘッドを切り替えることができます:

from ultralytics import YOLO

model = YOLO("yolo26n.pt")

# Use one-to-one head (default, no NMS required)
results = model.predict("image.jpg")  # inference
metrics = model.val(data="coco.yaml")  # validation
model.export(format="onnx")  # export

# Use one-to-many head (requires NMS)
results = model.predict("image.jpg", end2end=False)  # inference
metrics = model.val(data="coco.yaml", end2end=False)  # validation
model.export(format="onnx", end2end=False)  # export

選択はデプロイメントの要件次第です。最大限の速度とシンプルさを求めるならone-to-oneヘッドを、精度を最優先するならone-to-manyヘッドを使用してください。

YOLOE-26: オープンボキャブラリーインスタンスセグメンテーション

YOLOE-26は、高性能なYOLO26アーキテクチャとYOLOEシリーズのオープンボキャブラリー機能を統合したものです。テキストプロンプトビジュアルプロンプト、またはゼロショット推論のための プロンプトフリーモード を使用して、あらゆるオブジェクトクラスのリアルタイム検出とセグメンテーションを可能にし、固定カテゴリ学習の制約を効果的に取り除きます。

YOLO26の NMSフリーなエンドツーエンド設計 を活用することで、YOLOE-26は高速なオープンワールド推論を実現します。これにより、対象オブジェクトが広範かつ進化し続ける動的な環境におけるエッジアプリケーションにとって、強力なソリューションとなります。

性能

See YOLOE Docs for usage examples with these models trained on Objects365v1, GQA and Flickr30k datasets.

モデルサイズ
(ピクセル)
プロンプトタイプmAPminival
50-95(e2e)
mAPminival
50-95
mAPrmAPcmAPfパラメータ
(M)
FLOPs
(B)
YOLOE-26n-seg640テキスト/ビジュアル23.7 / 20.924.7 / 21.920.5 / 17.624.1 / 22.326.1 / 22.44.86.0
YOLOE-26s-seg640テキスト/ビジュアル29.9 / 27.130.8 / 28.623.9 / 25.129.6 / 27.833.0 / 29.913.121.7
YOLOE-26m-seg640テキスト/ビジュアル35.4 / 31.335.4 / 33.931.1 / 33.434.7 / 34.036.9 / 33.827.970.1
YOLOE-26l-seg640テキスト/ビジュアル36.8 / 33.737.8 / 36.335.1 / 37.637.6 / 36.238.5 / 36.132.388.3
YOLOE-26x-seg640テキスト/ビジュアル39.5 / 36.240.6 / 38.537.4 / 35.340.9 / 38.841.0 / 38.869.9196.7

使用例

YOLOE-26は、テキストベースおよび視覚的なプロンプトの両方をサポートしています。プロンプトの使用は簡単で、以下に示すようにpredictメソッドに渡すだけです:

テキストプロンプトを使用すると、テキストによる記述を通じて検出したいクラスを指定できます。以下のコードは、YOLOE-26を使用して画像内の人物とバスを検出する方法を示しています:

from ultralytics import YOLO

# Initialize model
model = YOLO("yoloe-26l-seg.pt")  # or select yoloe-26s/m-seg.pt for different sizes

# Set text prompt to detect person and bus. You only need to do this once after you load the model.
model.set_classes(["person", "bus"])

# Run detection on the given image
results = model.predict("path/to/image.jpg")

# Show results
results[0].show()

プロンプトテクニック、ゼロからのトレーニング、および完全な使用例の詳細については、**YOLOE Documentation**をご覧ください。

引用と謝辞

Ultralytics YOLO26の公開について

Ultralyticsは、モデルが急速に進化しているため、YOLO26に関する正式な研究論文を公開していません。その代わり、最先端のモデルを提供し、使いやすくすることに重点を置いています。YOLOの機能、アーキテクチャ、および使用法に関する最新の更新については、GitHubリポジトリおよびドキュメントをご覧ください。

YOLO26またはその他のUltralyticsソフトウェアを業務で使用する場合は、以下のように引用してください:

引用
@software{yolo26_ultralytics,
  author = {Glenn Jocher and Jing Qiu},
  title = {Ultralytics YOLO26},
  version = {26.0.0},
  year = {2026},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

DOI保留中。YOLO26は、AGPL-3.0ライセンスおよびEnterpriseライセンスの下で利用可能です。


FAQ

YOLO11と比較したYOLO26の主な改善点は何ですか?

  • DFLの削除: エクスポートを簡素化し、エッジデバイスとの互換性を拡大
  • エンドツーエンドのNMSフリー推論: NMSを排除し、より高速でシンプルなデプロイメントを実現
  • ProgLoss + STAL: 特に小さなオブジェクトに対する精度を向上
  • MuSGDオプティマイザ: SGDとMuon(MoonshotのKimi K2に着想を得た)を組み合わせ、より安定した効率的なトレーニングを実現
  • CPU推論が最大43%高速化: CPUのみのデバイスで大幅なパフォーマンス向上

YOLO26はどのようなタスクをサポートしていますか?

YOLO26は統合モデルファミリーであり、複数のコンピュータビジョンのタスクをエンドツーエンドでサポートします:

各サイズバリエーション(n, s, m, l, x)は、すべてのタスクをサポートしており、さらにYOLOE-26を介したオープンボキャブラリバージョンも利用可能です。

YOLO26がエッジデプロイメント向けに最適化されている理由は?

YOLO26は、以下の特徴により最先端のエッジパフォーマンスを提供します:

  • CPU推論が最大43%高速化
  • モデルサイズとメモリフットプリントの削減
  • 互換性のために簡素化されたアーキテクチャ(DFLおよびNMSなし)
  • TensorRT、ONNX、CoreML、TFLite、OpenVINOを含む柔軟なエクスポート形式

YOLO26を始めるにはどうすればよいですか?

YOLO26モデルは2026年1月14日にリリースされ、ダウンロード可能です。ultralyticsパッケージをインストールまたは更新し、モデルをロードしてください:

from ultralytics import YOLO

# Load a pretrained YOLO26 nano model
model = YOLO("yolo26n.pt")

# Run inference on an image
results = model("image.jpg")

トレーニング、バリデーション、エクスポートの手順については、使用例セクションを参照してください。

コメント