FC2カウンター FPGAの部屋 Edge TPU の”Retrain an image classification model”をやってみる2(転移学習したモデルをEdge TPU 用にコンパイル)
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

Edge TPU の”Retrain an image classification model”をやってみる2(転移学習したモデルをEdge TPU 用にコンパイル)

Edge TPU の”Retrain an image classification model”をやってみる1”の続きをやってみよう。画像分類モデルを再学習する。最後の層だけ転移学習したところまでやったので、その続きをやってみよう。

転移学習をしている途中に、TensorBoard で状況を見ようということで、ターミナルを起動して、docker exec で現在起動しているDocker コンテナに接続して、TensorBoard を起動する。
docker exec -it edgetpu-classify /bin/bash
tensorboard --logdir=./transfer_learn/train/

edgetpu-classify は現在起動してるDocker コンテナの名前である。
Edge_TPU_29_190313.png

TensorBoard の表示の一部を示す。
Edge_TPU_30_190313.png

転移学習が終了したので、ターミナルを新しく起動しないで、最後のチェックポイントの性能評価を実行する。
./run_evaluation.sh --network_type mobilenet_v1
Edge_TPU_31_190313.png

精度は 0.75 だった。

Edge TPU 用にモデルをコンパイルしよう。
チェックポイント300 を指定して TensorFlow Liteに変換する。
./convert_checkpoint_to_edgetpu_tflite.sh --network_type mobilenet_v1 --checkpoint_num 300
Edge_TPU_32_190313.png

すると、Docker コンテナ上の /tensorflow/models/research/slim/transfer_learn/models/ に output_tflite_graph.tflite が出力される。これは、ホストパソコンの ~/python-tflite-source/edgetpu/classify/models/ に出力されている。
Edge_TPU_33_190313.png

ホストパソコンでEdge TPU Model Compiler ページを開く。
Upload your model に output_tflite_graph.tflite をドラックアンドドロップする。
”I have read and acknowledged Google's Terms of Service.”と”I agree that my model will only be used for applications that follow Google's AI Principles.”のチェックボックスにチェックを入れる。
Edge_TPU_34_190313.png

するとコンパイルが始まる。
Edge_TPU_35_190313.png

Model successfully compiled したら、Download model をクリックしてコンパイル済みモデルをダウンロードする。
Edge_TPU_36_190313.png

~/ダウンロード/temp に output_tflite_graph_1552476979_edgetpu.tflite をダウンロードした。
Edge_TPU_37_190313.png

output_tflite_graph_1552476979_edgetpu.tflite を ~/python-tflite-source/edgetpu/classify/models/ にコピーする。(ホストパソコン側です)
cd ダウンロード/temp
sudo mv output_tflite_graph_1552476979_edgetpu.tflite ~/python-tflite-source/edgetpu/classify/models/

Edge_TPU_38_190314.png

ホストパソコンで output_tflite_graph_1552476979_edgetpu.tflite の名前を output_tflite_graph_edgetpu.tflite に変更した。
cd ~/python-tflite-source/edgetpu/classify/models/
sudo mv output_tflite_graph_1552476979_edgetpu.tflite output_tflite_graph_edgetpu.tflite

するとDocker コンテナでも output_tflite_graph_edgetpu.tflite が見えている。
Edge_TPU_39_190314.png
  1. 2019年03月15日 04:30 |
  2. Edge TPU
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/4472-540ddca2
この記事にトラックバックする(FC2ブログユーザー)