Ultralytics YOLO27:
Ultralytics用語集に戻る

ONNX (Open Neural Network Exchange)

オープンニューラルネットワーク交換(ONNX)形式を確認します。高速なクロスプラットフォームデプロイメントとハードウェア最適化のために、Ultralytics YOLO26をONNXへエクスポートする方法を学びます。

**ONNX(オープンニューラルネットワーク交換)**は、機械学習モデルを表現するために設計されたオープンソース形式であり、さまざまなAIフレームワークやツール間の相互運用性を実現します。深層学習向けの汎用トランスレーターとして機能し、開発者はPyTorch、TensorFlow、Scikit-learnなどの1つのフレームワークでモデルを構築し、推論に最適化された別の環境へシームレスにデプロイできます。共通のオペレーターセットと標準ファイル形式を定義することで、ONNXは、研究から本番環境へモデルを移行する際に従来必要とされていた複雑なカスタム変換スクリプトを不要にします。この柔軟性は、強力なクラウドGPUでトレーニングを行いながら、エッジデバイス、モバイル端末、Webブラウザーなど多様なハードウェアをデプロイ先とする現代のAIワークフローにおいて重要です。

現代のAIにおけるONNXの役割#

急速に進化する人工知能の分野では、研究者やエンジニアが開発ライフサイクルの段階ごとに異なるツールを使用することがよくあります。データサイエンティストは実験やトレーニングにおけるPyTorchの柔軟性を好む一方で、本番環境のエンジニアはデプロイ用にTensorRTやOpenVINOの最適化された性能を必要とします。標準的な交換形式がなければ、これらのエコシステム間でモデルを移行することは困難で、エラーも発生しやすくなります。

ONNXは、計算グラフの共通定義を提供することで、このギャップを埋めます。モデルをONNXにエクスポートすると、ネットワーク構造(レイヤー、接続)とパラメーター(重み、バイアス)をフレームワークに依存しない方法で取得した形式にシリアライズされます。これにより、ONNX Runtimeなど、ハードウェアアクセラレーションに特化して調整された推論エンジンが、Linux、Windows、macOS、Android、iOSなど複数のプラットフォーム上でモデルを効率的に実行できます。

ONNXを使用する主なメリット#

オープンニューラルネットワーク交換形式を採用することで、AIプロジェクトにいくつかの戦略的なメリットがもたらされます。

  • フレームワークの相互運用性: 開発者は、単一のエコシステムに固定されることなく、フレームワークを切り替えられます。使いやすいUltralytics Python APIを使用してモデルをトレーニングし、C++アプリケーションやWebベースのJavaScript環境で使用できるようにエクスポートできます。
  • ハードウェア最適化: 多くのハードウェアメーカーは、ONNXと連携する専用の実行プロバイダーを提供しています。つまり、1つの.onnxファイルを、OpenVINOやCoreMLなどのツールを使用して、NVIDIA GPU、Intel CPU、モバイルNPU(ニューラルプロセッシングユニット)上でアクセラレーションできます。
  • 高速な推論: ONNX Runtimeは、ノード融合や定数畳み込みなどのグラフ最適化を適用し、推論レイテンシを大幅に短縮できます。これは、自動運転車や高速製造ラインなどのリアルタイムアプリケーションに不可欠です。
  • デプロイの簡素化: トレーニングフレームワークごとに個別のデプロイパイプラインを維持する代わりに、エンジニアリングチームは納品形式としてONNXを標準化し、ModelOpsプロセスを効率化できます。

実世界での利用例#

ONNXは汎用性が高いため、さまざまな業界で広く利用されています。ここでは、その応用例を2つ紹介します。

1. モバイルデバイスでのエッジAI#

リアルタイムの作物状態モニタリング向けに設計されたモバイルアプリケーションを考えてみます。モデルは、植物画像の大規模なデータセットを使用して、強力なクラウドサーバー上でトレーニングされる場合があります。しかし、アプリは農家のスマートフォン上でオフライン動作する必要があります。トレーニング済みモデルをONNXにエクスポートすることで、開発者はONNX Runtime Mobileを使用してモデルをモバイルアプリに統合できます。これにより、インターネット接続がなくても、スマートフォンのプロセッサーで物体検出をローカルに実行し、害虫や病気を即座に特定できます。

2. クロスプラットフォームWeb推論#

Eコマースでは、「バーチャル試着」機能が姿勢推定を使用して、ユーザーのWebカメラ映像に衣服を重ね合わせることがあります。このモデルのトレーニングはPythonで行われる場合がありますが、デプロイ先はWebブラウザーです。ONNXを使用すると、モデルを変換し、ONNX Runtime Webを介してユーザーのブラウザー上で直接実行できます。これにより、クライアントのデバイス性能(WebGLまたはWebAssembly)を活用してコンピュータービジョンタスクを実行し、動画データがユーザーのコンピューターから外部へ送信されないため、スムーズでプライバシーを保護した体験を実現できます。

関連用語との比較#

ONNXと他のモデル形式およびツールとの違いを理解しておくと役立ちます。

  • TensorRTとの比較: ONNXが交換形式であるのに対し、TensorRTはNVIDIA GPU専用の推論エンジン兼オプティマイザーです。一般的なワークフローでは、まずモデルをONNXにエクスポートし、次にそのONNXファイルをTensorRTに解析させて、NVIDIAハードウェア上で最大のスループットを実現します。
  • TensorFlow SavedModelとの比較: SavedModelはTensorFlowのネイティブシリアライズ形式です。Googleエコシステム内では堅牢ですが、ONNXほど広く互換性があるわけではありません。より幅広いプラットフォームをサポートするために、SavedModelをONNXに変換するツールがよく利用されます。
  • CoreMLとの比較: CoreMLは、Appleのオンデバイス機械学習向けフレームワークです。両者は異なるものですが、iPhoneやiPad上で効率的に実行するために、モデルをPyTorchからONNXへ、さらにONNXからCoreMLへ(または直接)変換することがよくあります。

UltralyticsでONNXにエクスポートする#

Ultralyticsエコシステムでは、YOLO26などの最先端モデルをONNX形式に変換するプロセスが簡素化されています。エクスポート機能はライブラリに直接組み込まれており、複雑なグラフ走査とオペレーターのマッピングを自動的に処理します。

次の例では、デプロイ用に事前トレーニング済みのUltralytics YOLO26モデルをONNX形式へエクスポートする方法を示します。

from ultralytics import YOLO

# Load the YOLO26n model (Nano version recommended for edge deployment)
model = YOLO("yolo26n.pt")

# Export the model to ONNX format
# The 'dynamic' argument enables variable input sizes
path = model.export(format="onnx", dynamic=True)

print(f"Model exported successfully to: {path}")

エクスポート後、この.onnxファイルは、Ultralytics Platformでの管理に利用したり、ONNX Runtimeを使用してエッジデバイスに直接デプロイしたりできます。これにより、ほぼあらゆる環境で高性能なコンピュータービジョンを利用できるようになります。

Explore solutions

航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像から農業、水産業、環境モニタリング、保全、地理空間分析向けのリアルタイムなインサイトを生成します。
詳細を見る
航空宇宙におけるコンピュータビジョン

航空宇宙におけるコンピュータビジョン

Ultralytics YOLOモデルを使用して、ビジョンAIを空中モニタリングに導入します。コンピュータビジョンソリューションで、ドローン、航空宇宙ワークフロー、環境保護、および地理空間産業を強力にサポートします。
詳細を見る

Ultralytics YOLOモデルであらゆるサイトを保護します。ビジョンAIは、境界モニタリング、脅威検出、ナンバープレート認識、職場安全をサポートします。
詳細を見る
ロボティクスのコンピュータービジョン

ロボティクスのコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現します。ロボティクスのVision AIにより、自律ナビゲーション、認識、物体追跡、リアルタイム制御を実現します。
詳細を見る
物流のコンピュータービジョン

物流のコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化します。Vision AIにより、荷物検査、仕分け、車両追跡、倉庫の安全性に関するリアルタイム監視を実現します。
詳細を見る
小売のコンピュータービジョン

小売のコンピュータービジョン

Ultralytics YOLOモデルで小売を再構築します。Vision AIにより、在庫追跡、棚監視、待ち行列管理、より高度な顧客インサイトを実現します。
詳細を見る
ヘルスケア向けコンピュータービジョン

ヘルスケア向けコンピュータービジョン

Ultralytics YOLOモデルでヘルスケアソリューションを構築しましょう。ヘルスケア向けVision AIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳細を見る
製造業向けコンピュータービジョン

製造業向けコンピュータービジョン

Ultralytics YOLOモデルで製造業を最適化しましょう。Vision AIは、品質管理、欠陥検出、PPE遵守、組立ラインの自動化を推進します。
詳細を見る
自動車分野のコンピュータビジョン

自動車分野のコンピュータビジョン

Ultralytics YOLOモデルで自動車分野にコンピュータビジョンを適用します。ビジョンAIにより、道路の安全性、運転支援、車両自動化を向上させ、よりスマートな道路を実現します。
詳細を見る
農業分野のコンピュータビジョン

農業分野のコンピュータビジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入します。作物のモニタリング、家畜の追跡、精密農業を支援し、より高くスマートな収穫量を実現します。
詳細を見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像から農業、水産業、環境モニタリング、保全、地理空間分析向けのリアルタイムなインサイトを生成します。
詳細を見る
航空宇宙におけるコンピュータビジョン

航空宇宙におけるコンピュータビジョン

Ultralytics YOLOモデルを使用して、ビジョンAIを空中モニタリングに導入します。コンピュータビジョンソリューションで、ドローン、航空宇宙ワークフロー、環境保護、および地理空間産業を強力にサポートします。
詳細を見る

Ultralytics YOLOモデルであらゆるサイトを保護します。ビジョンAIは、境界モニタリング、脅威検出、ナンバープレート認識、職場安全をサポートします。
詳細を見る
ロボティクスのコンピュータービジョン

ロボティクスのコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現します。ロボティクスのVision AIにより、自律ナビゲーション、認識、物体追跡、リアルタイム制御を実現します。
詳細を見る
物流のコンピュータービジョン

物流のコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化します。Vision AIにより、荷物検査、仕分け、車両追跡、倉庫の安全性に関するリアルタイム監視を実現します。
詳細を見る
小売のコンピュータービジョン

小売のコンピュータービジョン

Ultralytics YOLOモデルで小売を再構築します。Vision AIにより、在庫追跡、棚監視、待ち行列管理、より高度な顧客インサイトを実現します。
詳細を見る
ヘルスケア向けコンピュータービジョン

ヘルスケア向けコンピュータービジョン

Ultralytics YOLOモデルでヘルスケアソリューションを構築しましょう。ヘルスケア向けVision AIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳細を見る
製造業向けコンピュータービジョン

製造業向けコンピュータービジョン

Ultralytics YOLOモデルで製造業を最適化しましょう。Vision AIは、品質管理、欠陥検出、PPE遵守、組立ラインの自動化を推進します。
詳細を見る
自動車分野のコンピュータビジョン

自動車分野のコンピュータビジョン

Ultralytics YOLOモデルで自動車分野にコンピュータビジョンを適用します。ビジョンAIにより、道路の安全性、運転支援、車両自動化を向上させ、よりスマートな道路を実現します。
詳細を見る
農業分野のコンピュータビジョン

農業分野のコンピュータビジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入します。作物のモニタリング、家畜の追跡、精密農業を支援し、より高くスマートな収穫量を実現します。
詳細を見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像から農業、水産業、環境モニタリング、保全、地理空間分析向けのリアルタイムなインサイトを生成します。
詳細を見る
航空宇宙におけるコンピュータビジョン

航空宇宙におけるコンピュータビジョン

Ultralytics YOLOモデルを使用して、ビジョンAIを空中モニタリングに導入します。コンピュータビジョンソリューションで、ドローン、航空宇宙ワークフロー、環境保護、および地理空間産業を強力にサポートします。
詳細を見る

Ultralytics YOLOモデルであらゆるサイトを保護します。ビジョンAIは、境界モニタリング、脅威検出、ナンバープレート認識、職場安全をサポートします。
詳細を見る
ロボティクスのコンピュータービジョン

ロボティクスのコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現します。ロボティクスのVision AIにより、自律ナビゲーション、認識、物体追跡、リアルタイム制御を実現します。
詳細を見る
物流のコンピュータービジョン

物流のコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化します。Vision AIにより、荷物検査、仕分け、車両追跡、倉庫の安全性に関するリアルタイム監視を実現します。
詳細を見る
小売のコンピュータービジョン

小売のコンピュータービジョン

Ultralytics YOLOモデルで小売を再構築します。Vision AIにより、在庫追跡、棚監視、待ち行列管理、より高度な顧客インサイトを実現します。
詳細を見る
ヘルスケア向けコンピュータービジョン

ヘルスケア向けコンピュータービジョン

Ultralytics YOLOモデルでヘルスケアソリューションを構築しましょう。ヘルスケア向けVision AIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳細を見る
製造業向けコンピュータービジョン

製造業向けコンピュータービジョン

Ultralytics YOLOモデルで製造業を最適化しましょう。Vision AIは、品質管理、欠陥検出、PPE遵守、組立ラインの自動化を推進します。
詳細を見る
自動車分野のコンピュータビジョン

自動車分野のコンピュータビジョン

Ultralytics YOLOモデルで自動車分野にコンピュータビジョンを適用します。ビジョンAIにより、道路の安全性、運転支援、車両自動化を向上させ、よりスマートな道路を実現します。
詳細を見る
農業分野のコンピュータビジョン

農業分野のコンピュータビジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入します。作物のモニタリング、家畜の追跡、精密農業を支援し、より高くスマートな収穫量を実現します。
詳細を見る

AIの未来を一緒に築きましょう!

機械学習の未来への歩みを始めましょう