コンテンツにスキップ

Neural Magic の DeepSparse Engine を使用した YOLO11 推論の最適化

さまざまなハードウェアで物体検出モデル(Ultralytics YOLO11など)をデプロイする場合、最適化などの固有の問題が発生する可能性があります。ここで、Neural MagicのDeepSparse EngineとYOLO11の統合が役立ちます。これにより、YOLO11モデルの実行方法が変わり、CPU上でGPUレベルのパフォーマンスを直接実現できます。

このガイドでは、Neural MagicのDeepSparseを使用してYOLO11をデプロイする方法、推論を実行する方法、およびパフォーマンスをベンチマークして最適化されていることを確認する方法を示します。

SparseML EOL

Neural Magicは 2025 年 1 月に Red Hat に買収されました、およびコミュニティ版の deepsparse, sparseml, sparsezoo、および sparsify ライブラリ。詳細については、掲載されている通知をご覧ください。 Readmeの sparseml GitHubリポジトリ.

Neural MagicのDeepSparse

Neural MagicのDeepSparseの概要

Neural Magic's DeepSparseは、CPU上でのニューラルネットワークの実行を最適化するように設計された推論ランタイムです。スパース性、枝刈り、量子化などの高度な手法を適用して、精度を維持しながら計算需要を大幅に削減します。DeepSparseは、さまざまなデバイスにわたる効率的でスケーラブルなニューラルネットワーク実行のためのアジャイルソリューションを提供します。

Neural MagicのDeepSparseをYOLO11と統合する利点

DeepSparseを使用してYOLO11をデプロイする方法を詳しく説明する前に、DeepSparseを使用する利点について理解しましょう。主な利点には以下が含まれます。

  • 推論速度の向上: 最大525 FPS(YOLO11nの場合)を達成し、従来の方法と比較してYOLO11の推論能力を大幅に高速化します。

推論速度の向上

  • 最適化されたモデル効率: プルーニングと量子化を使用してYOLO11の効率を高め、精度を維持しながら、モデルサイズと計算要件を削減します。

最適化されたモデル効率

  • 標準CPUでの高パフォーマンス: CPU上でGPUのようなパフォーマンスを提供し、さまざまなアプリケーションに対して、よりアクセスしやすく、コスト効率の高いオプションを提供します。

  • 合理化された統合とデプロイ: 画像や動画のアノテーション機能など、YOLO11をアプリケーションに簡単に統合できる、ユーザーフレンドリーなツールを提供します。

  • 様々なモデルタイプのサポート: 標準およびスパース性最適化されたYOLO11モデルの両方と互換性があり、デプロイの柔軟性を高めます。

  • 費用対効果が高くスケーラブルなソリューション:運用コストを削減し、高度な物体検出モデルのスケーラブルなデプロイメントを提供します。

Neural MagicのDeepSparseテクノロジーはどのように機能しますか?

Neural MagicのDeep Sparseテクノロジーは、ニューラルネットワーク計算における人間の脳の効率に着想を得ています。脳から以下の2つの重要な原則を採用しています。

  • スパース性: スパース化のプロセスでは、深層学習ネットワークから冗長な情報を取り除くことで、精度を損なうことなく、より小型で高速なモデルを実現します。この技術により、ネットワークのサイズと計算に必要なリソースを大幅に削減できます。

  • 参照の局所性: DeepSparseは、ネットワークをTensor Columnsに分割する独自の方法を使用します。これらのカラムは、CPUのキャッシュ内に完全に収まるように、深さ方向に実行されます。このアプローチは、脳の効率を模倣し、データ移動を最小限に抑え、CPUのキャッシュ使用率を最大化します。

Neural MagicのDeepSparseテクノロジーの仕組み

カスタムデータセットでトレーニングされたYOLO11のスパースバージョンの作成

SparseZooは、Neural Magicによるオープンソースのモデルリポジトリであり、事前スパース化されたYOLO11モデルチェックポイントのコレクションを提供します。SparseMLはUltralyticsとシームレスに統合されており、ユーザーは簡単なコマンドラインインターフェースを使用して、これらのスパースチェックポイントを特定のデータセットで簡単に微調整できます。

詳細については、Neural MagicのSparseML YOLO11ドキュメントをご覧ください。

使用法:DeepSparseを使用したYOLO11のデプロイ

Neural MagicのDeepSparseを使用したYOLO11のデプロイは、いくつかの簡単なステップで実行できます。使用方法の説明に入る前に、Ultralyticsが提供するYOLO11モデルの範囲を確認してください。これは、プロジェクトの要件に最適なモデルを選択するのに役立ちます。開始方法は次のとおりです。

ステップ1:インストール

必要なパッケージをインストールするには、以下を実行します:

インストール

# Install the required packages
pip install deepsparse[yolov8]

ステップ2:YOLO11をONNX形式にエクスポートする

DeepSparse Engineは、ONNX形式のYOLO11モデルを必要とします。DeepSparseとの互換性を確保するには、モデルをこの形式でエクスポートすることが不可欠です。YOLO11モデルをエクスポートするには、次のコマンドを使用します。

モデルのエクスポート

# Export YOLO11 model to ONNX format
yolo task=detect mode=export model=yolo11n.pt format=onnx opset=13

このコマンドは、 yolo11n.onnx モデルをディスクにエクスポートします。

ステップ 3: 推論のデプロイと実行

YOLO11 モデルが ONNX 形式であれば、DeepSparse を使用して推論をデプロイおよび実行できます。これは、直感的な Python API で簡単に行えます。

推論のデプロイと実行

from deepsparse import Pipeline

# Specify the path to your YOLO11 ONNX model
model_path = "path/to/yolo11n.onnx"

# Set up the DeepSparse Pipeline
yolo_pipeline = Pipeline.create(task="yolov8", model_path=model_path)

# Run the model on your images
images = ["path/to/image.jpg"]
pipeline_outputs = yolo_pipeline(images=images)

ステップ 4: パフォーマンスのベンチマーク

YOLO11モデルがDeepSparse上で最適に動作していることを確認することが重要です。モデルのパフォーマンスをベンチマークして、スループットとレイテンシを分析できます。

ベンチマーク

# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo11n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

ステップ 5: 追加機能

DeepSparse は、画像アノテーションやデータセット評価など、アプリケーションへの YOLO11 の実用的な統合のための追加機能を提供します。

追加機能

# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolo11n.onnx"

# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolo11n.onnx"

annotate コマンドを実行すると、指定した画像が処理され、オブジェクトが検出され、バウンディングボックスと分類を含むアノテーション付きの画像が保存されます。アノテーション付きの画像は、annotation-results フォルダに保存されます。これは、モデルの検出機能の視覚的な表現を提供するのに役立ちます。

画像アノテーション機能

evalコマンドを実行すると、適合率再現率mAP(平均適合率)などの詳細な出力指標が表示されます。これにより、データセットに対するモデルのパフォーマンスを包括的に把握できます。この機能は、特定のユースケースに合わせてYOLO11モデルを微調整および最適化し、高い精度と効率を確保する上で特に役立ちます。

概要

このガイドでは、UltralyticsのYOLO11とNeural MagicのDeepSparse Engineの統合について説明しました。この統合により、CPUプラットフォームでのYOLO11のパフォーマンスがどのように向上し、GPUレベルの効率と高度なニューラルネットワークのスパース性技術が提供されるかを強調しました。

より詳細な情報と高度な使用法については、Neural MagicによるDeepSparseドキュメントをご覧ください。また、YOLO11統合ガイドを調べたり、YouTubeでのウォークスルーセッションを視聴したりすることもできます。

さらに、さまざまなYOLO11統合のより広範な理解については、Ultralytics統合ガイドページにアクセスしてください。ここでは、他のエキサイティングな統合の可能性を見つけることができます。

よくある質問

Neural MagicのDeepSparse Engineとは何ですか?また、YOLO11のパフォーマンスをどのように最適化しますか?

Neural MagicのDeepSparse Engineは、スパース性、プルーニング、量子化などの高度な技術を通じて、CPU上でのニューラルネットワークの実行を最適化するように設計された推論ランタイムです。DeepSparseをYOLO11と統合することにより、標準的なCPU上でGPUのようなパフォーマンスを実現し、精度を維持しながら、推論速度、モデル効率、および全体的なパフォーマンスを大幅に向上させることができます。詳細については、Neural MagicのDeepSparseセクションをご覧ください。

Neural MagicのDeepSparseを使用してYOLO11をデプロイするために必要なパッケージをインストールするにはどうすればよいですか?

Neural MagicのDeepSparseでYOLO11をデプロイするために必要なパッケージのインストールは簡単です。CLIを使用して簡単にインストールできます。実行する必要があるコマンドは次のとおりです。

pip install deepsparse[yolov8]

インストールが完了したら、インストールセクションに記載されている手順に従って、環境をセットアップし、YOLO11でDeepSparseの使用を開始してください。

DeepSparseで使用するために、YOLO11モデルをONNX形式に変換するにはどうすればよいですか?

YOLO11モデルをDeepSparseとの互換に必要なONNX形式に変換するには、次のCLIコマンドを使用します。

yolo task=detect mode=export model=yolo11n.pt format=onnx opset=13

このコマンドは、YOLO11モデル(yolo11n.pt)形式に変換できます(yolo11n.onnx)で、DeepSparse Engineで利用できます。モデルのエクスポートに関する詳細は、 モデルのエクスポートセクション.

DeepSparse EngineでYOLO11のパフォーマンスをベンチマークするにはどうすればよいですか?

DeepSparse上でYOLO11のパフォーマンスをベンチマークすることで、スループットとレイテンシを分析し、モデルが最適化されていることを確認できます。ベンチマークを実行するには、次のCLIコマンドを使用します。

deepsparse.benchmark model_path="path/to/yolo11n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

このコマンドは、重要なパフォーマンス指標を提供します。詳細については、パフォーマンスのベンチマークセクションを参照してください。

物体検出タスクでYOLO11とNeural MagicのDeepSparseを使用すべきなのはなぜですか?

Neural Magic の DeepSparse を YOLO11 と統合すると、いくつかの利点があります。

  • 推論速度の向上: 最大525 FPSを達成し、YOLO11の能力を大幅に高速化します。
  • 最適化されたモデル効率: 精度を維持しながら、モデルサイズと計算ニーズを削減するために、スパース性、プルーニング、および量子化の手法を使用します。
  • 標準CPUでの高パフォーマンス: コスト効率の高いCPUハードウェア上でGPUのようなパフォーマンスを提供します。
  • 合理化された統合: 容易なデプロイと統合のための、ユーザーフレンドリーなツール。
  • 柔軟性: 標準およびスパース性最適化されたYOLO11モデルの両方をサポートします。
  • 費用対効果: 効率的なリソース活用により、運用コストを削減します。

これらの利点についてのより詳細な説明は、Neural MagicのDeepSparseとYOLO11の統合の利点セクションをご覧ください。



📅 1年前に作成 ✏️ 7日前に更新

コメント