Τα πάντα για τον Επιταχυντή USB Google Coral
Σε ένα από τα βίντεο μας στο YouTube σχετικά με την τεχνητή νοημοσύνη, ένας σχολιαστής έγραψε ότι δεν τον ενδιαφέρει τόσο πολύ ένα μυστηριώδες κουτί τεχνητής νοημοσύνης. Αυτό με ενέπνευσε να γράψω ένα άρθρο που θα ξεδιαλύνει το μυστήριο. Οπότε εδώ είναι όλα όσα πρέπει να ξέρετε για το τον επιταχυντή USB Google Coral.
Ο επιταχυντής Coral USB έχει σχεδιαστεί κυρίως για εφαρμογές AI χαμηλής κατανάλωσης ενέργειας.
Είναι κατάλληλο για εργασίες όπως ανάλυση εικόνας και βίντεο, ανίχνευση αντικειμένων και αναγνώριση ομιλίας σε συσκευές όπως το Raspberry Pi ή φορητούς υπολογιστές.
Επισκόπηση
Εν συντομία, ο επιταχυντής USB του Google Coral είναι ένας επεξεργαστής που χρησιμοποιεί μια μονάδα επεξεργασίας αισθητήρων (TPU), η οποία είναι ένα ολοκληρωμένο κύκλωμα που είναι πολύ καλό στον πολλαπλασιασμό και την πρόσθεση πινάκων.
Ο πολλαπλασιασμός πινάκων είναι το υλικό που χρειάζεστε για τη δημιουργία νευρωνικών δικτύων.
Και σίγουρα δεν θα πάτε πολύ μακριά αν προσπαθήσετε να δημιουργήσετε νευρωνικά δίκτυα μόνο με το Raspberry Pi.
Ως εκ τούτου, ο επιταχυντής προσθέτει έναν ακόμη επεξεργαστή που είναι αφιερωμένος ειδικά στην εκτέλεση της γραμμικής άλγεβρας που απαιτείται για τη μηχανική μάθηση.
Όπως πιθανώς γνωρίζετε, η ιδέα πίσω από τη μηχανική μάθηση είναι η ανάπτυξη μοντέλων που αναλύουν και μαθαίνουν μοτίβα από ένα σύνολο δεδομένων. Αυτό το σύνολο δεδομένων έχει διάφορες εισόδους και αντίστοιχες εξόδους. Στη συνέχεια, αφού εκπαιδευτούν, αυτά τα μοντέλα μπορούν να λαμβάνουν νέες εισόδους, να συνθέτουν τα μαθημένα μοτίβα και να παράγουν κατάλληλες εξόδους ή προβλέψεις.
Οι 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, προσφέρουν μια θαυμάσια δοκιμή για να σας δείξουν πώς λειτουργεί ο 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 βαθμούς εμπιστοσύνης.
Έτσι, ήθελα να δω τι θα συνέβαινε αν του έδινα την εικόνα μιας γάτας.
Παρόλο που καταλαβαίνω απόλυτα γιατί νόμιζε ότι η γάτα ήταν κουκουβάγια, εξεπλάγην από το επίπεδο αυτοπεποίθησής της.
Προσπάθησα να το κάνω να αναγνωρίζει φωτογραφίες ανθρώπων και να προσδιορίζει ποια πουλιά ήταν, αλλά δυστυχώς δεν συνεργάστηκε.
Αλλά παρακαλώ πειραματιστείτε ελεύθερα και δείτε τι μπορείτε να βγάλετε από αυτό. Σχολιάστε παρακάτω με τα αποτελέσματα!
Συμπέρασμα
Ορίστε λοιπόν. Αν και το εξαιρετικά κομψό εξωτερικό του μπορεί να δώσει κάποια αίσθηση μυσταγωγίας, ο επιταχυντής USB Coral της Google δεν είναι ένα κουτί μυστήριο.
Πρόκειται για έναν ισχυρό επεξεργαστή που μπορεί να φέρει την Τεχνητή Νοημοσύνη σε ακραίες συσκευές.
Έτσι, είτε ασχολείστε με πράγματα IoT, ρομποτική ή έχετε μια ιδέα για την εισαγωγή τεχνητής νοημοσύνης σε καθημερινές συσκευές, ο επιταχυντής Coral USB Accelerator είναι το εισιτήριό σας. Αν και σας έδωσα το παράδειγμα ενός μοντέλου αναγνώρισης εικόνας, ο επιταχυντής μπορεί να προχωρήσει πολύ περισσότερο - αναγνώριση βίντεο, ανίχνευση αντικειμένων, εκμάθηση μεταφοράς στη συσκευή, κ.λπ.
Έχουμε επίσης ένα AIY Maker Kit που τα κάνει όλα αυτά δυνατά - δείτε αυτό το βίντεο:
Αν ενδιαφέρεστε για την Τεχνητή Νοημοσύνη, μπορείτε να δείτε το Εισαγωγή στην Τεχνητή Νοημοσύνη.
Και αν ενδιαφέρεστε να φτιάξετε μόνοι σας κάποια έργα Τεχνητής Νοημοσύνης, μπορείτε να δείτε μερικά έργα που χρησιμοποιούν την Τεχνητή Νοημοσύνη σε η σειρά μας Paragon Projects.
Τι σκοπεύετε να κάνετε με τον επιταχυντή;
lubie jak w artykule są przykłady z życia wzięte. dobry fachowy artykuł 🙂
Dzięki!
hola, tenés idea si está placa USB sirve para acelerar una PC que tenga instalado algún GenAI como ollama ? con algún modelo libre como llama 3.1 o Gemma? usando ollama ? gracias
"Ο σχολιαστής έγραψε ότι δεν ενδιαφέρεται τόσο πολύ για ένα μυστηριώδες κουτί ΑΙ" - Υποθέτω ότι ο σχολιαστής εξέφρασε συγκεκριμένους λόγους.
Οι πιο ανησυχητικοί λόγοι είναι η έλλειψη προέλευσης από τις εκροές του ML και η αδυναμία παροχής της για ενδεχόμενες ρυθμίσεις.
Ο τόπος εκτέλεσης ενός ML δεν παρέχει τίποτα γι' αυτό.
διόρθωση:
"ο σχολιαστής έγραψε ότι δεν ενδιαφέρεται τόσο πολύ για ένα μυστηριώδες κουτί ΑΙ" - Υποθέτω ότι ο σχολιαστής δεν εξέφρασε συγκεκριμένους λόγους.
Οι πιο ανησυχητικοί λόγοι είναι η έλλειψη προέλευσης από τις εκροές του ML και η αδυναμία παροχής της για ενδεχόμενες ρυθμίσεις.
Ο τόπος εκτέλεσης ενός ML δεν παρέχει τίποτα γι' αυτό.
Ενδιαφέρουσα άποψη, David.
а что быстрее: GPU ή TPU????
Για искусственного интеллекта, TPU. Безусловно, быстрее.
Θα ήταν υπέροχο αν δεν αποσυνδέονταν μετά από μια ώρα και δεν απαιτούσε είτε επανεκκίνηση είτε αποσύνδεση και σύνδεση για να ξαναλειτουργήσει.
Посмотрите опенсорсный φρεγάτα NVR, ιδιαίτερα последнюю beta3