Τα πάντα για τον Επιταχυντή USB Google Coral

Εικόνα τίτλου του επιταχυντή Google Coral USB

Σε ένα από τα βίντεο μας στο YouTube σχετικά με την τεχνητή νοημοσύνη, ένας σχολιαστής έγραψε ότι δεν τον ενδιαφέρει τόσο πολύ ένα μυστηριώδες κουτί τεχνητής νοημοσύνης. Αυτό με ενέπνευσε να γράψω ένα άρθρο που θα ξεδιαλύνει το μυστήριο. Οπότε εδώ είναι όλα όσα πρέπει να ξέρετε για το τον επιταχυντή USB Google Coral.

Ο επιταχυντής Coral USB έχει σχεδιαστεί κυρίως για εφαρμογές AI χαμηλής κατανάλωσης ενέργειας.

Είναι κατάλληλο για εργασίες όπως ανάλυση εικόνας και βίντεο, ανίχνευση αντικειμένων και αναγνώριση ομιλίας σε συσκευές όπως το Raspberry Pi ή φορητούς υπολογιστές.

Επισκόπηση

Εν συντομία, ο επιταχυντής USB του Google Coral είναι ένας επεξεργαστής που χρησιμοποιεί μια μονάδα επεξεργασίας αισθητήρων (TPU), η οποία είναι ένα ολοκληρωμένο κύκλωμα που είναι πολύ καλό στον πολλαπλασιασμό και την πρόσθεση πινάκων.

Ο πολλαπλασιασμός πινάκων είναι το υλικό που χρειάζεστε για τη δημιουργία νευρωνικών δικτύων.

Και σίγουρα δεν θα πάτε πολύ μακριά αν προσπαθήσετε να δημιουργήσετε νευρωνικά δίκτυα μόνο με το Raspberry Pi.

Ως εκ τούτου, ο επιταχυντής προσθέτει έναν ακόμη επεξεργαστή που είναι αφιερωμένος ειδικά στην εκτέλεση της γραμμικής άλγεβρας που απαιτείται για τη μηχανική μάθηση.

Όπως πιθανώς γνωρίζετε, η ιδέα πίσω από τη μηχανική μάθηση είναι η ανάπτυξη μοντέλων που αναλύουν και μαθαίνουν μοτίβα από ένα σύνολο δεδομένων. Αυτό το σύνολο δεδομένων έχει διάφορες εισόδους και αντίστοιχες εξόδους. Στη συνέχεια, αφού εκπαιδευτούν, αυτά τα μοντέλα μπορούν να λαμβάνουν νέες εισόδους, να συνθέτουν τα μαθημένα μοτίβα και να παράγουν κατάλληλες εξόδους ή προβλέψεις.

Επιταχυντής Google Coral USB

Οι TPU λειτουργούν πολύ πιο γρήγορα και με πολύ λιγότερη ενέργεια από τις CPU για μηχανική μάθηση, επειδή δεν εκτελούν άλλα προγράμματα και δεν χρειάζεται να έχουν πρόσβαση σε κοινή μνήμη.

Η TPU στον επιταχυντή Coral USB χρησιμοποιεί το TensorFlow Lite, το οποίο είναι μια τροποποιημένη έκδοση για μικρότερες συσκευές.

Χρήση του επιταχυντή Coral USB

Αυτό που είναι ιδιαίτερα σπουδαίο είναι το πόσο προσιτή κάνει την ανάπτυξη της ΤΝ.

Το ξεκίνημα είναι πανεύκολο.

Πραγματικά, το μόνο που χρειάζεστε είναι ένας επιταχυντής USB Google Coral (προφανώς) και έναν υπολογιστή με μία ελεύθερη θύρα USB και Python 3.5 ή νεότερη έκδοση.

Και αξίζει να αναφέρουμε ότι λειτουργεί με Mac, Windows και Linux (συγκεκριμένα με λειτουργικά συστήματα που βασίζονται στο Debian, όπως το Ubuntu ή το Raspberry Pi OS). Έτσι, είναι σίγουρο ότι θα μπορέσετε να το βάλετε σε λειτουργία.

Όταν το ρυθμίζετε, πρέπει να αποφασίσετε αν θέλετε να λειτουργεί στη μέγιστη συχνότητα ρολογιού ή σε μειωμένη συχνότητα ρολογιού. Προφανώς, η μέγιστη συχνότητα ρολογιού είναι πιο ισχυρή, αλλά θα καταναλώνει επίσης περισσότερη ενέργεια. Και μπορεί να ζεσταθεί απίστευτα.

Το πίσω μέρος του Google Coral

Εκτέλεση ενός μοντέλου αναγνώρισης εικόνας

Στο Ιστοσελίδα Google Coral, προσφέρουν μια θαυμάσια δοκιμή για να σας δείξουν πώς λειτουργεί ο Coral USB Accelerator. Στο παράδειγμά τους, είναι σε θέση να αναγνωρίζει διαφορετικά πουλιά με αρκετά αξιοσημείωτη ακρίβεια.

Να λοιπόν πώς τρέχετε το μοντέλο αναγνώρισης εικόνας στο Raspberry Pi σας. Αυτό θα λειτουργήσει άψογα με τη μειωμένη συχνότητα ρολογιού.

Μην βάζετε ακόμα το γκάζι στην πρίζα.

Αρχικά, πρέπει να μεταβείτε στο τερματικό και να πληκτρολογήσετε τον ακόλουθο κώδικα για να προσθέσετε το αποθετήριο Edge TPU:

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

Στη συνέχεια, εγκαταστήστε το runtime:

sudo apt-get install libedgetpu1-std

Τώρα μπορείτε να συνδέσετε τον επιταχυντή ώστε όλα να είναι συγχρονισμένα. Μόλις το συνδέσετε, πρέπει να εγκαταστήσετε το PyCoral:

sudo apt-get install python3-pycoral

Και τώρα μπορείτε να βάλετε το μοντέλο σε λειτουργία. Πρώτα, κατεβάζετε τον κώδικα:

mkdir coral && cd coral

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

cd pycoral

Στη συνέχεια, εκτελέστε τα ακόλουθα:

bash examples/install_requirements.sh classify_image.py

Και τέλος, εκτελείτε το μοντέλο:

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

Η έξοδος μοιάζει κάπως έτσι:

Έξοδος παπαγάλου

Μπορείτε να δείτε ότι η είσοδος ήταν "parrot.jpg" και το μοντέλο το διάβασε σωστά ως Scarlet Macaw, με ακρίβεια 0,75.

Βρήκα μια εικόνα ενός βόρειου καρδιναλίου και την έτρεξα στο μοντέλο και να τι μου έδωσε.

Βόρεια καρδερίνα Παραγωγή

Όπως μπορείτε να δείτε, έδωσε μια εξαιρετικά ακριβή μέτρηση με 0,91 βαθμούς εμπιστοσύνης.

Έτσι, ήθελα να δω τι θα συνέβαινε αν του έδινα την εικόνα μιας γάτας.

Cat Έξοδος

Παρόλο που καταλαβαίνω απόλυτα γιατί νόμιζε ότι η γάτα ήταν κουκουβάγια, εξεπλάγην από το επίπεδο αυτοπεποίθησής της.

Προσπάθησα να το κάνω να αναγνωρίζει φωτογραφίες ανθρώπων και να προσδιορίζει ποια πουλιά ήταν, αλλά δυστυχώς δεν συνεργάστηκε.

Αλλά παρακαλώ πειραματιστείτε ελεύθερα και δείτε τι μπορείτε να βγάλετε από αυτό. Σχολιάστε παρακάτω με τα αποτελέσματα!

Συμπέρασμα

Ορίστε λοιπόν. Αν και το εξαιρετικά κομψό εξωτερικό του μπορεί να δώσει κάποια αίσθηση μυσταγωγίας, ο επιταχυντής USB Coral της Google δεν είναι ένα κουτί μυστήριο.

Πρόκειται για έναν ισχυρό επεξεργαστή που μπορεί να φέρει την Τεχνητή Νοημοσύνη σε ακραίες συσκευές.

Έτσι, είτε ασχολείστε με πράγματα IoT, ρομποτική ή έχετε μια ιδέα για την εισαγωγή τεχνητής νοημοσύνης σε καθημερινές συσκευές, ο επιταχυντής Coral USB Accelerator είναι το εισιτήριό σας. Αν και σας έδωσα το παράδειγμα ενός μοντέλου αναγνώρισης εικόνας, ο επιταχυντής μπορεί να προχωρήσει πολύ περισσότερο - αναγνώριση βίντεο, ανίχνευση αντικειμένων, εκμάθηση μεταφοράς στη συσκευή, κ.λπ.

Έχουμε επίσης ένα AIY Maker Kit που τα κάνει όλα αυτά δυνατά - δείτε αυτό το βίντεο:

Αν ενδιαφέρεστε για την Τεχνητή Νοημοσύνη, μπορείτε να δείτε το Εισαγωγή στην Τεχνητή Νοημοσύνη.

Και αν ενδιαφέρεστε να φτιάξετε μόνοι σας κάποια έργα Τεχνητής Νοημοσύνης, μπορείτε να δείτε μερικά έργα που χρησιμοποιούν την Τεχνητή Νοημοσύνη σε η σειρά μας Paragon Projects.

Τι σκοπεύετε να κάνετε με τον επιταχυντή;

8 Σχόλια

  1. adam m στις Σεπτέμβριος 6, 2023 στις 6:17 πμ

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

  2. David Thomas στις Σεπτέμβριος 6, 2023 στις 4:17 μμ

    "Ο σχολιαστής έγραψε ότι δεν ενδιαφέρεται τόσο πολύ για ένα μυστηριώδες κουτί ΑΙ" - Υποθέτω ότι ο σχολιαστής εξέφρασε συγκεκριμένους λόγους.

    Οι πιο ανησυχητικοί λόγοι είναι η έλλειψη προέλευσης από τις εκροές του ML και η αδυναμία παροχής της για ενδεχόμενες ρυθμίσεις.

    Ο τόπος εκτέλεσης ενός ML δεν παρέχει τίποτα γι' αυτό.

  3. David Thomas στις Σεπτέμβριος 6, 2023 στις 4:19 μμ

    διόρθωση:
    "ο σχολιαστής έγραψε ότι δεν ενδιαφέρεται τόσο πολύ για ένα μυστηριώδες κουτί ΑΙ" - Υποθέτω ότι ο σχολιαστής δεν εξέφρασε συγκεκριμένους λόγους.

    Οι πιο ανησυχητικοί λόγοι είναι η έλλειψη προέλευσης από τις εκροές του ML και η αδυναμία παροχής της για ενδεχόμενες ρυθμίσεις.

    Ο τόπος εκτέλεσης ενός ML δεν παρέχει τίποτα γι' αυτό.

    • Adam στις Σεπτέμβριος 12, 2023 στις 11:25 πμ

      Ενδιαφέρουσα άποψη, David.

  4. Nick στις Σεπτέμβριος 8, 2023 στις 12:19 μμ

    а что быстрее: GPU ή TPU????

    • Adam στις Σεπτέμβριος 8, 2023 στις 3:40 μμ

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

  5. Nerds 2 You στις Απρίλιος 23, 2024 στις 12:46 πμ

    It would be great if it didn’t disconnect after an hour and require either a reboot or unplug and plug to get it working again.

Αφήστε ένα σχόλιο