Yolo 深圳
深セン
今すぐ参加
用語集

推論エンジン

推論エンジンがUltralytics のような機械学習モデルをリアルタイム展開向けに最適化する仕組みを解説。エッジAIのパフォーマンス向上テクニックを今すぐご覧ください。

推論エンジンは、学習済み機械学習モデルを実行し、 新規データから予測を生成するために設計された 特殊なソフトウェアコンポーネントである。 バックプロパゲーションのような計算集約的なプロセスを通じて パターン学習に焦点を当てる学習フェーズとは異なり、 推論エンジンはモデルデプロイメントと呼ばれる 運用フェーズに厳密に最適化されている。 その主な目的は、スケーラブルなクラウドサーバーであれ、バッテリー駆動のエッジAIデバイスであれ、対象ハードウェア上で推論遅延を最小化しスループットを最大化しながら、可能な限り効率的に計算を実行することです。トレーニングに必要なオーバーヘッドを排除することで、これらのエンジンは複雑なニューラルネットワークをリアルタイムアプリケーションで機能させます。

推論エンジンがパフォーマンスを最適化する方法

トレーニング環境から推論エンジンへの移行では、通常、モデルの構造を効率化するための最適化ステップが複数行われる。モデルが学習する必要がなくなるため、エンジンは勾配更新に必要なデータを破棄でき、モデル重みを事実上固定化できる。 推論エンジンで一般的に用いられる手法には、 複数の演算を単一ステップに統合してメモリアクセスを削減する層融合(レイヤーフュージョン)や、 高精度浮動小数点形式の重みを低精度整数(例:INT8)に変換するモデル量子化が含まれる。

これらの最適化により、Ultralytics 高度なアーキテクチャが、精度を大幅に損なうことなく驚異的な高速で動作します。異なるエンジンは、最大性能を引き出すために特定のハードウェアエコシステム向けに調整されることがよくあります:

  • NVIDIA TensorRT:NVIDIA GPU上でハードウェア固有のカーネルを活用し、ネットワークグラフを最適化することで、高性能な推論を実現します。
  • Intel OpenVINOIntel インテルアーキテクチャ(CPUおよび統合グラフィックスを含む)上でディープラーニングのパフォーマンスを最適化し、エッジコンピューティングに最適です。
  • ONNX : クロスプラットフォームのアクセラレータで、 ONNX 形式のモデルをサポートするクロスプラットフォームアクセラレータであり、 異なるフレームワークとハードウェアバックエンド間のブリッジを提供する。

実際のアプリケーション

推論エンジンは、多くの現代的なAIの利便性の背後で静かに駆動する存在であり、 コンピュータービジョンシステムが その環境に瞬時に反応することを可能にしている。

  1. 自動運転車:自動運転車では、 物体検出モデルが歩行者、交通標識、 その他の車両を数ミリ秒で識別する必要がある。 車載ハードウェア上でローカルに動作する推論エンジンが、 この処理をリアルタイム推論速度で実行することを保証する。 クラウド接続に依存すると危険な遅延が生じるためである。
  2. スマート製造:工場では 産業用IoTカメラ を活用し、組立ライン上の製品を検査します。推論エンジンが映像データを処理し 異常検知を実行、欠陥を即座にフラグ付けします。 この自動化により廃棄物が削減され、生産速度を落とさずに厳格な品質管理が確保されます。

推論エンジン対トレーニングフレームワーク

モデルを作成するために使用されるソフトウェアと、それを実行するために使用されるエンジンを区別することは有用です。 トレーニングフレームワーク(PyTorchのような) PyTorchTensorFlow)は、アーキテクチャの設計、損失の計算、教師あり学習によるパラメータの更新を行うためのツールを提供します。柔軟性とデバッグ機能を優先します。

一方、推論エンジンはトレーニングフレームワークから完成したアーティファクトを受け取り、 実行速度とメモリ効率を優先します。トレーニングフレームワーク内で推論を実行することは可能ですが、 専用エンジンを使用する場合ほど効率的になることは稀です。特に、TensorFlow AppleCore MLなどのツールを介したモバイル端末や組み込みデバイスへのデプロイにおいては顕著です。

YOLO26を用いた推論エンジンの使用

について ultralytics パッケージは推論エンジンの複雑な処理の大部分を抽象化し、ユーザーがシームレスに予測を実行できるようにします。内部では、画像の前処理とモデルの実行を処理します。 スケーリングを検討しているユーザー向けに、 Ultralytics モデルをトレーニングし、様々な推論エンジンと互換性のある最適化された形式にエクスポートするプロセスを簡素化します。

以下の例は、事前学習済みYOLO26モデルを読み込み、画像に対して推論を実行する方法を示しています:

from ultralytics import YOLO

# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")

# Run inference on an image from a URL
# The 'predict' method acts as the interface to the inference process
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加