Intel OpenVINO上での推論用にUltralytics YOLOv8をエクスポートし、最適化する。

ヌヴォラ・ラディ

2 min read

2024年5月24日

UltralyticsのYOLOv8モデルをOpenVINOを使って推論用に最適化しましょう。ガイドに従って、PyTorchモデルをONNXに変換し、リアルタイムアプリケーション用に最適化してください。

このブログポストでは、 OpenVINOを使用した推論のために、事前学習済みまたはカスタム学習済みの Ultralytics YOLOv8モデルをエクスポートし、最適化する方法をご紹介します。CPUであれGPUであれ、Intelベースのシステムを使用している場合、このガイドでは、最小限の労力でモデルを大幅に高速化する方法を紹介します。

なぜOpenVINOでYOLOv8を最適化するのか?

YOLOv8モデルをOpenVINOで最適化することにより、推論タスクにおいて、特にIntel CPUを使用している場合、最大3倍のスピードアップが可能です。この性能向上は、物体検出から セグメンテーション、セキュリティシステムに至るまで、リアルタイム・アプリケーションにおいて大きな違いをもたらします。

YOLOv8モデルをエクスポートして最適化する手順

プロセスを理解する

まず最初に、プロセスを分解しましょう。PyTorchモデルをONNXに変換し、OpenVINOを使って最適化する。このプロセスにはいくつかの簡単なステップがあり、TensorFlow、PyTorch、Caffe、ONNXなど様々なモデルやフォーマットに適用できます。

モデルのエクスポート

Ultralyticsのドキュメントを見ると、YOLOv8モデルをエクスポートするには、Ultralyticsフレームワークのエクスポートメソッドを使用することがわかります。この方法により、モデルをPyTorchからONNXに変換し、最後にOpenVINO用に最適化することができます。その結果、Intelの強力なハードウェアを活用することで、モデルの実行速度が大幅に向上しました。

依存関係のインストール

エクスポート・スクリプトを実行する前に、必要な依存関係がすべてインストールされていることを確認する必要があります。これには、Ultralyticsライブラリ、ONNX、OpenVINOが含まれます。これらのパッケージのインストールは、Pythonパッケージのインストーラであるpipを使って簡単に行うことができます。

エクスポート・スクリプトの実行

環境がセットアップされたら、エクスポートスクリプトを実行できます。このスクリプトはPyTorchモデルをONNXに変換し、OpenVINOに変換します。このプロセスは簡単で、1つの関数を呼び出してエクスポートを処理します。Ultralyticsフレームワークでは、モデルの変換と最適化が簡単に行えるため、最小限の手間で最高のパフォーマンスを得ることができます。

__wf_reserved_inherit
図1.エクスポートスクリプトの実行方法を説明するニコライ・ニールセン

パフォーマンスの比較

エクスポート後、元のモデルと最適化されたモデルのパフォーマンスを比較することが重要です。両方のモデルの推論時間をベンチマークすることで、パフォーマンスの向上がはっきりとわかります。通常、OpenVINOモデルは元のPyTorchモデルと比較して推論時間が大幅に短縮されます。これは特に大きなモデルで顕著です。

実際の応用と利点

OpenVINOでYOLOv8モデルを最適化することは、リアルタイム処理を必要とするアプリケーションに特に有益です。以下はその例です:

  • セキュリティシステム
    ‍ リアルタイムの物体検知により、警備員に即座に警告を発し、安全性と対応力を高めることができる。
  • 自動運転車より速い推論速度により、自律走行システムの応答性が向上し、より安全で信頼性の高いものとなる。
  • ヘルスケア診断ツール用の迅速な画像処理は、より迅速な結果を提供し、タイムリーな介入を可能にすることで、命を救うことができる。

これらの最適化を実施することで、パフォーマンスを向上させるだけでなく、アプリケーションの信頼性と効率性を高めることができます。これにより、ユーザー・エクスペリエンスが向上し、生産性が向上し、より革新的なソリューションが実現します。

まとめ

YOLOv8モデルをOpenVINO用にエクスポートして最適化することは、インテルハードウェアを活用してより高速で効率的なAIアプリケーションを実現する強力な方法です。いくつかの簡単なステップを踏むだけで、モデルのパフォーマンスを変換し、実世界のシナリオに効果的に適用することができます。

Ultralyticsのチュートリアルやガイドをチェックして、AIプロジェクトを強化してください。 GitHub リポジトリにアクセスし、Ultralytics コミュニティに参加して、より多くの洞察とアップデートをお楽しみください。一緒にイノベーションを起こしましょう!

モデルを最適化することは、単にスピードを上げることではなく、新たな可能性を引き出し、AIソリューションが堅牢で、効率的で、将来に備えることができるようにすることであることを忘れてはならない。 

AIの未来
を一緒に作りましょう!

機械学習の未来への旅を始めよう

無料で始める
クリップボードにコピーされたリンク