2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Edge TPU Compiler

Posted at

Edge TPU Compiler(edgetpu_compiler)は、TensorFlow Liteモデル(.tflite file)をEdge TPUと互換性のあるファイルにコンパイルするコマンドラインツールです。 このページでは、コンパイラの使い方と動作について説明します。

微信图片_20190404110336.jpg

コンパイラを使用する前に、Edge TPUと互換性のあるモデルがあることを確認してください。

システム要求

Edge TPU Compilerは、現代のあらゆるDebianベースのLinuxシステム上で実行することができます。 具体的には、次のとおりです。

Debian 6.0以降、またはその派生物(Ubuntu 10.0以降など)

ARMv8命令セットを使用したx86-64またはARM64のシステムアーキテクチャ

これには、Coral Dev Boardでのメンデルのサポートも含まれます。

Download

次のコマンドを使用して、Linuxシステムにコンパイラをインストールできます。

echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | sudo tee /etc/apt/sources.list.d/coral-edgetpu.list

sudo apt update

sudo apt install edgetpu

使用法

edgetpu_compiler [options] model...

コンパイラは、1つ以上のTensorFlow Liteモデル( model 引数)へのファイルパスと任意のオプションを受け入れます。 複数のモデル(それぞれスペースで区切られている)を渡すと、それらはEdge TPUのRAMをパラメータデータキャッシュ用に共有できるようにまとめてコンパイルされます。

コンパイルされた各モデルのファイル名はinput_filename_edgetpu.tfliteです。-out_dirオプションを使用して指定しない限り、現在のディレクトリに保存されます。

Edge TPUは、1つのモデルのみを実行しているときに最高の推論速度を実現します。これは、Edge TPUで使用可能なキャッシュスペースが一度に複数のモデルに対応できないためです。 1つのEdge TPUで複数のモデルを実行できますが、モデルを交換するたびにキャッシュをクリアする必要があるため、パイプライン全体の速度が低下します。 このパフォーマンスのボトルネックを解決するには、各モデルを異なるEdge TPUで実行します。

Coral のハードウェアに使われている Edge TPU チップは、量子化されたモデルを使うように設計されています。量子化とは、精度への影響を最低限にとどめつつ、ベースとなるデータを圧縮して、小さく高速なモデルにすることを指します。

maxresdefault (1).jpg

代理店:https://store.gravitylink.com

TensorFlow Lite Converter を使うと、すべてのトレーニング済み TensorFlow モデルを量子化できます。このテクニックの詳細は、トレーニング後の量子化をご覧ください。
次の簡単なコード スニペットは、TensorFlow Lite ナイトリー版と TensorFlow 2.0 アルファ版を使ってモデルを変換し、量子化する方法を示しています。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?