今回はCoralが作ったTPUをRaspberry pi4から動かせるまでの手順を紹介したいと思います。よろしくお願いします。
Coral USB Accelerator?
Coral USB AcceleratorはGoogleのEdge TPUを搭載し、Raspberry PiなどのDebian系のLinuxシステムで機械学習を利用できるようになる外部演算装置です。
自分のリソースの一部をCoral USB Acceleratorに外注し、ハードウェアスペックが低いデイバスでも機械学習のアプリケーションを構築できます。
自分が一番よいところはGoogleの学習済みのModleをそのまま使用することができるところです。
Support OS
- Linux Debian 10, or a derivative thereof (such as Ubuntu 18.04)
- architecture of either x86-64, Armv7 (32-bit), or
- Armv8 (64-bit) (Raspberry Pi is supported
- macOS 10.15 (Catalina) or 11 (Big Sur), with either MacPorts or Homebrew installed
- Windows 10
- One available USB port (for the best performance, use a USB 3.0 port)
- Python 3.6-3.9
Expand File System
まずFile systemを拡張します。
sudo raspi-config |
Advanced Optionsを選びます。
次はA1 Expand Filesystemを選び、Raspberryを再起動します。
ライブリインストール
次はLibraryをInstallします。
Response
$ echo “deb https://packages.cloud.google.com/apt coral-edgetpu-stable main” | sudo tee /etc/apt/sources.list.d/coral-edgetpu.list $ curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add – $ sudo apt-get update |
Install
sudo apt-get install libedgetpu1-std |
Library Install
sudo apt-get install python3-pycoral |
Run Model
Download the Example
mkdir coral && cd coral git clone https://github.com/google-coral/pycoral.git cd pycoral |
Download the model
bash examples/install_requirements.sh classify_image.py |
Test the Model
python3 examples/classify_image.py \ –model test_data/mobilenet_v2_1.0_224_inat_bird_quant_edgetpu.tflite \ –labels test_data/inat_bird_labels.txt \ —input test_data/parrot.jpg |
Result
結果からみますと最初の一回目はTPU MemoryにModelを読み込ませるので11.8msかかりましたが、二回目からは3ms以内になります。
—-INFERENCE TIME—- Note: The first inference on Edge TPU is slow because it includes loading the model into Edge TPU memory. 11.8ms 3.0ms 2.8ms 2.9ms 2.9ms ——-RESULTS——– Ara macao (Scarlet Macaw): 0.75781 |
Reference
https://coral.ai/docs/accelerator/get-started/#3-run-a-model-on-the-edge-tpu