YOLO11 からTF GraphDef にエクスポートして配備する方法
YOLO11 のような最先端のコンピュータビジョンモデルをさまざまな環境で展開する場合、互換性の問題にぶつかることがあります。Google's TensorFlowGraphDefまたはTF GraphDef は、シリアライズされた、プラットフォームに依存しないモデルの表現を提供することで、解決策を提供します。TF GraphDef モデル形式を使用することで、モバイル機器や特殊なハードウェアなど、完全なTensorFlow エコシステムが利用できない環境でも、YOLO11 モデルを展開することができます。
このガイドでは、モデルを モデルフォーマットにエクスポートする方法を順を追って説明します。 Ultralytics YOLO11このガイドでは、TF GraphDef モデル・フォーマットにモデルをエクスポートする方法を順を追って説明します。モデルを変換することで、デプロイを効率化し、YOLO11 のコンピュータビジョン機能をより幅広いアプリケーションやプラットフォームで使用することができます。
なぜTF GraphDef にエクスポートする必要があるのですか?
TF GraphDef は、Google によって開発されたTensorFlow エコシステムの強力なコンポーネントである。YOLO11 のようなモデルの最適化とデプロイに使用できる。TF GraphDef にエクスポートすることで、モデルを研究から実世界のアプリケーションに移行させることができる。これにより、TensorFlow フレームワークがない環境でもモデルを実行できるようになります。
GraphDef 形式は、モデルを直列化された計算グラフとして表現する。これにより、定数の折りたたみ、量子化、グラフ変換など、さまざまな最適化技術が可能になる。これらの最適化により、効率的な実行、メモリ使用量の削減、推論速度の高速化が保証される。
GraphDef モデルは、GPU、TPU、AIチップなどのハードウェアアクセラレータを使用することができ、YOLO11 推論パイプラインの大幅な性能向上を解き放つ。TF GraphDef フォーマットは、モデルとその依存関係を含む自己完結型のパッケージを作成し、多様なシステムへの展開と統合を簡素化します。
TF GraphDef モデルの主な特徴
TF GraphDef は、モデルの展開と最適化を合理化するための明確な機能を提供します。
その主な特徴を紹介しよう:
-
モデルのシリアライズ:TF GraphDef TensorFlow モデルをシリアライズし、プラットフォームに依存しない形式で保存する方法を提供します。このシリアライズされた表現によって、オリジナルのPython コードベースなしでモデルをロードして実行できるようになり、デプロイが簡単になります。
-
グラフの最適化:TF GraphDef は、計算グラフの最適化を可能にする。これらの最適化により、実行フローを合理化し、冗長性を削減し、特定のハードウェアに合わせて操作を調整することで、パフォーマンスを向上させることができます。
-
展開の柔軟性:GraphDef フォーマットにエクスポートされたモデルは、リソースに制約のあるデバイス、ウェブブラウザ、特殊なハードウェアを備えたシステムなど、さまざまな環境で使用することができます。これにより、TensorFlow モデルの幅広い展開の可能性が広がります。
-
プロダクション・フォーカス:GraphDef は、プロダクション・デプロイメント向けに設計されています。効率的な実行、直列化機能、実際のユースケースに沿った最適化をサポートしています。
配備オプションTF GraphDef
TF GraphDef にYOLO11 モデルをエクスポートするプロセスに入る前に、このフォーマッ トが使用される典型的な展開状況を見てみましょう。
ここでは、TF GraphDef 、さまざまなプラットフォームで効率的に展開する方法を紹介する。
-
TensorFlow サービング:このフレームワークは、本番環境でTensorFlow 。TensorFlow Servingは、モデル管理、バージョン管理、効率的なモデル提供のためのインフラストラクチャを提供します。GraphDef ベースのモデルを本番のウェブサービスやAPIに統合するシームレスな方法です。
-
モバイルと組み込みデバイス: TensorFlow Liteのようなツールを使用すると、TF GraphDef モデルをスマートフォン、タブレット、およびさまざまな組み込みデバイス用に最適化された形式に変換できます。モデルは、ローカルで実行されるオンデバイス推論に使用でき、多くの場合、パフォーマンス向上とオフライン機能を提供します。
-
ウェブブラウザ: TensorFlow.jsは、TF GraphDef モデルをWebブラウザに直接デプロイすることを可能にします。これは、JavaScriptを通じてYOLO11 機能を使用し、クライアント側で動作するリアルタイムのオブジェクト検出アプリケーションへの道を開くものです。
-
特殊なハードウェア: TF GraphDef はプラットフォームにとらわれないため、アクセラレーターやTPU (Tensor Processing Units)などのカスタムハードウェアをターゲットにすることができる。これらのデバイスは、計算量の多いモデルに対して性能上の利点を提供することができる。
YOLO11 モデルのエクスポートTF GraphDef
YOLO11 オブジェクト検出モデルを、様々なシステムと互換性のあるTF GraphDef フォーマットに変換することで、プラットフォーム間でのパフォーマンスを向上させることができます。
インストール
必要なパッケージをインストールするには、以下を実行する:
インストールプロセスに関する詳細な説明とベストプラクティスについては、Ultralytics インストールガイドをご覧ください。YOLO11 に必要なパッケージをインストールする際に、何らかの問題が発生した場合は、解決策やヒントについて、よくある問題ガイドを参照してください。
使用方法
使い方の説明に入る前に、Ultralytics YOLO11 の全モデルがエクスポートに対応していることを確認しておきましょう 。
使用方法
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo11n.pb'
# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")
# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")
エクスポートの引数
議論 | タイプ | デフォルト | 説明 |
---|---|---|---|
format |
str |
'pb' |
エクスポートされたモデルのターゲットフォーマットで、さまざまな展開環境との互換性を定義します。 |
imgsz |
int または tuple |
640 |
モデル入力に必要な画像サイズ。正方形画像の場合は整数,正方形画像の場合はタプルになります. (height, width) 具体的な寸法については |
batch |
int |
1 |
エクスポートモデルのバッチ推論サイズ、またはエクスポートされたモデルが同時に処理する画像の最大数を指定します。 predict モードだ。 |
エクスポートプロセスの詳細については、Ultralytics ドキュメントのエクスポートに関するページをご覧ください。
エクスポートされたYOLO11 TF GraphDef モデルの展開
YOLO11 モデルをTF GraphDef フォーマットにエクスポートしたら、次のステップはデプロイです。TF GraphDef モデルを実行するための最初のステップとして推奨されるのは、YOLO("model.pb") メソッドを使用することです。
しかし、TF GraphDef モデルの展開に関する詳細は、以下のリソースをご覧ください:
-
TensorFlow サービス:TensorFlow Servingに関するガイドで、本番環境で機械学習モデルを効率的にデプロイして提供する方法を教えてくれる。
-
TensorFlow ライト:このページでは、TensorFlow Liteを使用して、機械学習モデルをデバイス上での推論に最適化された形式に変換する方法について説明します。
-
TensorFlow.js:Webアプリケーションで使用するために、TensorFlow または Keras モデルをTensorFlow.js フォーマットに変換する方法を教えるモデル変換ガイド。
概要
このガイドでは、Ultralytics YOLO11 モデルをTF GraphDef フォーマットにエクスポートする方法について説明しました。こうすることで、最適化されたYOLO11 モデルをさまざまな環境に柔軟に展開することができます。
使い方の詳細については、TF GraphDef 公式ドキュメントをご覧ください。
Ultralytics YOLO11 を他のプラットフォームやフレームワークと統合するための詳細情報については、統合ガイドのページを忘れずにチェックしてください。あなたのプロジェクトでYOLO11 を最大限に活用するための素晴らしいリソースや洞察があります。
よくあるご質問
YOLO11 モデルをTF GraphDef 形式にエクスポートするにはどうすればよいですか?
Ultralytics YOLO11 モデルをTensorFlow GraphDef (TF GraphDef ) フォーマットにシームレスにエクスポートすることができます。このフォーマットは、モデルのシリアライズされた、プラットフォームに依存しない表現を提供し、モバイルやWebのような様々な環境での展開に理想的です。YOLO11 モデルをTF GraphDef にエクスポートするには、以下の手順に従います:
使用方法
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo11n.pb'
# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")
# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")
さまざまなエクスポートオプションの詳細については、モデルのエクスポートに関するUltralytics のドキュメントをご覧ください。
YOLO11 モデル展開にTF GraphDef を使用するメリットは何ですか?
YOLO11 モデルをTF GraphDef フォーマットにエクスポートすると、以下のような複数の利点があります:
- プラットフォーム非依存:TF GraphDef はプラットフォームに依存しないフォーマットを提供し、モバイルやウェブブラウザを含む様々な環境でのモデルの展開を可能にします。
- 最適化:このフォーマットは、定数の折りたたみ、量子化、グラフ変換など、実行効率を高め、メモリ使用量を削減するいくつかの最適化を可能にする。
- ハードウェアアクセラレーション:TF GraphDef フォーマットのモデルは、GPU、TPU、AIチップなどのハードウェアアクセラレータを活用してパフォーマンスを向上させることができます。
TF GraphDef のセクションをご覧ください。
他の物体検出モデルではなく、Ultralytics YOLO11 。
Ultralytics YOLO11 YOLOv5 、YOLOv7のような他のモデルと比較すると、数多くの利点がある。主な利点は以下の通り:
- 最先端の性能:YOLO11 は、リアルタイムの物体検出、セグメンテーション、分類に卓越した速度と精度を提供します。
- 使いやすさ:モデルのトレーニング、検証、予測、エクスポートのためのユーザーフレンドリーなAPIを備えており、初心者から上級者までアクセス可能です。
- 幅広い互換性:ONNX 、TensorRT 、CoreML 、TensorFlow を含む複数のエクスポート形式をサポートし、多彩な展開オプションを提供します。
詳しくは YOLO11 をご覧ください。
TF GraphDef を使って、YOLO11 のモデルを特別なハードウェアにデプロイするには?
YOLO11 モデルがTF GraphDef フォーマットにエクスポートされると、様々な専用ハードウェアプラットフォームに展開することができます。代表的な展開シナリオは以下のとおりです:
- TensorFlow サービング本番環境でのスケーラブルなモデル展開には、TensorFlow Servingを使用する。モデル管理と効率的なサービングをサポートします。
- モバイルデバイス:TF GraphDef モデルをTensorFlow Lite に変換し、モバイルおよび組み込みデバイス用に最適化することで、デバイス上での推論を可能にする。
- ウェブブラウザ:TensorFlow.js を使用してモデルをデプロイし、Web アプリケーションのクライアントサイド推論を行う。
- AIアクセラレータ:TPUとカスタムAIチップを活用して推論を加速。
詳細については、配備オプションのセクションを確認してください。
YOLO11 モデルのエクスポート中によくある問題の解決策はどこにありますか?
YOLO11 モデルのエクスポートに関する一般的な問題のトラブルシューティングについては、Ultralytics が包括的なガイドとリソースを提供しています。インストールまたはモデルのエクスポート中に問題が発生した場合は、以下を参照してください:
これらのリソースは、YOLO11 モデルのエクスポートと展開に関連するほとんどの問題を解決するのに役立つはずです。