Η πλατφόρμα TensorFlow της Google επιτρέπει στους χρήστες της να εκπαιδεύουν ένα AI παρέχοντας εργαλεία και πόρους για μηχανική μάθηση. Για πολύ καιρό, οι μηχανικοί τεχνητής νοημοσύνης χρησιμοποιούσαν παραδοσιακές CPU και GPU για να εκπαιδεύσουν την τεχνητή νοημοσύνη. Αν και αυτοί οι επεξεργαστές μπορούν να χειριστούν διάφορες διαδικασίες μηχανικής εκμάθησης, εξακολουθούν να είναι υλικό γενικής χρήσης που χρησιμοποιείται για διάφορες καθημερινές εργασίες.
Για να επιταχύνει την εκπαίδευση τεχνητής νοημοσύνης, η Google ανέπτυξε ένα Ενσωματωμένο Κύκλωμα Ειδικής Εφαρμογής (ASIC) γνωστό ως Μονάδα Επεξεργασίας Τενσογράφου (TPU). Αλλά, τι είναι μια μονάδα επεξεργασίας τανυστή και πώς επιταχύνουν τον προγραμματισμό AI;
Τι είναι οι μονάδες επεξεργασίας τανυστή (TPU);
Οι Μονάδες Επεξεργασίας Tensor είναι της Google ASIC για μηχανική εκμάθηση. Οι TPU χρησιμοποιούνται ειδικά για βαθιά εκμάθηση για την επίλυση πολύπλοκων πράξεων μήτρας και διανύσματος. Οι TPU είναι βελτιστοποιημένες για την επίλυση λειτουργιών μήτρας και διανύσματος σε εξαιρετικά υψηλές ταχύτητες, αλλά πρέπει να συνδυαστούν με μια CPU για να δίνουν και να εκτελούν εντολές. Οι TPU μπορούν να χρησιμοποιηθούν μόνο με τις Google
Πλατφόρμα TensorFlow ή TensorFlow Lite, είτε μέσω του cloud computing είτε μέσω της έκδοσης lite του σε τοπικό υλικό.Εφαρμογές για TPU
Η Google χρησιμοποιεί TPU από το 2015. Έχουν επίσης επιβεβαιώσει τη χρήση αυτών των νέων επεξεργαστών για την επεξεργασία κειμένου Google Street View, τις Φωτογραφίες Google και τα Αποτελέσματα Αναζήτησης Google (Rank Brain), καθώς καθώς και για τη δημιουργία μιας τεχνητής νοημοσύνης γνωστής ως AlphaGo, η οποία κέρδισε κορυφαίους παίκτες Go και το σύστημα AlphaZero που κέρδισε από κορυφαία προγράμματα στο Chess, Go και Shogi.
Οι TPU μπορούν να χρησιμοποιηθούν σε διάφορες εφαρμογές βαθιάς εκμάθησης, όπως ανίχνευση απάτης, όραση υπολογιστή, φυσική γλώσσα επεξεργασία, αυτοοδηγούμενα αυτοκίνητα, φωνητική τεχνητή νοημοσύνη, γεωργία, εικονικοί βοηθοί, χρηματιστήριο, ηλεκτρονικό εμπόριο και διάφορα κοινωνικά προβλέψεις.
Πότε να χρησιμοποιείτε TPU
Δεδομένου ότι οι TPU είναι υψηλά εξειδικευμένο υλικό για βαθιά εκμάθηση, χάνει πολλές άλλες λειτουργίες που θα περιμένατε συνήθως από έναν επεξεργαστή γενικής χρήσης όπως μια CPU. Έχοντας αυτό κατά νου, υπάρχουν συγκεκριμένα σενάρια όπου η χρήση των TPU θα αποφέρει το καλύτερο αποτέλεσμα κατά την εκπαίδευση AI.
Η καλύτερη στιγμή για να χρησιμοποιήσετε μια TPU είναι για λειτουργίες όπου τα μοντέλα βασίζονται σε μεγάλο βαθμό σε υπολογισμούς μήτρας, όπως συστήματα συστάσεων για μηχανές αναζήτησης. Οι TPU αποδίδουν επίσης εξαιρετικά αποτελέσματα για μοντέλα όπου η τεχνητή νοημοσύνη αναλύει τεράστιες ποσότητες σημείων δεδομένων που θα χρειαστούν πολλές εβδομάδες ή μήνες για να ολοκληρωθούν. Οι μηχανικοί AI χρησιμοποιούν TPU για περιπτώσεις χωρίς προσαρμοσμένα μοντέλα TensorFlow και πρέπει να ξεκινήσουν από την αρχή.
Πότε δεν πρέπει να χρησιμοποιείτε TPU
Όπως αναφέρθηκε προηγουμένως, η βελτιστοποίηση των TPU αναγκάζει αυτούς τους τύπους επεξεργαστών να λειτουργούν μόνο σε συγκεκριμένες λειτουργίες φόρτου εργασίας. Επομένως, υπάρχουν περιπτώσεις όπου η επιλογή χρήσης παραδοσιακής CPU και GPU θα αποφέρει ταχύτερα αποτελέσματα. Αυτές οι περιπτώσεις περιλαμβάνουν:
- Γρήγορη δημιουργία πρωτοτύπων με μέγιστη ευελιξία
- Τα μοντέλα περιορίζονται από τα διαθέσιμα σημεία δεδομένων
- Μοντέλα που είναι απλά και μπορούν να εκπαιδευτούν γρήγορα
- Τα μοντέλα είναι πολύ επαχθή για να αλλάξουν
- Μοντέλα που βασίζονται σε προσαρμοσμένες λειτουργίες TensorFlow γραμμένες σε C++
Εκδόσεις και προδιαγραφές TPU
Από τότε που η Google ανακοίνωσε τις TPU της, το κοινό ενημερώνεται συνεχώς για τις πιο πρόσφατες εκδόσεις των TPU και τις προδιαγραφές τους. Ακολουθεί μια λίστα με όλες τις εκδόσεις TPU με προδιαγραφές:
TPUv1 | TPUv2 | TPUv3 | TPUv4 | Edgev1 | |
---|---|---|---|---|---|
Ημερομηνία εισαγωγής | 2016 | 2017 | 2018 | 2021 | 2018 |
Κόμβος διεργασίας (nm) | 28 | 16 | 16 | 7 | |
Μέγεθος μήτρας (mm²) | 331 | <625 | <700 | <400 | |
Μνήμη σε τσιπ | 28 | 32 | 32 | 144 | |
Ταχύτητα ρολογιού (MHz) | 700 | 700 | 940 | 1050 | |
Μικρότερη διαμόρφωση μνήμης (GB) | 8 DDR3 | 16 HBM | 32 HBM | 32 HBM | |
TDP (Watts) | 75 | 280 | 450 | 175 | 2 |
TOPS (Λειτουργίες Tera ανά δευτερόλεπτο) | 23 | 45 | 90 | ? | 4 |
TOPS/W | 0.3 | 0.16 | 0.2 | ? | 2 |
Όπως μπορείτε να δείτε, οι ταχύτητες ρολογιού TPU δεν φαίνονται και τόσο εντυπωσιακές, ειδικά όταν οι σύγχρονοι επιτραπέζιοι υπολογιστές σήμερα μπορούν να έχουν ταχύτητες ρολογιού 3-5 φορές μεγαλύτερες. Αλλά αν κοιτάξετε τις δύο κάτω σειρές του πίνακα, μπορείτε να δείτε ότι οι TPU μπορούν να επεξεργαστούν 23-90 tera-λειτουργίες ανά δευτερόλεπτο χρησιμοποιώντας μόνο 0,16-0,3 watt ισχύος. Οι TPU εκτιμάται ότι είναι 15-30 φορές ταχύτερες από τις σύγχρονες CPU και GPU όταν χρησιμοποιούν μια διεπαφή νευρωνικού δικτύου.
Με κάθε έκδοση που κυκλοφορεί, οι νεότερες TPU παρουσιάζουν σημαντικές βελτιώσεις και δυνατότητες. Ακολουθούν μερικά κύρια σημεία για κάθε έκδοση.
- TPUv1: Το πρώτο TPU που ανακοινώθηκε δημόσια. Σχεδιασμένο ως μηχανή πολλαπλασιασμού μήτρας 8-bit και περιορίζεται στην επίλυση μόνο ακεραίων.
- TPUv2: Εφόσον οι μηχανικοί παρατήρησαν ότι το TPUv1 ήταν περιορισμένο σε εύρος ζώνης. Αυτή η έκδοση έχει πλέον διπλάσιο εύρος ζώνης μνήμης με 16 GB RAM. Αυτή η έκδοση μπορεί τώρα να λύσει κινητήρια σημεία, καθιστώντας την χρήσιμη για εκπαίδευση και εξαγωγή συμπερασμάτων.
- TPUv3: Κυκλοφόρησε το 2018, το TPUv3 έχει διπλάσιο επεξεργαστές και αναπτύσσεται με τέσσερις φορές περισσότερα τσιπ από το TPUv2. Οι αναβαθμίσεις επιτρέπουν σε αυτή την έκδοση να έχει οκταπλάσια απόδοση σε σχέση με τις προηγούμενες εκδόσεις.
- TPUv4: Αυτή είναι η πιο πρόσφατη έκδοση του TPU που ανακοινώθηκε στις 18 Μαΐου 2021. Ο Διευθύνων Σύμβουλος της Google ανακοίνωσε ότι αυτή η έκδοση θα έχει υπερδιπλάσια απόδοση από το TPU v3.
- Edge TPU: Αυτή η έκδοση TPU προορίζεται για μικρότερες λειτουργίες που έχουν βελτιστοποιηθεί ώστε να χρησιμοποιούν λιγότερη ισχύ από άλλες εκδόσεις TPU στη συνολική λειτουργία. Αν και χρησιμοποιεί μόνο δύο watt ισχύος, το Edge TPU μπορεί να επιλύσει έως και τέσσερις λειτουργίες εδάφους ανά δευτερόλεπτο. Το Edge TPU βρίσκεται μόνο σε μικρές φορητές συσκευές όπως το smartphone Pixel 4 της Google.
Πώς έχετε πρόσβαση σε TPU; Ποιος μπορεί να τα χρησιμοποιήσει;
Οι TPU είναι ιδιόκτητες μονάδες επεξεργασίας που έχουν σχεδιαστεί από την Google για χρήση με την πλατφόρμα TensorFlow. Η πρόσβαση τρίτων σε αυτούς τους επεξεργαστές επιτρέπεται από το 2018. Σήμερα, οι TPU (εκτός από τις Edge TPU) είναι προσβάσιμες μόνο μέσω της Google Υπηρεσίες υπολογιστών μέσω του cloud. Ενώ το υλικό Edge TPU μπορεί να αγοραστεί μέσω του smartphone Pixel 4 της Google και του κιτ πρωτοτύπων που είναι γνωστό ως Coral.
Το Coral είναι ένας επιταχυντής USB που χρησιμοποιεί USB 3.0 Type C για δεδομένα και τροφοδοσία. Παρέχει στη συσκευή σας υπολογιστικό Edge TPU με δυνατότητα 4 TOPS για κάθε 2 W ισχύος. Αυτό το κιτ μπορεί να τρέξει σε μηχανήματα που χρησιμοποιούν Windows 10, macOS και Debian Linux (μπορεί επίσης να λειτουργήσει με Raspberry Pi).
Άλλοι εξειδικευμένοι επιταχυντές AI
Με την τεχνητή νοημοσύνη να είναι στη μόδα την τελευταία δεκαετία, η Big Tech αναζητά συνεχώς τρόπους για να κάνει τη μηχανική μάθηση όσο το δυνατόν πιο γρήγορη και αποτελεσματική. Αν και τα TPU της Google είναι αναμφισβήτητα τα πιο δημοφιλή ASIC που έχουν αναπτυχθεί για βαθιά μάθηση, άλλες εταιρείες τεχνολογίας όπως η Intel, η Microsoft, η Alibaba και η Qualcomm έχουν επίσης αναπτύξει τους δικούς τους επιταχυντές τεχνητής νοημοσύνης. Αυτά περιλαμβάνουν το Microsoft Brainwave, το Intel Neural Compute Stick και τη IPU (Intelligence Processing Unit) της Graphicore.
Όμως, ενώ αναπτύσσεται περισσότερο υλικό τεχνητής νοημοσύνης, δυστυχώς, τα περισσότερα δεν είναι ακόμη διαθέσιμα στην αγορά και πολλά δεν θα το κάνουν ποτέ. Μέχρι τη στιγμή που γράφω, εάν θέλετε πραγματικά να αγοράσετε υλικό επιταχυντή AI, οι πιο δημοφιλείς επιλογές είναι να αγοράσετε ένα κιτ πρωτοτύπων Coral, ένα Intel NCS, ένα Graphicore Bow Pod ή έναν Asus IoT AI Accelerator. Εάν θέλετε απλώς πρόσβαση σε εξειδικευμένο υλικό τεχνητής νοημοσύνης, μπορείτε να χρησιμοποιήσετε τις υπηρεσίες cloud computing της Google ή άλλες εναλλακτικές λύσεις όπως το Microsoft Brainwave.