Ultralytics YOLO27:
Get Started

EfficientDetとYOLOX#

最新のコンピュータビジョンパイプラインを設計する際、適切なモデルの選択は、精度とリアルタイムでの実用性の両方を左右する重要な判断です。この技術ガイドでは、ニューラルネットワークの進化における重要な2つのアーキテクチャ、GoogleのEfficientDetとMegviiのYOLOXを詳しく比較します。それぞれの設計パラダイムを分析し、ベンチマーク性能を評価するとともに、新たにリリースされたUltralytics YOLO26などの最先端ソリューションとの比較も行います。

EfficientDetの概要#

Google Brainチームが発表したEfficientDetは、モデルスケーリングに高度に体系化されたアプローチを導入しました。多くのパラメーターを持つ同時代のネットワークより大幅に少ないパラメーターで、高い精度を達成できることを示しました。

EfficientDetの詳細:

アーキテクチャの主な特徴#

EfficientDetはEfficientNetバックボーンを基盤とし、複合スケーリング手法によってネットワークの解像度、深さ、幅を一様に拡大します。代表的な特徴は双方向特徴ピラミッドネットワーク(BiFPN)で、高速かつ効果的なマルチスケール特徴融合を可能にします。異なる入力特徴に学習可能な重みを割り当てることで、BiFPNはより重要な空間情報をネットワークが優先するようにします。

EfficientDetは理論上のFLOPsが非常に少ない一方、TensorFlowエコシステムや古いAutoML構成に依存しているため、変化の速い最新のPyTorchワークフローへの統合が煩雑になる場合があります。さらに、複雑なマルチブランチネットワークのため、最新のYOLOバリアントと比べてトレーニング時のメモリ消費量が予想以上に増えることがあります。

EfficientDetの詳細はこちら

YOLOXの概要#

2年後にリリースされたYOLOXは、従来のYOLOアーキテクチャをアンカーフレームワークに変えることで、学術研究と産業でのデプロイの隔たりを埋めようとしました。

YOLOXの詳細:

アーキテクチャの主な特徴#

YOLOXは物体検出のパラダイムを大幅に簡素化しました。アンカーフリー設計に切り替えることで、データセット固有の複雑なアンカーボックス調整を不要にし、ヒューリスティックなオーバーヘッドを削減しました。また、分類と位置特定のタスクを分離する分離型ヘッドを統合し、収束速度を大幅に向上させました。さらに、SimOTAラベル割り当て戦略を導入し、トレーニング中の正例サンプルの割り当てを動的に最適化しました。

こうした進歩にもかかわらず、YOLOXのリポジトリを管理するには、C++拡張を手動でコンパイルし、複雑な依存関係に対処する必要があることが多く、経験の浅いチームでは迅速なモデルのデプロイが難しくなる場合があります。

YOLOXについて詳しく見る

パフォーマンス比較#

本番環境向けのモデルを評価する際は、平均適合率(mAP)と推論速度のバランスが重要です。以下の表では、標準的なCOCOベンチマークにおいてEfficientDetとYOLOXの各モデル群を直接比較します。

モデルサイズ
(ピクセル)
mAPval
50-95
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
パラメーター
(M)
FLOPs
(B)
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9
性能に関する考察

EfficientDetは大型のd7バリアントで高い精度を達成する一方、YOLOXはGPUハードウェア上で(TensorRT経由で)はるかに優れたレイテンシを実現します。そのため、自動運転やスポーツトラッキングのように高いFPSが求められるアプリケーションに適しています。

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

EfficientDetとYOLOXのどちらを選ぶかは、具体的なプロジェクト要件、デプロイ上の制約、エコシステムの好みによって異なります。

EfficientDetを選ぶタイミング#

EfficientDetが適しているのは、次のような場合です。

  • Google CloudとTPUパイプライン: EfficientDetがネイティブに最適化されている、Google Cloud Vision APIやTPUインフラと緊密に統合されたシステム。
  • 複合スケーリングの研究: ネットワークの深さ、幅、解像度をバランスよくスケーリングする効果の研究に焦点を当てた学術的なベンチマーク。
  • LiteRTによるモバイルデプロイ: Androidまたは組み込みLinuxデバイス向けに、LiteRT(旧称TensorFlow Lite)形式へのエクスポートが特に必要なプロジェクト。

YOLOXを選ぶタイミング#

YOLOXは次のような用途に推奨されます。

  • アンカーフリー検出の研究: 新しい検出ヘッドや損失関数を試す際のベースラインとして、YOLOXのシンプルなアンカーフリーアーキテクチャを使用する学術研究。
  • 超軽量エッジデバイス: YOLOX-Nanoバリアントの極めて小さなフットプリント(パラメーター数0.91M)が重要となる、マイクロコントローラーや旧式のモバイルハードウェアへのデプロイ。
  • SimOTAラベル割り当ての研究: 最適輸送に基づくラベル割り当て戦略と、トレーニングの収束への影響を調査する研究プロジェクト。

Ultralytics (YOLO26)を選ぶ場合#

多くの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験を最適なバランスで提供します。

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

Ultralyticsの強み:YOLO26の紹介#

EfficientDetとYOLOXはそれぞれの時代に大きな飛躍をもたらしましたが、現代のコンピュータービジョンには、より高い汎用性、効率化されたワークフロー、妥協のない速度が求められています。使いやすさ、低いメモリ要件、十分に保守されたエコシステムを重視する開発者には、2026年1月にリリースされたUltralytics YOLO26へのアップグレードを強くおすすめします。

YOLO26はYOLOシリーズにパラダイムシフトをもたらし、YOLOXやEfficientDetなどの旧モデルに見られた制約を体系的に克服しています。

  • エンドツーエンドのNMSフリーデザイン: 高コストなNon-Maximum Suppression (NMS)の後処理が必要なEfficientDetやYOLOXとは異なり、YOLO26はオプションのone-to-oneヘッド(nms=False)を通じて、ネイティブなエンドツーエンド推論をサポートします。これにより、NMSによるレイテンシのボトルネックが解消され、エッジデプロイが大幅に簡素化されます。
  • CPU推論が最大43%高速: 戦略的なアーキテクチャ調整とDFLの削除(Distribution Focal Loss)により、YOLO26は専用GPUのない環境向けに独自に最適化されており、Raspberry PiなどのエッジAIハードウェアでも優れたパフォーマンスを発揮します。
  • MuSGDオプティマイザー: LLMトレーニングの革新(Moonshot AIのKimi K2など)に着想を得て、YOLO26はSGDとMuonを組み合わせたハイブリッド方式を採用しています。これにより、非常に安定したトレーニングと高速な収束が実現し、旧来のTensorFlow推定器を大きく上回ります。
  • ProgLoss + STAL: 高度な損失関数により、小さな物体の認識が大幅に改善されています。これは、YOLOXとEfficientDetの双方にとって歴史的な弱点でした。ドローン分析やIoTでは、特に重要な特性です。
  • 優れた汎用性: EfficientDetとYOLOXはバウンディングボックス検出のみを行いますが、YOLO26はインスタンスセグメンテーション、(Residual Log-Likelihood Estimationを用いた)姿勢推定、回転バウンディングボックス(OBB)をネイティブにサポートします。

効率化されたユーザーエクスペリエンスとトレーニング効率#

YOLOXなどのモデルを使用する際の大きな課題の1つは、トレーニング環境のセットアップです。統合されたUltralytics Python APIを使えば、最先端モデルのトレーニングに必要なコードは数行だけです。また、YOLOモデルには高度に最適化されたデータローダーが備わっており、Transformerを多用するモデルや旧来のマルチブランチネットワークと比べて、CUDAメモリ使用量を大幅に抑えられます。

from ultralytics import YOLO

# 最先端のYOLO26nモデルを読み込みます(nms=FalseでNMSフリー推論を利用できます)
model = YOLO("yolo26n.pt")

# カスタムデータセットでモデルをトレーニングします
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# エッジデプロイ用にモデルをONNXまたはOpenVINOへスムーズにエクスポートします
model.export(format="openvino")

結論:適切な選択をする#

TensorFlowエコシステムに深く組み込まれたレガシーシステムを保守している場合は、特に大規模な複合スケーリングが理論上必要となるシナリオにおいて、EfficientDetが引き続き安定した選択肢となります。一方、レガシーなアンカーフリーのコードベースで純粋な速度が必要な場合は、YOLOXが高速で信頼性の高い検出器として機能します。

ただし、本番環境へ移行する新規プロジェクトには、間違いなくUltralytics YOLO26(またはレガシーエンタープライズのサポート向けに非常に安定したYOLO11)をおすすめします。エンドツーエンドのNMSフリー推論をオプションで利用できるほか、CPU速度が大幅に向上し、OpenVINOやTensorRTなどのプラットフォームを通じたデプロイパイプラインもシームレスです。YOLO26を使うことで、コンピュータービジョンアプリケーションを将来にわたって利用でき、高精度を保ちながら、非常に簡単に保守できます。

コントリビューター

コメント