コンテンツにスキップ

YOLO11 モデルからTFLite EdgeTPU フォーマットへのエクスポートを学ぶ

コンピュータビジョンモデルを、モバイルや組込みシステムのような計算能力の限られたデバイスに展開するのは、厄介なことです。より高速なパフォーマンスに最適化されたモデルフォーマットを使用することで、プロセスが簡素化されます。TensorFlow LiteEdge TPUまたはTFLite EdgeTPU モデルフォーマットは、ニューラルネットワークに高速なパフォーマンスを提供しながら、最小限の電力しか消費しないように設計されています。

TFLite EdgeTPU フォーマットへのエクスポート機能により、以下の機能を最適化できます。 Ultralytics YOLO11モデルを最適化することができます。このガイドでは、モデルをTFLite EdgeTPU フォーマットに変換する手順を説明し、モデルがさまざまなモバイル機器や組み込み機器で優れたパフォーマンスを発揮できるようにします。

なぜTFLite EdgeTPU輸出が必要なのか?

モデルをTensorFlow Edge TPU にエクスポートすると、機械学習タスクが高速かつ効率的になります。このテクノロジーは、電力、コンピューティングリソース、および接続が限られているアプリケーションに適しています。Edge TPU は、Google によるハードウェアアクセラレータです。エッジデバイス上の TensorFlow Lite モデルを高速化します。下の図は、関連するプロセスの例を示しています。

TFLite エッジTPU

Edge TPUは、量子化されたモデルで動作します。量子化により、精度を大幅に損なうことなく、モデルを小型化および高速化できます。エッジコンピューティングの限られたリソースに最適であり、レイテンシを削減し、クラウドに依存せずにローカルで迅速なデータ処理を可能にすることで、アプリケーションが迅速に応答できるようにします。ローカル処理は、リモートサーバーに送信されないため、ユーザーデータのプライバシーとセキュリティも維持します。

TFLite エッジTPU主な特長

TFLite EdgeTPU 開発者にとって優れたモデルフォーマットの選択肢となる主な特徴は以下の通りです:

  • エッジデバイスで最適化されたパフォーマンス:TFLite EdgeTPU 、量子化、モデルの最適化、ハードウェア・アクセラレーション、コンパイラの最適化により、高速なニューラルネットワーク性能を実現します。その最小限のアーキテクチャは、小型化とコスト効率に貢献しています。

  • 高い計算スループット:TFLite EdgeTPU 、特殊なハードウェアアクセラレーションと効率的なランタイム実行を組み合わせることで、高い計算スループットを実現します。エッジデバイスに厳しい性能要件を持つ機械学習モデルを導入するのに適しています。

  • 効率的な行列計算: TensorFlow Edge TPU は、ニューラルネットワーク計算に不可欠な行列演算に最適化されています。この効率は、機械学習モデル、特多数の複雑な行列乗算と変換を必要とするモデルでは特に重要です。

TFLite エッジTPU展開オプション

YOLO11 モデルをTFLite EdgeTPU フォーマットにエクスポートする方法に入る前に、TFLite EdgeTPU モデルが通常どこで使われるのかを理解しましょう。

TFLite EdgeTPU 、機械学習モデルのための様々な展開オプションを提供する:

  • オンデバイスでの展開:TensorFlow EdgeTPU モデルは、モバイルデバイスや組み込みデバイスに直接デプロイできます。オンデバイスデプロイメントでは、アプリケーションバンドルにモデルを組み込むか、オンデマンドでダウンロードすることで、クラウド接続の必要性を排除し、ハードウェア上でモデルを直接実行できます。

  • クラウド TensorFlow TPU を使用したエッジコンピューティング: エッジデバイスの処理能力が限られているシナリオでは、TensorFlow Edge TPU は、TPU を搭載したクラウドサーバーに推論タスクをオフロードできます。

  • ハイブリッドデプロイメント: ハイブリッドアプローチは、オンデバイスとクラウドのデプロイメントを組み合わせたもので、機械学習モデルをデプロイするための汎用性と拡張性に優れたソリューションを提供します。利点としては、迅速な応答のためのオンデバイス処理や、より複雑な計算のためのクラウドコンピューティングなどがあります。

YOLO11 モデルをTFLite EdgeTPUエクスポートする

YOLO11モデルをTensorFlow Edge TPUに変換することで、モデルの互換性とデプロイの柔軟性を拡張できます。

インストール

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

インストール

# Install the required package for YOLO11
pip install ultralytics

インストールプロセスに関する詳細な手順とベストプラクティスについては、Ultralyticsインストールガイドをご確認ください。YOLO11に必要なパッケージのインストール中に問題が発生した場合は、よくある問題ガイドで解決策とヒントを参照してください。

使用法

すべてのUltralytics YOLO11モデルは、すぐにエクスポートできるように設計されており、お好みのデプロイメントワークフローに簡単に統合できます。アプリケーションに最適なセットアップを選択するために、サポートされているエクスポート形式と構成オプションの完全なリストを表示できます

使用法

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

エクスポート引数

引数種類デフォルト説明
formatstr'edgetpu'エクスポートされたモデルのターゲット形式。さまざまなデプロイメント環境との互換性を定義します。
imgszint または tuple640モデル入力に必要な画像サイズ。正方形の画像の場合は整数、タプルの場合は (height, width) 特定の寸法の場合。
devicestrNoneエクスポート先のデバイスを指定します:CPU (device=cpu)。

ヒント

EdgeTPUにエクスポートする際は、x86 Linuxマシンを使用してください。

エクスポートプロセスの詳細については、エクスポートに関するUltralyticsドキュメントページをご覧ください。

輸出されたYOLO11 TFLite エッジTPU モデルの展開

Ultralytics YOLO11 モデルをTFLite EdgeTPU フォーマットにエクスポートした後、それらをデプロイすることができます。TFLite EdgeTPU モデルを実行するための最初のステップとして推奨されるのは、YOLO("model_edgetpu.tflite")メソッドを使用することです。

ただし、TFLite EdgeTPU モデルの展開に関する詳しい説明については、以下のリソースをご覧ください:

概要

このガイドでは、Ultralytics YOLO11 モデルをTFLite EdgeTPU フォーマットにエクスポートする方法を学びました。上記のステップに従うことで、コンピュータビジョンアプリケーションのスピードとパワーを向上させることができます。

使用方法の詳細については、Edge TPUの公式ウェブサイトをご覧ください。

また、Ultralytics YOLO11のその他の統合に関する詳細については、統合ガイドページをご覧ください。貴重な情報や洞察が得られます。

よくある質問

YOLO11 モデルをTFLite EdgeTPU フォーマットにエクスポートするには?

YOLO11 モデルをTFLite EdgeTPU フォーマットにエクスポートするには、以下の手順に従います:

使用法

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

モデルを他の形式にエクスポートする方法の詳細については、エクスポートガイドを参照してください。

YOLO11 モデルをTFLite EdgeTPUエクスポートするメリットは何ですか?

YOLO11 モデルをTFLite EdgeTPU エクスポートすると、いくつかの利点があります:

  • 最適化されたパフォーマンス: 最小限の消費電力で高速ニューラルネットワークパフォーマンスを実現します。
  • レイテンシーの削減: クラウドへの依存を必要とせずに、ローカルでデータを迅速に処理します。
  • プライバシーの強化: ローカル処理により、ユーザーデータはプライベートかつ安全に保たれます。

これにより、デバイスの電力と計算リソースが限られているエッジコンピューティングでのアプリケーションに最適です。エクスポートする必要がある理由の詳細をご覧ください。

TFLite EdgeTPU モデルをモバイル機器や組み込み機器に導入できますか?

はい、TensorFlow Lite Edge TPUモデルは、モバイルおよび組み込みデバイスに直接デプロイできます。このデプロイアプローチにより、モデルはハードウェア上で直接実行され、より高速で効率的な推論が提供されます。統合の例については、Raspberry PiへのCoral Edge TPUのデプロイに関するガイドをご覧ください。

TFLite エッジTPU モデルの一般的な使用例は?

TFLite エッジTPU モデルの一般的な使用例には、以下のようなものがあります:

  • スマートカメラ: リアルタイムの画像およびビデオ分析を強化します。
  • IoTデバイス:スマートホームおよび産業オートメーションを可能にします。
  • ヘルスケア: 医療画像処理と診断を加速します。
  • 小売: 在庫管理と顧客行動分析の改善。

これらのアプリケーションは、TFLite EdgeTPU モデルの高性能と低消費電力のメリットを享受できます。使用シナリオの詳細をご覧ください。

TFLite EdgeTPU モデルのエクスポートやデプロイ中に問題が発生した場合のトラブルシューティング方法を教えてください。

TFLite EdgeTPU モデルのエクスポートまたはデプロイ中に問題が発生した場合は、トラブルシューティングのヒントとして「よくある問題」ガイドを参照してください。このガイドでは、スムーズな操作に役立つ一般的な問題と解決策を説明しています。その他のサポートについては、ヘルプセンターをご覧ください。



📅 1年前に作成されました✏️ 25日前に更新されました
glenn-jocherlakshanthadUltralyticsAssistantMatthewNoyceRizwanMunawarBurhan-Qabirami-vina

コメント