Ultralytics YOLO27:

YOLO26モデルからTFLite Edge TPU形式へエクスポートする方法#

モバイルシステムや組み込みシステムなど、計算能力が限られたデバイスにコンピュータービジョンモデルをデプロイするのは難しい場合があります。より高速なパフォーマンスに最適化されたモデル形式を使用すると、このプロセスが簡単になります。TensorFlow Lite Edge TPUまたはTFLite Edge TPUモデル形式は、ニューラルネットワークで高速なパフォーマンスを実現しながら、消費電力を最小限に抑えるように設計されています。

TFLite Edge TPU形式へのエクスポート機能を使用すると、Ultralytics YOLO26モデルを高速かつ低消費電力の推論向けに最適化できます。このガイドでは、モデルをTFLite Edge TPU形式に変換する方法を説明し、さまざまなモバイルデバイスや組み込みデバイスでモデルが適切に動作しやすくする方法を紹介します。

TFLite Edge TPUへエクスポートする理由#

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

TensorFlow Lite Edge TPU compilation workflow

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

TFLite Edge TPUの主な機能#

TFLite Edge TPUを開発者にとって優れたモデル形式にする主な機能は次のとおりです。

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

  • 高い計算スループット: TFLite Edge TPUは、専用ハードウェアアクセラレーションと効率的なランタイム実行を組み合わせ、高い計算スループットを実現します。エッジデバイス上で厳しいパフォーマンス要件を持つ機械学習モデルのデプロイに適しています。

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

TFLite Edge TPUを使用したデプロイオプション#

YOLO26モデルをTFLite Edge TPU形式にエクスポートする方法を説明する前に、TFLite Edge TPUモデルが通常どこで使用されるかを理解しましょう。

TFLite Edge TPUには、次のような機械学習モデルのさまざまなデプロイオプションがあります。

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

  • ハイブリッドデプロイ: ハイブリッドアプローチでは、デバイス上のデプロイとクラウドデプロイを組み合わせ、機械学習モデルをデプロイするための柔軟でスケーラブルなソリューションを提供します。メリットには、高速な応答を実現するデバイス上の処理と、より複雑な計算に対応するクラウドコンピューティングがあります。

サポートされるタスク#

Edge TPUへのエクスポートでは、7つあるUltralyticsのタスクのうち6つがサポートされます。セマンティックセグメンテーションはYOLO26でのみ利用できます。YOLO26は、このヘッドを搭載して出荷される唯一のファミリーです。深度推定はサポートされていません。これは、深度推定のINT8モデルが、Edge TPUコンパイラーで解析できないEXP v2オペレーターを出力するためです。

タスクYOLOv8YOLO11YOLO26
検出
セグメンテーション
セマンティック
深度
分類
ポーズ
OBB

Edge TPUコンパイラーは、サポートする演算をアクセラレーターに割り当て、残りをCPU上に残します。そのため、タスクがサポートされていても、すべての演算がTPU上で実行されるとは限りません。

YOLO26モデルをTFLite Edge TPUにエクスポートする#

YOLO26モデルをTensorFlow Edge TPUに変換すると、モデルの互換性とデプロイの柔軟性を高めることができます。

インストール#

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

インストール
# Install the required package for YOLO26
pip install ultralytics

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

使用方法#

すべてのUltralytics YOLO26モデルは、すぐにエクスポートできるよう設計されているため、任意のデプロイワークフローに簡単に統合できます。アプリケーションに最適な設定を選択するには、サポートされているエクスポート形式と設定オプションの全一覧を確認してください。

TFLite Edge TPU形式は、エクスポート予測検証モードをサポートします。推論と検証はCoral Edge TPUハードウェア上で実行されます。モデルをエクスポートした後、エクスポート済みモデルを読み込んで推論を実行するか、精度を検証してください。

エクスポート
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolo26n_full_integer_quant_edgetpu.tflite'
推論
from ultralytics import YOLO

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

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
検証
from ultralytics import YOLO

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

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

エクスポート引数#

引数デフォルト説明
formatstr'edgetpu'エクスポートされたモデルの対象形式で、さまざまなデプロイ環境との互換性を定義します。
imgszintまたはtuple640モデル入力に使用する画像サイズです。正方形画像の場合は整数、特定の寸法の場合はタプル(height, width)を指定できます。
quantizeintまたはstr8/auto量子化の精度。Edge TPUでは8(INT8)が必須であり、自動的に有効になります。これによりモデルが圧縮され、エッジデバイス上で精度をほとんど損なうことなく推論が高速化されます。非推奨となったhalf/int8フラグを置き換えます。
opsetintNone中間ONNXグラフのONNX opsetバージョンを指定します。設定しない場合は、サポートされている最新バージョンが使用されます。
datastrNone量子化に必須となるデータセット YAMLへのパスです。分類の場合は、データセットディレクトリまたは組み込みデータセット名を指定します。quantize=8で省略すると、Ultralyticsがモデルタスク用のデフォルトのキャリブレーションデータセットを選択します。
fractionfloatint、またはlist1.0キャリブレーションサブセットを、比率、画像枚数、または [train, val, test] の比率/枚数として指定します。2項目のリストでは、test はすべて使用され、0 はスキップされます。
devicestrNoneエクスポートに使用するデバイスを指定します: CPU(device=cpu)。
ヒント

Edge TPUへエクスポートする際は、x86 Linuxマシンを使用するようお願いいたします。

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

エクスポートしたYOLO26 TFLite Edge TPUモデルのデプロイ#

Ultralytics YOLO26モデルをTFLite Edge TPU形式に正常にエクスポートしたら、デプロイできるようになります。TFLite Edge TPUモデルを実行する際の主な推奨初期手順は、前述の使用例のコードスニペットで説明したように、YOLO("model_edgetpu.tflite")メソッドを使用することです。

ただし、TFLite Edge TPUモデルのデプロイに関する詳しい手順については、次のリソースを参照してください。

まとめ#

このガイドでは、Ultralytics YOLO26モデルをTFLite Edge TPU形式にエクスポートする方法を説明しました。上記の手順に従うことで、コンピュータービジョンアプリケーションの速度と電力効率を向上させることができます。

使用方法の詳細については、Coral Edge TPU official websiteをご覧ください。

また、その他のUltralytics YOLO26統合の詳細については、統合ガイドページをご覧ください。役立つリソースと知見を確認できます。

FAQ#

  • YOLO26モデルをTFLite Edge TPU形式にエクスポートするには、次の手順に従ってください。

    使用方法
    from ultralytics import YOLO
    
    # Load a YOLO26 model
    model = YOLO("yolo26n.pt")
    
    # Export the model to TFLite Edge TPU format
    model.export(format="edgetpu")  # creates 'yolo26n_full_integer_quant_edgetpu.tflite'
    
    # Load the exported TFLite Edge TPU model
    edgetpu_model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
    
    # Run inference
    results = edgetpu_model("https://ultralytics.com/images/bus.jpg")

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

  • YOLO26モデルをTFLite Edge TPUにエクスポートすると、いくつかのメリットがあります。

    • 最適化されたパフォーマンス: 消費電力を最小限に抑えながら、高速なニューラルネットワーク処理を実現できます。
    • レイテンシの削減: クラウドに依存せず、ローカルでデータを迅速に処理できます。
    • プライバシーの強化: ローカル処理により、ユーザーデータのプライバシーとセキュリティを維持できます。

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

  • はい、TensorFlow Lite Edge TPUモデルは、モバイルデバイスや組み込みデバイスに直接デプロイできます。このデプロイ方法では、モデルをハードウェア上で直接実行できるため、より高速で効率的な推論を実現できます。統合例については、Raspberry PiへのCoral Edge TPUのデプロイガイドをご確認ください。

  • TFLite Edge TPUモデルの一般的なユースケースには、次のようなものがあります。

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

    これらのアプリケーションは、TFLite Edge TPUモデルの高いパフォーマンスと低消費電力のメリットを活用できます。使用シナリオの詳細をご覧ください。

  • TFLite Edge TPUモデルのエクスポートまたはデプロイ中に問題が発生した場合は、トラブルシューティングのヒントについて一般的な問題ガイドを参照してください。このガイドでは、スムーズな動作を確保するための一般的な問題と解決策を扱っています。追加のサポートについては、ヘルプセンターをご覧ください。

コメント