Alles über den Google Coral USB Accelerator

Der Google Coral USB Accelerator Titelbild

In einem unserer YouTube-Videos über künstliche Intelligenz schrieb ein Kommentator, dass er nicht so sehr an einer geheimnisvollen KI-Box interessiert sei. Das hat mich dazu inspiriert, einen Artikel zu schreiben, in dem das Geheimnis gelüftet wird. Hier ist also alles, was Sie wissen müssen über der Google Coral USB-Beschleuniger.

Der Coral USB Accelerator ist in erster Linie für stromsparende Edge-KI-Anwendungen konzipiert.

Es eignet sich für Aufgaben wie Bild- und Videoanalyse, Objekterkennung und Spracherkennung auf Geräten wie Raspberry Pi oder Laptops.

Übersicht

Kurz gesagt, der Google Coral USB Accelerator ist ein Prozessor, der eine Tensor Processing Unit (TPU) verwendet, eine integrierte Schaltung, die sehr gut in der Lage ist, Matrixmultiplikation und -addition durchzuführen.

Die Matrixmultiplikation ist der Stoff, den man zum Aufbau neuronaler Netze braucht.

Und Sie werden definitiv nicht weit kommen, wenn Sie versuchen, neuronale Netze allein auf Ihrem Raspberry Pi zu erstellen.

Der Beschleuniger fügt also einen weiteren Prozessor hinzu, der speziell für die lineare Algebra zuständig ist, die für maschinelles Lernen erforderlich ist.

Wie Sie wahrscheinlich wissen, besteht die Idee hinter dem maschinellen Lernen darin, Modelle zu entwickeln, die Muster aus einem Datensatz analysieren und lernen. Dieser Datensatz hat verschiedene Eingaben und entsprechende Ausgaben. Sobald diese Modelle trainiert sind, können sie neue Eingaben verarbeiten, die gelernten Muster synthetisieren und entsprechende Ausgaben oder Vorhersagen erstellen.

Google Coral USB-Beschleuniger

TPUs arbeiten beim maschinellen Lernen viel schneller und energiesparender als CPUs, da sie keine anderen Programme ausführen und nicht auf den gemeinsamen Speicher zugreifen müssen.

Die TPU auf dem Coral USB Accelerator verwendet TensorFlow Lite, eine modifizierte Version für kleinere Geräte.

Verwendung des Coral USB Accelerator

Das Besondere daran ist, dass es die KI-Entwicklung so zugänglich macht.

Die ersten Schritte sind ein Kinderspiel.

Alles, was Sie wirklich brauchen, ist ein Google Coral USB Accelerator (natürlich) und ein Computer mit einem freien USB-Anschluss und Python 3.5 oder höher.

Und es ist erwähnenswert, dass es mit Mac, Windows und Linux (insbesondere mit Debian-basierten Betriebssystemen wie Ubuntu oder dem Raspberry Pi OS) funktioniert. Sie können also sicher sein, dass Sie es zum Laufen bringen.

Bei der Einrichtung müssen Sie entscheiden, ob Sie ihn mit maximaler Taktfrequenz oder mit reduzierter Taktfrequenz betreiben wollen. Natürlich ist die maximale Taktfrequenz leistungsfähiger, aber sie verbraucht auch mehr Strom. Und er kann unglaublich heiß werden.

Die Rückseite der Google Coral

Ausführen eines Bilderkennungsmodells

Auf der Google Coral-Websitebieten sie einen wunderbaren Test an, um Ihnen zu zeigen, wie der Coral USB Accelerator funktioniert. In ihrem Beispiel ist er in der Lage, verschiedene Vögel mit ziemlich bemerkenswerter Genauigkeit zu erkennen.

So führen Sie das Bilderkennungsmodell auf Ihrem Raspberry Pi aus. Dies wird mit der reduzierten Taktfrequenz perfekt funktionieren.

Schalten Sie das Gaspedal noch nicht ein.

Zunächst müssen Sie das Terminal aufrufen und den folgenden Code eingeben, um das Edge TPU-Repository hinzuzufügen:

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

Installieren Sie dann die Laufzeitumgebung:

sudo apt-get install libedgetpu1-std

Jetzt kannst du den Beschleuniger anschließen, damit alles synchronisiert ist. Sobald Sie ihn angeschlossen haben, müssen Sie PyCoral installieren:

sudo apt-get install python3-pycoral

Und jetzt können Sie das Modell zum Laufen bringen. Zuerst laden Sie den Code herunter:

mkdir coral && cd coral

git clone https://github.com/google-coral/pycoral.git

cd pycoral

Führen Sie dann Folgendes aus:

bash examples/install_requirements.sh classify_image.py

Und schließlich führen Sie das Modell aus:

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

Die Ausgabe sieht in etwa so aus:

Papagei Ausgang

Sie sehen, dass die Eingabe "parrot.jpg" war und das Modell sie mit einer Genauigkeit von 0,75 % korrekt als Rotrückenara erkannt hat.

Ich habe ein Bild eines nördlichen Kardinals gefunden und es durch das Modell laufen lassen, und hier ist das Ergebnis.

Output des Nordkardinals

Wie Sie sehen können, ergab das Gerät mit einer Zuverlässigkeit von 0,91 einen sehr genauen Wert.

Dann wollte ich sehen, was passiert, wenn ich ein Bild von einer Katze einführe.

Katze Ausgang

Obwohl ich durchaus verstehe, warum sie die Katze für eine Waldohreule hielt, war ich von ihrem Selbstbewusstsein überrascht.

Ich habe versucht, das Programm dazu zu bringen, Bilder von Menschen zu erkennen und zu bestimmen, um welche Vögel es sich handelt, aber leider hat es nicht mitgemacht.

Aber bitte experimentieren Sie ruhig und sehen Sie, was Sie daraus machen können. Kommentieren Sie unten Ihre Ergebnisse!

Schlussfolgerung

Da haben Sie es also. Auch wenn sein ultra-schickes Äußeres eine gewisse Mystik vermitteln mag, ist der Google Coral USB Accelerator kein Geheimtipp.

Er ist ein leistungsstarker Prozessor, der KI in Edge-Geräte bringen kann.

Ganz gleich, ob Sie sich für IoT-Zeug, Robotik oder eine Idee für den Einsatz von KI in alltäglichen Geräten interessieren, der Coral USB Accelerator ist Ihre Eintrittskarte in den Markt. Obwohl ich Ihnen das Beispiel eines Bilderkennungsmodells gegeben habe, kann der Accelerator viel weiter gehen - Videoerkennung, Objekterkennung, geräteinternes Transfer-Lernen usw.

Wir haben auch ein AIY Maker Kit, das all das möglich macht - sehen Sie sich dieses Video an:

Wenn Sie sich für künstliche Intelligenz interessieren, können Sie sich in unserem Einführung in die Künstliche Intelligenz.

Und wenn Sie daran interessiert sind, selbst einige KI-Projekte zu erstellen, können Sie sich einige Projekte ansehen, die KI in unsere Reihe Paragon-Projekte.

Was haben Sie mit dem Beschleuniger vor?

9 Kommentare

  1. Veröffentlich von adam m am September 6, 2023 um 6:17 am

    lubie jak w artykule są przykłady z życia wzięte. dobry fachowy artykuł 🙂

    • Veröffentlich von Adam am September 6, 2023 um 8:03 am

      Dzięki!

  2. Veröffentlich von David Thomas am September 6, 2023 um 4:17 pm

    "Der Kommentator schrieb, dass er nicht so sehr an einer geheimnisvollen KI-Box interessiert sei" - ich nehme an, der Kommentator hat konkrete Gründe genannt.

    Die bedenklichsten Gründe sind die fehlende Herkunft von ML-Outputs und die Unfähigkeit, diese für mögliche Vorschriften bereitzustellen.

    Wo man einen ML betreibt, sagt dazu nichts aus.

  3. Veröffentlich von David Thomas am September 6, 2023 um 4:19 pm

    Korrektur:
    "Der Kommentator schrieb, dass er nicht so sehr an einer geheimnisvollen KI-Box interessiert sei" - ich nehme an, der Kommentator hat keine spezifischen Gründe genannt.

    Die bedenklichsten Gründe sind die fehlende Herkunft von ML-Outputs und die Unfähigkeit, diese für mögliche Vorschriften bereitzustellen.

    Wo man einen ML betreibt, sagt dazu nichts aus.

    • Veröffentlich von Adam am September 12, 2023 um 11:25 am

      Interessanter Punkt, David.

  4. Veröffentlich von Nick am September 8, 2023 um 12:19 pm

    GPU oder TPU???

    • Veröffentlich von Adam am September 8, 2023 um 3:40 pm

      Для искусственного интеллекта, TPU. Безусловно, быстрее.

  5. Veröffentlich von Nerds 2 You am April 23, 2024 um 12:46 am

    Es wäre toll, wenn die Verbindung nicht nach einer Stunde unterbrochen würde und man entweder neu starten oder den Stecker ziehen und wieder einstecken müsste, damit es wieder funktioniert.

  6. Veröffentlich von Alexandr am Juni 21, 2024 um 5:41 pm

    Посмотрите опенсорсный Fregatte NVR, особенно последнюю beta3

Hinterlassen Sie einen Kommentar