Μεγιστοποιήστε την απόδοση σε εφαρμογές Edge AI - KDnuggets

Μεγιστοποιήστε την απόδοση σε εφαρμογές Edge AI – KDnuggets

Κόμβος πηγής: 2919295

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

  • Επιλογή των μηχανών υπολογιστών σωστού μεγέθους για να ανταποκρίνονται ή να υπερβαίνουν τα απαιτούμενα επίπεδα απόδοσης. Για μια εφαρμογή τεχνητής νοημοσύνης, αυτοί οι υπολογιστικοί κινητήρες πρέπει να εκτελούν τις λειτουργίες ολόκληρης της γραμμής όρασης (δηλαδή, προ και μετα-επεξεργασία βίντεο, εξαγωγή συμπερασμάτων νευρωνικών δικτύων).

Ενδέχεται να απαιτείται ένας αποκλειστικός επιταχυντής AI, είτε είναι διακριτός είτε ενσωματωμένος σε ένα SoC (σε αντίθεση με την εκτέλεση της εξαγωγής συμπερασμάτων AI σε μια CPU ή μια GPU).

  • Κατανόηση της διαφοράς μεταξύ απόδοσης και καθυστέρησης. όπου η διεκπεραίωση είναι ο ρυθμός επεξεργασίας των δεδομένων σε ένα σύστημα και η καθυστέρηση μετρά την καθυστέρηση επεξεργασίας δεδομένων μέσω του συστήματος και συχνά συνδέεται με την απόκριση σε πραγματικό χρόνο. Για παράδειγμα, ένα σύστημα μπορεί να δημιουργήσει δεδομένα εικόνας με ταχύτητα 100 καρέ ανά δευτερόλεπτο (διακίνηση), αλλά χρειάζονται 100 ms (λανθάνουσα ώρα) για να περάσει μια εικόνα από το σύστημα.   
  • Λαμβάνοντας υπόψη τη δυνατότητα εύκολης κλιμάκωσης της απόδοσης της τεχνητής νοημοσύνης στο μέλλον για να καλύψει τις αυξανόμενες ανάγκες, τις μεταβαλλόμενες απαιτήσεις και τις εξελισσόμενες τεχνολογίες (π.χ. πιο προηγμένα μοντέλα τεχνητής νοημοσύνης για αυξημένη λειτουργικότητα και ακρίβεια). Μπορείτε να επιτύχετε κλιμάκωση απόδοσης χρησιμοποιώντας επιταχυντές AI σε μορφή module ή με πρόσθετα τσιπ επιταχυντή AI.

Οι πραγματικές απαιτήσεις απόδοσης εξαρτώνται από την εφαρμογή. Συνήθως, μπορεί κανείς να αναμένει ότι για την ανάλυση βίντεο, το σύστημα πρέπει να επεξεργάζεται ροές δεδομένων που προέρχονται από κάμερες με ταχύτητα 30-60 καρέ ανά δευτερόλεπτο και ανάλυση 1080p ή 4k. Μια κάμερα με δυνατότητα AI θα επεξεργαζόταν μια ενιαία ροή. μια ακραία συσκευή θα επεξεργάζεται πολλαπλές ροές παράλληλα. Σε κάθε περίπτωση, το σύστημα τεχνητής νοημοσύνης άκρης πρέπει να υποστηρίζει τις λειτουργίες προεπεξεργασίας για τη μετατροπή των δεδομένων αισθητήρα της κάμερας σε μορφή που ταιριάζει με τις απαιτήσεις εισόδου του τμήματος εξαγωγής συμπερασμάτων τεχνητής νοημοσύνης (Εικόνα 1).

Οι λειτουργίες προεπεξεργασίας λαμβάνουν τα ακατέργαστα δεδομένα και εκτελούν εργασίες όπως αλλαγή μεγέθους, κανονικοποίηση και μετατροπή χρωματικού χώρου, πριν τροφοδοτήσουν την είσοδο στο μοντέλο που εκτελείται στον επιταχυντή AI. Η προεπεξεργασία μπορεί να χρησιμοποιήσει αποτελεσματικές βιβλιοθήκες επεξεργασίας εικόνας όπως το OpenCV για να μειώσει τους χρόνους προεπεξεργασίας. Η μεταεπεξεργασία περιλαμβάνει την ανάλυση του αποτελέσματος του συμπεράσματος. Χρησιμοποιεί εργασίες όπως η μη μέγιστη καταστολή (το NMS ερμηνεύει την έξοδο των περισσότερων μοντέλων ανίχνευσης αντικειμένων) και την εμφάνιση εικόνων για να δημιουργήσει χρήσιμες πληροφορίες, όπως οριοθέτηση πλαισίων, ετικέτες κλάσεων ή βαθμολογίες εμπιστοσύνης.

 

Μεγιστοποιήστε την απόδοση σε εφαρμογές Edge AI
Εικόνα 1. Για την εξαγωγή συμπερασμάτων μοντέλων τεχνητής νοημοσύνης, οι λειτουργίες πριν και μετά την επεξεργασία συνήθως εκτελούνται σε έναν επεξεργαστή εφαρμογών.
 

Η εξαγωγή συμπερασμάτων μοντέλων AI μπορεί να έχει την πρόσθετη πρόκληση της επεξεργασίας πολλαπλών μοντέλων νευρωνικών δικτύων ανά πλαίσιο, ανάλογα με τις δυνατότητες της εφαρμογής. Οι εφαρμογές υπολογιστικής όρασης συνήθως περιλαμβάνουν πολλαπλές εργασίες τεχνητής νοημοσύνης που απαιτούν μια σειρά από πολλά μοντέλα. Επιπλέον, η έξοδος ενός μοντέλου είναι συχνά η είσοδος του επόμενου μοντέλου. Με άλλα λόγια, τα μοντέλα σε μια εφαρμογή συχνά εξαρτώνται το ένα από το άλλο και πρέπει να εκτελούνται διαδοχικά. Το ακριβές σύνολο μοντέλων που θα εκτελεστούν ενδέχεται να μην είναι στατικό και μπορεί να ποικίλλει δυναμικά, ακόμη και ανά καρέ. 

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

Για παράδειγμα, η παρακολούθηση αντικειμένων που βασίζεται στην πρόβλεψη κίνησης βασίζεται σε συνεχείς ανιχνεύσεις για τον προσδιορισμό ενός διανύσματος που χρησιμοποιείται για την αναγνώριση του αντικειμένου που παρακολουθείται σε μια μελλοντική θέση. Η αποτελεσματικότητα αυτής της προσέγγισης είναι περιορισμένη επειδή στερείται πραγματικής ικανότητας επαναναγνώρισης. Με την πρόβλεψη κίνησης, το ίχνος ενός αντικειμένου μπορεί να χαθεί λόγω χαμένων ανιχνεύσεων, αποφράξεων ή αποχώρησης του αντικειμένου από το οπτικό πεδίο, ακόμη και στιγμιαία. Μόλις χαθεί, δεν υπάρχει τρόπος να συσχετίσετε ξανά το κομμάτι του αντικειμένου. Η προσθήκη ταυτοποίησης λύνει αυτόν τον περιορισμό, αλλά απαιτεί ενσωμάτωση οπτικής εμφάνισης (δηλ. δακτυλικό αποτύπωμα εικόνας). Οι ενσωματώσεις εμφάνισης απαιτούν ένα δεύτερο δίκτυο για τη δημιουργία ενός διανύσματος χαρακτηριστικών με την επεξεργασία της εικόνας που περιέχεται μέσα στο πλαίσιο οριοθέτησης του αντικειμένου που ανιχνεύεται από το πρώτο δίκτυο. Αυτή η ενσωμάτωση μπορεί να χρησιμοποιηθεί για την εκ νέου αναγνώριση του αντικειμένου, ανεξαρτήτως χρόνου ή χώρου. Δεδομένου ότι πρέπει να δημιουργηθούν ενσωματώσεις για κάθε αντικείμενο που ανιχνεύεται στο οπτικό πεδίο, οι απαιτήσεις επεξεργασίας αυξάνονται καθώς η σκηνή γίνεται πιο απασχολημένη. Η παρακολούθηση αντικειμένων με επαναπροσδιορισμό απαιτεί προσεκτική εξέταση μεταξύ της εκτέλεσης ανίχνευσης υψηλής ακρίβειας / υψηλής ανάλυσης / υψηλής ταχύτητας καρέ και της δέσμευσης επαρκούς επιβάρυνσης για την επεκτασιμότητα των ενσωματώσεων. Ένας τρόπος για να λυθεί η απαίτηση επεξεργασίας είναι να χρησιμοποιήσετε έναν αποκλειστικό επιταχυντή AI. Όπως αναφέρθηκε προηγουμένως, ο κινητήρας AI του SoC μπορεί να υποφέρει από την έλλειψη πόρων κοινής μνήμης. Η βελτιστοποίηση μοντέλου μπορεί επίσης να χρησιμοποιηθεί για τη μείωση της απαίτησης επεξεργασίας, αλλά θα μπορούσε να επηρεάσει την απόδοση ή/και την ακρίβεια.

Σε μια έξυπνη κάμερα ή συσκευή edge, το ενσωματωμένο SoC (δηλαδή, ο κεντρικός επεξεργαστής) αποκτά τα καρέ βίντεο και εκτελεί τα βήματα προεπεξεργασίας που περιγράψαμε προηγουμένως. Αυτές οι λειτουργίες μπορούν να εκτελεστούν με πυρήνες CPU ή GPU του SoC (εάν υπάρχει διαθέσιμο), αλλά μπορούν επίσης να εκτελεστούν από ειδικούς επιταχυντές υλικού στο SoC (π.χ. επεξεργαστής σήματος εικόνας). Μετά την ολοκλήρωση αυτών των βημάτων προεπεξεργασίας, ο επιταχυντής AI που είναι ενσωματωμένος στο SoC μπορεί στη συνέχεια να έχει απευθείας πρόσβαση σε αυτήν την κβαντισμένη είσοδο από τη μνήμη του συστήματος ή στην περίπτωση ενός διακριτού επιταχυντή τεχνητής νοημοσύνης, η είσοδος παραδίδεται στη συνέχεια για συμπέρασμα, συνήθως μέσω Διασύνδεση USB ή PCIe. 

Ένα ενσωματωμένο SoC μπορεί να περιέχει μια σειρά υπολογιστικών μονάδων, συμπεριλαμβανομένων CPU, GPU, επιταχυντή AI, επεξεργαστές όρασης, κωδικοποιητές/αποκωδικοποιητές βίντεο, επεξεργαστή σήματος εικόνας (ISP) και πολλά άλλα. Αυτές οι υπολογιστικές μονάδες μοιράζονται όλες τον ίδιο δίαυλο μνήμης και κατά συνέπεια έχουν πρόσβαση στην ίδια μνήμη. Επιπλέον, η CPU και η GPU μπορεί επίσης να παίξουν κάποιο ρόλο στο συμπέρασμα και αυτές οι μονάδες θα είναι απασχολημένες με την εκτέλεση άλλων εργασιών σε ένα αναπτυγμένο σύστημα. Αυτό εννοούμε με τον όρο γενικά έξοδα σε επίπεδο συστήματος (Εικόνα 2).

Πολλοί προγραμματιστές αξιολογούν λανθασμένα την απόδοση του ενσωματωμένου επιταχυντή AI στο SoC χωρίς να λάβουν υπόψη την επίδραση των επιβαρύνσεων σε επίπεδο συστήματος στη συνολική απόδοση. Για παράδειγμα, εξετάστε το ενδεχόμενο να εκτελέσετε ένα σημείο αναφοράς YOLO σε έναν επιταχυντή AI 50 TOPS ενσωματωμένο σε ένα SoC, το οποίο μπορεί να λάβει ένα αποτέλεσμα αναφοράς 100 συμπερασμάτων/δευτερόλεπτο (IPS). Αλλά σε ένα αναπτυγμένο σύστημα με όλες τις άλλες υπολογιστικές του μονάδες ενεργές, αυτά τα 50 TOPS θα μπορούσαν να μειωθούν σε περίπου 12 TOPS και η συνολική απόδοση θα απέδιδε μόνο 25 IPS, υποθέτοντας έναν γενναιόδωρο συντελεστή χρήσης 25%. Τα γενικά έξοδα συστήματος είναι πάντα ένας παράγοντας εάν η πλατφόρμα επεξεργάζεται συνεχώς ροές βίντεο. Εναλλακτικά, με έναν διακριτό επιταχυντή τεχνητής νοημοσύνης (π.χ. Kinara Ara-1, Hailo-8, Intel Myriad X), η χρήση σε επίπεδο συστήματος θα μπορούσε να είναι μεγαλύτερη από 90% επειδή μόλις το κεντρικό SoC εκκινήσει τη λειτουργία συμπερασμάτων και μεταφέρει την είσοδο του μοντέλου AI δεδομένα, ο επιταχυντής λειτουργεί αυτόνομα χρησιμοποιώντας την αποκλειστική του μνήμη για την πρόσβαση στα βάρη και τις παραμέτρους του μοντέλου.

 

Μεγιστοποιήστε την απόδοση σε εφαρμογές Edge AI
Εικόνα 2. Ο δίαυλος κοινής μνήμης θα διέπει την απόδοση σε επίπεδο συστήματος, που φαίνεται εδώ με εκτιμώμενες τιμές. Οι πραγματικές τιμές θα διαφέρουν ανάλογα με το μοντέλο χρήσης της εφαρμογής σας και τη διαμόρφωση της μονάδας υπολογισμού του SoC.

Μέχρι αυτό το σημείο, έχουμε συζητήσει την απόδοση της τεχνητής νοημοσύνης όσον αφορά τα καρέ ανά δευτερόλεπτο και τα TOPS. Αλλά η χαμηλή καθυστέρηση είναι μια άλλη σημαντική απαίτηση για την παροχή της ανταπόκρισης ενός συστήματος σε πραγματικό χρόνο. Για παράδειγμα, στο gaming, ο χαμηλός λανθάνων χρόνος είναι κρίσιμος για μια απρόσκοπτη και αποκριτική εμπειρία παιχνιδιού, ιδιαίτερα σε παιχνίδια ελεγχόμενης κίνησης και συστήματα εικονικής πραγματικότητας (VR). Στα συστήματα αυτόνομης οδήγησης, η χαμηλή καθυστέρηση είναι ζωτικής σημασίας για την ανίχνευση αντικειμένων σε πραγματικό χρόνο, την αναγνώριση πεζών, την ανίχνευση λωρίδας κυκλοφορίας και την αναγνώριση σημάτων κυκλοφορίας, προκειμένου να αποφευχθεί ο κίνδυνος της ασφάλειας. Τα συστήματα αυτόνομης οδήγησης συνήθως απαιτούν από άκρο σε άκρο καθυστέρηση μικρότερη από 150ms από την ανίχνευση μέχρι την πραγματική ενέργεια. Ομοίως, στην κατασκευή, η χαμηλή καθυστέρηση είναι απαραίτητη για την ανίχνευση ελαττωμάτων σε πραγματικό χρόνο, η αναγνώριση ανωμαλιών και η ρομποτική καθοδήγηση εξαρτώνται από ανάλυση βίντεο χαμηλής καθυστέρησης για τη διασφάλιση της αποτελεσματικής λειτουργίας και την ελαχιστοποίηση του χρόνου διακοπής παραγωγής.

Γενικά, υπάρχουν τρία στοιχεία καθυστέρησης σε μια εφαρμογή ανάλυσης βίντεο (Εικόνα 3):

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

 

Μεγιστοποιήστε την απόδοση σε εφαρμογές Edge AI
Εικόνα 3. Ο αγωγός ανάλυσης βίντεο αποτελείται από τη σύλληψη δεδομένων, τη μεταφορά δεδομένων και την επεξεργασία δεδομένων.
 

Η καθυστέρηση επεξεργασίας δεδομένων μπορεί να βελτιστοποιηθεί χρησιμοποιώντας έναν επιταχυντή AI με αρχιτεκτονική σχεδιασμένη να ελαχιστοποιεί την κίνηση των δεδομένων στο τσιπ και μεταξύ υπολογιστών και διαφόρων επιπέδων της ιεραρχίας της μνήμης. Επίσης, για να βελτιωθεί η καθυστέρηση και η αποτελεσματικότητα σε επίπεδο συστήματος, η αρχιτεκτονική πρέπει να υποστηρίζει μηδενικό (ή σχεδόν μηδενικό) χρόνο εναλλαγής μεταξύ μοντέλων, για να υποστηρίζει καλύτερα τις εφαρμογές πολλαπλών μοντέλων που συζητήσαμε προηγουμένως. Ένας άλλος παράγοντας τόσο για βελτιωμένη απόδοση όσο και για καθυστέρηση σχετίζεται με την αλγοριθμική ευελιξία. Με άλλα λόγια, ορισμένες αρχιτεκτονικές έχουν σχεδιαστεί για βέλτιστη συμπεριφορά μόνο σε συγκεκριμένα μοντέλα τεχνητής νοημοσύνης, αλλά με το ταχέως μεταβαλλόμενο περιβάλλον τεχνητής νοημοσύνης, εμφανίζονται νέα μοντέλα για υψηλότερη απόδοση και καλύτερη ακρίβεια όπως φαίνεται κάθε μέρα. Επομένως, επιλέξτε έναν επεξεργαστή τεχνητής νοημοσύνης άκρης χωρίς πρακτικούς περιορισμούς στην τοπολογία, τους τελεστές και το μέγεθος του μοντέλου.

Υπάρχουν πολλοί παράγοντες που πρέπει να ληφθούν υπόψη για τη μεγιστοποίηση της απόδοσης σε μια συσκευή τεχνητής νοημοσύνης αιχμής, συμπεριλαμβανομένων των απαιτήσεων απόδοσης και καθυστέρησης και των γενικών εξόδων συστήματος. Μια επιτυχημένη στρατηγική θα πρέπει να εξετάσει έναν εξωτερικό επιταχυντή τεχνητής νοημοσύνης για να ξεπεράσει τους περιορισμούς μνήμης και απόδοσης στον κινητήρα AI του SoC.
 
 
CH Chee Είναι ένα ολοκληρωμένο στέλεχος μάρκετινγκ και διαχείρισης προϊόντων, η Chee έχει εκτενή εμπειρία στην προώθηση προϊόντων και λύσεων στη βιομηχανία ημιαγωγών, εστιάζοντας σε τεχνητή νοημοσύνη βασισμένη στο όραμα, συνδεσιμότητα και διασυνδέσεις βίντεο για πολλές αγορές, συμπεριλαμβανομένων των επιχειρήσεων και των καταναλωτών. Ως επιχειρηματίας, ο Chee συνίδρυσε δύο νεοφυείς επιχειρήσεις ημιαγωγών βίντεο που εξαγοράστηκαν από μια δημόσια εταιρεία ημιαγωγών. Η Chee οδήγησε τις ομάδες μάρκετινγκ προϊόντων και απολαμβάνει τη συνεργασία με μια μικρή ομάδα που επικεντρώνεται στην επίτευξη σπουδαίων αποτελεσμάτων.
 

Σφραγίδα ώρας:

Περισσότερα από KDnuggets