Dieser Artikel fasst den Installationsvorgang von Raspberry Pi 4 und Coral USB Accelerator als Methode des maschinellen Lernens mit Edge-Geräten zusammen.
** Raspberry Pi 4 ** ist die neueste Generation der aktuellen Modelle. Die CPU- und Speicherleistung wurde erheblich verbessert und es wird auch USB 3.0 unterstützt.
** Coral USB Accelerator ** ist Googles dedizierter ASIC, der von Google für maschinelles Lernen auf Edge-Geräten entwickelt wurde.
Dieser dedizierte ASIC wird als Edge-TPU bezeichnet, und Sie können die Flockenarbeit von TensorFlow Lite verwenden, das sich darauf spezialisiert hat, Schlussfolgerungen am Rand zu ziehen. Darüber hinaus unterstützen wir nur Flockenarbeiten von TensorFlow Lite. Darüber hinaus ist eine USB 3.0-Verbindung erforderlich, um die Leistung des Coral USB Accelerator zu maximieren. Zusammenfassend ist der Raspberry Pi 4 eine großartige Möglichkeit, Ihren Coral USB Accelerator optimal zu nutzen.
Raspberry Pi4 Obwohl nicht offiziell unterstützt, hat Google ein vorkompiliertes Raspbery Pi-Image mit dem Namen ** Edge TPU Platforms ** für die Verwendung von Edge TPU bereitgestellt.
Es verfügt über ein integriertes trainiertes Bildklassifizierungsmodell usw., das für das maschinelle Lernen mit Raspberry Pi nützlich ist.
Wir werden das Verfahren zur Verwendung des Abbilds von Raspberry Pi 4 von EdgeTPU Platforms erläutern.
Bitte beachten Sie, dass die Schnittstelle des Raspberry Pi 4 für das Netzteil auf ** USB Typ C ** und für HDMI auf ** Micro HDMI ** geändert wurde.
EdgeTPU Platforms
** Wenn Sie mit dem heruntergeladenen Image booten, müssen Sie das Dateisystem an die Größe Ihrer SD-Karte anpassen. ** **.
Der Systembereich (/) vor der Dateisystemerweiterung befindet sich im folgenden Status.
pi@raspberrypi:~ $ df -h
Verwendete Dateisystemgröße Verbleibende Verwendung%Montageposition
/dev/root 3.3G 3.0G 100M 97% /
devtmpfs 1.8G 0 1.8G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mmcblk0p1 253M 41M 213M 16% /boot
tmpfs 386M 0 386M 0% /run/user/1000
Führen Sie den folgenden Befehl aus, um raspi-config
zu starten und interaktiv zu arbeiten.
$ sudo raspi-config
Wählen Sie zunächst ** "7 Erweiterte Optionen" **.
Wählen Sie dann A1 Dateisystem erweitern.
OK klicken.
Führen Sie den folgenden Befehl aus, um neu zu starten.
$ sudo systemctl reboot
Nach dem Neustart sehen Sie, dass der Systembereich (/) erweitert wurde.
pi@raspberrypi:~ $ df -h
Verwendete Dateisystemgröße Verbleibende Verwendung%Montageposition
/dev/root 29G 3.1G 24G 12% /
devtmpfs 1.8G 0 1.8G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mmcblk0p1 253M 41M 213M 16% /boot
tmpfs 386M 0 386M 0% /run/user/1000
Coral USB Accelerator Um den Coral USB Accelerator zu verwenden, müssen Sie folgende Schritte ausführen:
Installieren Sie die Edge-TPU-Laufzeit, um mit der Edge-TPU zu kommunizieren. Darüber hinaus ist eine Bibliothek usw. erforderlich, um TensorFlow Lite mit Python verwenden zu können. In diesem Artikel installieren wir eine einfache tflite_runtime-Bibliothek, um das TensorFlow Lite-Modell in Python zu verwenden.
Öffnen Sie die Box mit dem Coral USB Accelerator.
Schließen Sie den Coral USB Accelerator an den Raspberry Pi 4 an. USB3.0 verfügt über eine ** blaue </ font> ** Schnittstelle.
$ 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
--Installation
$ sudo apt-get install libedgetpu1-std
$ wget https://dl.google.com/coral/python/tflite_runtime-1.14.0-cp37-cp37m-linux_armv7l.whl
--Installation der Bibliothek
$ pip3 install tflite_runtime-1.14.0-cp37-cp37m-linux_armv7l.whl
Bildklassifizierung unter Bezugnahme auf Erste Schritte mit dem USB-Beschleuniger Lassen Sie uns die Maschine laufen.
$ python3 classify_image.py --model models/mobilenet_v2_1.0_224_inat_bird_quant_edgetpu.tflite --labels models/inat_bird_labels.txt --input images/parrot.jpg
INFO: Initialized TensorFlow Lite runtime.
----INFERENCE TIME----
Note: The first inference on Edge TPU is slow because it includes loading the model into Edge TPU memory.
18.6ms
4.6ms
4.6ms
4.6ms
4.6ms
-------RESULTS--------
Ara macao (Scarlet Macaw): 0.76562
Ich habe TensorFlow Lite verwendet, um Inferenzen auf der Edge-TPU durchzuführen. Übrigens ist das Ausgabeergebnis bei Ausführung mit USB 2.0 wie folgt. Sie können sehen, dass es langsamer als USB3.0 ist.
INFO: Initialized TensorFlow Lite runtime.
----INFERENCE TIME----
Note: The first inference on Edge TPU is slow because it includes loading the model into Edge TPU memory.
120.5ms
11.5ms
11.5ms
11.7ms
11.6ms
-------RESULTS--------
Ara macao (Scarlet Macaw): 0.76562
Jetzt können Sie maschinell auf Edge-Geräten lernen.
Erstellen Sie als Nächstes ein Modell mit TensorFlow und konvertieren Sie das Modell in TensorFlow Lite.
Recommended Posts