コンテンツへスキップ

YOLO11モデルフォーマットからTF.jsモデルフォーマットにエクスポートする

機械学習モデルをブラウザーやNode.jsに直接デプロイするのは厄介なことです。モデルをユーザーのデバイス上でインタラクティブなアプリケーションをローカルに実行するために使用できるように、モデル・フォーマットがより高速なパフォーマンスに最適化されていることを確認する必要があります。TensorFlow.js(またはTF.js)のモデルフォーマットは、高速なパフォーマンスを提供しながら、最小限の電力しか使わないように設計されています。

TF.jsモデルフォーマットへのエクスポート」機能により、Ultralytics YOLO11モデルを、高速かつローカルで実行されるオブジェクト検出推論用に最適化することができます。このガイドでは、モデルをTF.js形式に変換する手順を説明します。これにより、様々なローカルブラウザやNode.jsアプリケーション上でモデルがより簡単に実行できるようになります。

なぜTF.jsにエクスポートする必要があるのか?

TensorFlow のエコシステムの一部としてTensorFlow チームによって開発されたTensorFlow.js に機械学習モデルをエクスポートすると、機械学習アプリケーションを展開する際に多くの利点があります。機密データをデバイス上に保持することで、ユーザーのプライバシーとセキュリティを強化することができます。下の画像は、TensorFlow.jsのアーキテクチャと、機械学習モデルがどのように変換され、ウェブブラウザとNode.jsの両方でデプロイされるかを示しています。

TF.jsアーキテクチャ

また、ローカルでモデルを実行することで、待ち時間が短縮され、より応答性の高いユーザーエクスペリエンスが得られます。 TensorFlowまた、.jsはオフライン機能を備えているため、ユーザーはインターネット接続がなくてもアプリケーションを使用することができます。TF.jsは、GPU アクセラレーションをサポートし、スケーラビリティのために設計されているため、限られたリソースのデバイスで複雑なモデルを効率的に実行できるように設計されています。

TF.jsの主な特徴

TF.jsを開発者にとって強力なツールにしている主な機能を紹介しよう:

  • クロスプラットフォームのサポート: TensorFlow.js は、ブラウザと Node.js の両方の環境で使用できるため、さまざまなプラットフォームに柔軟に対応できます。開発者は、より簡単にアプリケーションを構築し、デプロイすることができます。

  • 複数のバックエンドのサポート: TensorFlow.jsは、CPU 、GPU アクセラレーションのためのWebGL、ネイティブに近い実行速度のためのWebAssembly(WASM)、および高度なブラウザベースの機械学習機能のためのWebGPUを含む計算のための様々なバックエンドをサポートしています。

  • オフライン機能: TensorFlow.jsでは、インターネット接続を必要とせずにブラウザ上でモデルを実行できるため、オフラインで機能するアプリケーションの開発が可能です。

TensorFlow.js での展開オプション

YOLO11モデルをTF.jsフォーマットにエクスポートするプロセスに入る前に、このフォーマットが使われる典型的なデプロイ・シナリオをいくつか探ってみよう。

TF.jsには、機械学習モデルをデプロイするためのさまざまなオプションが用意されている:

  • ブラウザ内MLアプリケーション:機械学習モデルをブラウザ上で直接実行するウェブ・アプリケーションを構築できます。サーバーサイドの計算が不要になり、サーバーの負荷が軽減されます。

  • Node.jsアプリケーション:: TensorFlow.jsはNode.js環境へのデプロイもサポートしており、サーバーサイドの機械学習アプリケーションの開発が可能です。サーバーの処理能力やサーバーサイドのデータへのアクセスを必要とするアプリケーションに特に有効です。

  • Chrome拡張機能: TensorFlow.jsを使ったChrome拡張機能の作成は、興味深い展開シナリオだ。例えば、ユーザーがウェブページ内の画像を右クリックして、事前に訓練されたMLモデルを使って画像を分類できるような拡張機能を開発できる。TensorFlow.jsは、機械学習に基づく即時の洞察や補強を提供するために、日常のウェブ閲覧体験に統合することができます。

YOLO11モデルをTensorFlow.jsにエクスポートする

YOLO11モデルをTF.jsに変換することで、モデルの互換性とデプロイの柔軟性を拡大できます。

インストール

必要なパッケージをインストールするには

インストール

# 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 TF.js format
model.export(format="tfjs")  # creates '/yolo11n_web_model'

# Load the exported TF.js model
tfjs_model = YOLO("./yolo11n_web_model")

# Run inference
results = tfjs_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF.js format
yolo export model=yolo11n.pt format=tfjs  # creates '/yolo11n_web_model'

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

サポートされているエクスポートオプションの詳細については、Ultralytics 配置オプションのドキュメントページを参照してください。

エクスポートされたYOLO11TensorFlow.jsモデルのデプロイ

YOLO11モデルをTF.jsフォーマットにエクスポートしたら、次のステップはそれをデプロイすることです。TF.jsを実行するための最初のステップとして推奨されるのは YOLO("./yolo11n_web_model") メソッドを使用する。

しかし、TF.jsモデルのデプロイに関する詳しい説明は、以下のリソースをご覧ください:

概要

このガイドでは、Ultralytics YOLO11モデルをTensorFlow.jsフォーマットにエクスポートする方法を学んだ。TF.jsにエクスポートすることで、幅広いプラットフォーム上でYOLO11モデルを最適化、デプロイ、スケールする柔軟性が得られる。

使い方の詳細については、TensorFlow.js 公式ドキュメントをご覧ください。

Ultralytics YOLO11と他のプラットフォームやフレームワークとの統合に関する詳しい情報は、統合ガイドのページをお忘れなく。あなたのプロジェクトでYOLO11を最大限に活用するための素晴らしいリソースが満載です。

よくあるご質問

Ultralytics YOLO11 モデルをTensorFlow.js フォーマットにエクスポートするには?

Ultralytics YOLO11モデルをTensorFlow.js (TF.js) フォーマットにエクスポートするのは簡単です。以下の手順に従ってください:

使用方法

from ultralytics import YOLO

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

# Export the model to TF.js format
model.export(format="tfjs")  # creates '/yolo11n_web_model'

# Load the exported TF.js model
tfjs_model = YOLO("./yolo11n_web_model")

# Run inference
results = tfjs_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF.js format
yolo export model=yolo11n.pt format=tfjs  # creates '/yolo11n_web_model'

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

サポートされているエクスポートオプションの詳細については、Ultralytics 配置オプションのドキュメントページを参照してください。

なぜYOLO11のモデルをTensorFlow.jsにエクスポートする必要があるのですか?

YOLO11のモデルをTensorFlow.jsにエクスポートすると、以下のような利点がある:

  1. ローカル実行:モデルはブラウザまたはNode.jsで直接実行できるため、待ち時間が短縮され、ユーザーエクスペリエンスが向上します。
  2. クロスプラットフォームのサポート: TF.jsは複数の環境をサポートしており、柔軟なデプロイが可能です。
  3. オフライン機能:インターネット接続がなくてもアプリケーションを機能させることができ、信頼性とプライバシーを確保します。
  4. GPU アクセラレーション:WebGL を活用してGPU アクセラレーションを行い、リソースが限られたデバイスでのパフォーマンスを最適化します。

包括的な概要については、 TensorFlow.js との統合をご覧ください。

TensorFlow.jsは、ブラウザベースの機械学習アプリケーションにどのようなメリットをもたらすのか?

TensorFlow.jsは、ブラウザとNode.js環境でMLモデルを効率的に実行するために特別に設計されています。ここでは、ブラウザベースのアプリケーションにどのようなメリットがあるかを紹介します:

  • 待ち時間の短縮:機械学習モデルをローカルで実行するため、サーバーサイドの計算に依存することなく、すぐに結果を得ることができます。
  • プライバシーの向上:機密データをユーザーのデバイスに保持し、セキュリティリスクを最小限に抑えます。
  • オフラインでの使用が可能:インターネットに接続していない状態でも動作するため、安定した機能を確保できます。
  • 複数のバックエンドをサポート: CPU 、WebGL、WebAssembly (WASM)、WebGPUなど、さまざまな計算ニーズに柔軟に対応するバックエンドを提供します。

TF.jsについてもっと知りたいですか? TensorFlow.js 公式ガイドをご覧ください。

YOLO11モデルをデプロイするためのTensorFlow.jsの主な機能は何ですか?

TensorFlow.jsの主な特徴は以下の通り:

  • クロスプラットフォームのサポート: TF.jsは、ウェブブラウザとNode.jsの両方で使用することができ、広範なデプロイの柔軟性を提供します。
  • 複数のバックエンド: CPU 、GPU アクセラレーションのための WebGL、WebAssembly (WASM)、高度な操作のための WebGPU をサポートしています。
  • オフライン機能:モデルはインターネット接続なしでブラウザ上で直接実行できるため、レスポンシブ・ウェブ・アプリケーションの開発に最適です。

デプロイシナリオやより詳細な情報については、 TensorFlow.js でのデプロイオプションのセクションを参照してください。

TensorFlow.jsを使って、サーバーサイドのNode.jsアプリケーションにYOLO11モデルをデプロイできますか?

はい、TensorFlow.jsは、Node.js環境へのYOLO11モデルのデプロイを可能にします。これにより、サーバーの処理能力とサーバーサイドのデータへのアクセスを活用したサーバーサイドの機械学習アプリケーションが可能になります。典型的な使用例としては、バックエンドサーバーでのリアルタイムデータ処理や機械学習パイプラインがあります。

Node.jsのデプロイを始めるには、TensorFlow の「RunTensorFlow.js in Node.js」ガイドを参照してください。

📅作成 7ヶ月前 ✏️更新しました 1ヶ月前

コメント