Μοντέλα και πλατφόρμες AI
UltraFastBERT: Μια Εισαγωγή σε Εξοντωτικά Ταχύτερο Μοντέλο Γλώσσας
Τα μοντέλα γλώσσας και η γεννητική νοημοσύνη, γνωστά για τις ικανότητές τους, είναι ένα热 topic στη βιομηχανία της νοημοσύνης. Οι ερευνητές σε όλο τον κόσμο βελτιώνουν την αποτελεσματικότητά τους και την ικανότητά τους. Αυτά τα συστήματα, τυπικά μοντέλα βαθιάς μάθησης, προ-εκπαιδεύονται σε εκτενείς δεδομένα με ετικέτες, ενσωματώνοντας νευρωνικά δίκτυα για αυτο-προσοχή. Χρησιμοποιούν διάφορα στρώματα – προώθηση, αναδρομικά, ενσωματωμένα και προσοχή – για την επεξεργασία του εισαγώμενου κειμένου και την παραγωγή σχετικών εξόδων.
Οι περισσότεροι μεγάλοι jazykoví μοντέλα έχουν τα περισσότερα παράμετρα στα στρώματα προώθησης. Μελέτες δείχνουν ότι αυτά τα μοντέλα χρησιμοποιούν μόνο ένα κλάσμα των διαθέσιμων νευρώνων για τον υπολογισμό της εξόδου κατά τη διάρκεια της ερμηνείας.
Αυτό το άρθρο εισάγει το UltraFastBERT, ένα πλαίσιο βασισμένο στο BERT που ταιριάζει με την αποτελεσματικότητα των κορυφαίων μοντέλων BERT, αλλά χρησιμοποιεί μόνο το 0,3% των νευρώνων κατά τη διάρκεια της ερμηνείας, συγκεκριμένα 12 από 4095 σε κάθε στρώμα. Θα εξερευνήσουμε την αρχιτεκτονική, τη λειτουργικότητα και τα αποτελέσματα του UltraFastBERT. Ας ξεκινήσουμε.
UltraFastBERT : Μια Εισαγωγή σε Εξοντωτικά Ταχύτερο Μοντέλο Γλώσσας
Παραδοσιακά, ένα μοντέλο γλώσσας χρησιμοποιεί διάφορα συστατικά για να εξοπλιστεί με ικανότητες δημιουργίας περιεχομένου, συμπεριλαμβανομένων στρωμάτων προώθησης, αναδρομικών στρωμάτων, ενσωματωμένων στρωμάτων και στρωμάτων προσοχής. Αυτά τα συστατικά είναι υπεύθυνα για την εκμάθηση αναγνώρισης προτύπων κατά τη διάρκεια της εκπαίδευσης και τελικά γεννώνται ακριβή εξόδου με βάση τα εισαγώμενα κείμενα. Κάθε ένα από αυτά τα συστατικά έχει κάποια παράμετρα, και στα μοντέλα γλώσσας, η πλειοψηφία των παραμέτρων κατέχεται από τα στρώματα προώθησης. Ωστόσο, αυτά τα στρώματα προώθησης δεν χρησιμοποιούν το 100% των διαθέσιμων νευρώνων για να παράγουν εξόδου για κάθε εισαγωγή κατά τη διάρκεια της ερμηνείας, οδηγώντας σε σπατάλη πόρων που αυξάνει τη сложность, τον χρόνο υπολογισμού και τους υπολογιστικούς κόστους.
Στην καρδιά του, το πλαίσιο UltraFastBERT είναι μια παραλλαγή του πλαισίου BERT, και το UltraFastBERT χρησιμοποιεί όλα τα συστατικά του πλαισίου BERT εκτός από τη φύση των μεσοστικών στρωμάτων. Αντίθετα, το UltraFastBERT αντικαθιστά τον μεταφραστή του BERT στις μεσοστικές στρώσεις με ταχύτερα στρώματα προώθησης. Το UltraFastBERT πραγματοποιεί τις ακόλουθες αλλαγές στα αρχικά στρώματα προώθησης.
Δεδομένου ενός ταχύτερου δικτύου προώθησης (FFF) και ενός δικτύου προώθησης (FF), κάθε ένα με n αριθμό νευρώνων, η χρονική πολυπλοκότητα μιας προώθησης σε ένα δίκτυο προώθησης είναι O(n), ενώ η χρονική πολυπλοκότητα είναι O(log2n) για ένα ταχύ δίκτυο προώθησης, και η διαφορά στη χρονική πολυπλοκότητα οφείλεται κυρίως στο γεγονός ότι σε ένα ταχύ δίκτυο προώθησης, οι νευρώνες οργανώνονται σε ένα ισορροπημένο δυαδικό δέντρο, και όταν παρέχεται η εισαγωγή, το δίκτυο εκτελεί μόνο einen κλάδο του δένδρου υπό προϋποθέσεις. Επιπλέον, η実行 της ερμηνείας σε ένα ταχύ δίκτυο προώθησης οδηγεί σε CMM ή.Conditional Matrix Multiplication, στην οποία οι εισαγώμενοι πίνακες dot με τους φυσικούς πίνακες βαρών ατομικά, και η έξοδος της προηγούμενης dot-παραγωγής καθορίζει το βάρος των στηλών για να προχωρήσει. Ως αποτέλεσμα, το δίκτυο χρησιμοποιεί όλους τους νευρώνες μόνο για μερικές εισαγωγές, και καμία εισαγωγή δεν απαιτεί περισσότερους από μερικούς νευρώνες για να χειριστεί το δίκτυο. Η CMM dot-παραγωγή ανταγωνίζεται τη DMM ή Dense Matrix Multiplication που υπολογίζει το dot-παραγωγής όλων των εισαγωγών με όλους τους πίνακες βαρών.
Για να συνοψίσουμε, το UltraFastBERT είναι ένα πλαίσιο βασισμένο στο BERT που παρέχει αποτελέσματα συγκρίσιμα με τα κορυφαία μοντέλα γλώσσας BERT, τα οποία
- Χρησιμοποιούν μόνο το 0,3% των διαθέσιμων νευρώνων κατά τη διάρκεια της ερμηνείας, και εμπλέκουν μόνο 12 νευρώνες από τους 4095 σε κάθε στρώμα.
- Παρέχουν ισχυρή απόδοση συγκρίσιμη με τα κορυφαία μοντέλα BERT, εφαρμόζοντας στρατηγικές fine-tuning σε εργασίες downstream.
- Παρέχουν μια εγγενή υλοποίηση της CMM ή Conditional Matrix Multiplication, η οποία αποτελεί τη βάση για το ταχύ δίκτυο προώθησης, και οδηγεί σε 78x ταχύτητα σε σχέση με την ερμηνεία των χρόνων.
Δίκτυα Νευρώνων Προώθησης
Ένα δίκτυο νευρώνων προώθησης είναι ένα από τα πιο απλά δίκτυα νευρώνων που μεταφέρει τις πληροφορίες μόνο προς τα εμπρός, από τους κόμβους εισαγωγής στους κόμβους εξόδου μέσω των κρυφών κόμβων. Ένα από τα κύρια χαρακτηριστικά ενός ταχύ δικτύου προώθησης είναι ότι δεν υπάρχουν βρόχοι ή κύκλοι σε τέτοια δίκτυα, και είναι απλούστερα να κατασκευαστούν σε σύγκριση με τα RNN ή Recurrent Neural Networks, και CNN ή Conventional Neural Networks. Η αρχιτεκτονική ενός ταχύ δικτύου προώθησης αποτελείται από τρία συστατικά, δηλαδή τα στρώματα εισαγωγής, τα στρώματα κρυφών και τα στρώματα εξόδου, και κάθε στρώμα αποτελείται από μονάδες που ονομάζονται νευρώνες, και κάθε στρώμα είναι διασυνδεμένο με τα άλλα με τη βοήθεια των βαρών.
Οι νευρώνες που υπάρχουν στα στρώματα εισαγωγής λαμβάνουν τις εισαγωγές και τις προωθούν στο επόμενο στρώμα. Ο αριθμός των νευρώνων σε κάθε στρώμα εισαγωγής καθορίζεται από τις διαστάσεις των δεδομένων εισαγωγής. Στη συνέχεια, έχουμε τα στρώματα κρυφών που δεν εκτίθενται ούτε στην εισαγωγή ούτε στην έξοδο, και είναι υπεύθυνα για τις απαραίτητες υπολογιστικές εργασίες. Οι νευρώνες σε κάθε στρώμα κρυφών λαμβάνουν το σταθμισμένο άθροισμα των εξόδων που δίνονται από το προηγούμενο στρώμα, εφαρμόζουν μια συνάρτηση ενεργοποίησης και περνούν το αποτέλεσμα στο επόμενο στρώμα, και η διαδικασία επαναλαμβάνεται. Τέλος, έχουμε το στρώμα εξόδου που παράγει την έξοδο για τις δοθείσες εισαγωγές. Κάθε νευρώνας σε κάθε στρώμα του ταχύ δικτύου προώθησης είναι διασυνδεμένος με κάθε νευρώνα στο επόμενο στρώμα, καθιστώντας τα δίκτυα FFF πλήρως συνδεδεμένα. Οι βαρές χρησιμοποιούνται για να αντιπροσωπεύουν τη δύναμη της σύνδεσης μεταξύ των νευρώνων, και το δίκτυο ενημερώνει αυτές τις βαρές για να μάθει τα πρότυπα με βάση το σφάλμα που συμβαίνει στην έξοδο.
Προχωρώντας, υπάρχουν δύο βασικά στάδια στη λειτουργία ενός ταχύ δικτύου προώθησης: η φάση προώθησης και η φάση αναδρομικής伝播.
Φάση Προώθησης
Στη φάση προώθησης, η εισαγωγή παρέχεται στο δίκτυο, και αυτό προωθείται προς τα εμπρός. Τα στρώματα κρυφών υπολογίζουν το σταθμισμένο άθροισμα των εισαγωγών, και εισάγουν μη-γραμμικότητα στο μοντέλο με το άθροισμα των εισαγωγών μέσω μιας συνάρτησης ενεργοποίησης όπως ReLu, Sigmoid και TanH. Η διαδικασία επαναλαμβάνεται μέχρι οι βαρές να φτάσουν στο στρώμα εξόδου, και το μοντέλο κάνει μια πρόβλεψη.
Φάση Αναδρομικής傳播
Όταν το μοντέλο κάνει μια πρόβλεψη, υπολογίζει το σφάλμα μεταξύ της παραγόμενης εξόδου και της αναμενόμενης εξόδου. Το σφάλμα αναδρομικά伝播 μέσω του δικτύου, και το δίκτυο χρησιμοποιεί einen αλγόριθμο βελτιστοποίησης gradient descent για να điều chỉnh τις βαρές σε μια προσπάθεια να ελαχιστοποιήσει το σφάλμα.
UltraFastBERT : Αρχιτεκτονική και Λειτουργία
Το πλαίσιο UltraFastBERT είναι βασισμένο στην αρχιτεκτονική crammedBERT, και το UltraFastBERT χρησιμοποιεί όλα τα συστατικά του πλαισίου crammedBERT εκτός από τη φύση των μεσοστικών στρωμάτων. Αντίθετα, το UltraFastBERT αντικαθιστά τον μεταφραστή του BERT στις μεσοστικές στρώσεις με ταχύτερα στρώματα προώθησης. Το UltraFastBERT πραγματοποιεί τις ακόλουθες αλλαγές στα αρχικά στρώματα προώθησης.
- Το πλαίσιο αφαιρεί τη διαφορά μεταξύ φύλλων και μη-φύλλων κόμβων χρησιμοποιώντας τη συνάρτηση GeLu σε όλους τους κόμβους, και εξοπλίζει αυτούς τους κόμβους με βαρές εξόδου, και αφαιρεί τις προκαταβολές εξόδου. Μετά, το πλαίσιο καθορίζει το μέγεθος του φύλλου σε 1.
- Τέλος, το πλαίσιο επιτρέπει πολλά ταχέα δίκτυα προώθησης σε παράλληλη λειτουργία υπολογίζοντας κοινά τα μεσοστικά στρώματα εξόδου. Το πλαίσιο πραγματοποιεί αυτήν την υπολογιστική εργασία λαμβάνοντας το άθροισμα των μεμονωμένων δένδρων, και στη συνέχεια παρουσιάζει το άθροισμα ως το μεσοστικό στρώμα εξόδου.
Προχωρώντας, κατά την εκπαίδευση, το πλαίσιο UltraFastBERT ακολουθεί την διαδικασία εκπαίδευσης που χρησιμοποιείται από το πλαίσιο crammedBERT, η οποία περιλαμβάνει την απενεργοποίηση της.dropout κατά την προ-εκπαίδευση, και τη χρήση του 1-κύκλου τριγωνικού χρονοδιαγράμματος μάθησης. Το μοντέλο είναι στη συνέχεια fine-tuned για να μεγιστοποιήσει την απόδοσή του σε eine σειρά από εργασίες, κυρίως του GLUE benchmark, για συνολικά 5 επαναλήψεις.
Επίδραση
Η επίδραση είναι ένα σημαντικό μέρος για ένα ταχύ δίκτυο προώθησης, και αυτά τα ταχέα δίκτυα προώθησης αποτελούν einen μεγάλο μέρος των μεγάλων μοντέλων γλώσσας, και είναι γνωστά για το εξαιρετικό τους δυναμικό επιτάχυνσης. Για να κατανοήσουμε αυτό το δυναμικό επιτάχυνσης, ας εξετάσουμε ένα παράδειγμα ενός από τα πιο προηγμένα μοντέλα γλώσσας, το GPT-3, στο οποίο τα δίκτυα προώθησης σε κάθε στρώμα μεταφραστή αποτελούνται από περισσότερους από 49.100 νευρώνες. Αν ήταν δυνατό, ένα ταχύ δίκτυο προώθησης (μέγιστο βάθος 15) θα μπορούσε να αντικαταστήσει το αρχικό δίκτυο προώθησης. Το εισαχθέν ταχύ δίκτυο προώθησης θα είχε περισσότερους από 65.000 νευρώνες, αλλά θα χρησιμοποιούσε μόνο 16 από αυτούς τους νευρώνες για την επίδραση, το οποίο αντιστοιχεί περίπου στο 0,03% των διαθέσιμων νευρώνων του GPT-3.
Αλγόριθμος και Συμβατότητα
Το πλαίσιο UltraFastBERT χρησιμοποιεί einen αναδρομικό ψευδο-αλγόριθμο για την επίδραση του ταχύ δικτύου προώθησης, και ο αλγόριθμος απεικονίζεται στην εικόνα παρακάτω.

Εδώ, το B αντιπροσωπεύει το μέγεθος της δέσμης, το H αντιπροσωπεύει το πλάτος των στρωμάτων εισαγωγής, και το M αντιπροσωπεύει τις στήλες. Ένας άλλος σημαντικός λόγος ανησυχίας με τη χρήση μιας προσεγγίσεως Computational Matrix Multiplication είναι αν αυτό κάνει τα ταχέα δίκτυα προώθησης ασύμβατα με τη διαδικασία που ήδη χρησιμοποιείται για Dense Matrix Multiplication και υπάρχοντα Deep Learning frameworks. Ευτυχώς, η χρήση της CMM δεν επηρεάζει την απόδοση ή εισάγει ασυμβατότητα, αν και αυξάνει τη σύνθετη πολυπλοκότητα.
Είναι σημαντικό να σημειωθεί ότι ως μέρος του ταχύ δικτύου προώθησης, η單-νήματος Dense Matrix Multiplication βασίζεται στην εκτέλεση των MAC ή Multiplication και Accumulation οδηγιών, και ως αποτέλεσμα, η αντικατάσταση της DMM με την CMM προσεγγίσει θα ωφελήσει τους CPUs επειδή λιγότερες MAC οδηγίες απαιτούνται για τον υπολογισμό της εξόδου του στρώματος ανά στοιχείο. Ως εκ τούτου, παρά την υιοθέτηση μιας προϋπόθεσης που συνήθως συνδέεται με διακλάδωση, η “νευρωνική διακλάδωση” ενεργεί ως προσθήκη στη μνήμη για τις σχετικές θέσεις στο πλαίσιο. Ως εκ τούτου, στο πλαίσιο UltraFastBERT, η πρόβλεψη της οδηγίας δεν είναι πλήρως ενεργοποιημένη για να διευκολύνει την προϋπόθεση της CMM, και μόνο φορτώνει τις σχετικές στήλες του πίνακα βαρών ατομικά. Επιπλέον, καθώς το πλαίσιο εκτελεί row-column dot-προϊόντα, η SIMD ή single instruction multiple data vector parallel processing είναι ακόμη μια καλή επιλογή για την επιτάχυνση της επίδρασης για συγκεκριμένα συσκευές.
UltraFastBERT : Απόδοση και Αποτελέσματα
Θα μιλήσουμε για την απόδοση του πλαισίου UltraFastBERT για την fine-tuning καθώς και για την επίδραση για να αναλύσουμε πώς το πλαίσιο αντιμετωπίζει τα κορυφαία μοντέλα γλώσσας.
Αποτελέσματα Fine-Tuning
Η ακόλουθη εικόνα δείχνει την απόδοση των verschiedenen μοντέλων στο GLUE-dev test dataset. Εδώ, το N αντιπροσωπεύει τον αριθμό των νευρώνων που είναι διαθέσιμοι για τα πλαίσια κατά την εκπαίδευση, “Avg” αντιπροσωπεύει τον μέσο όρο όλων των εργασιών.

Όπως είναι σαφές, το πλαίσιο UltraFastBERT που έχει εκπαιδευτεί στο A6000 GPU για περισσότερες από 24 ώρες διατηρεί σχεδόν το 96% της προβλεπτικής απόδοσης στα GLUE downstream εργασίες σε σύγκριση με το αρχικό πλαίσιο BERT. Επιπλέον, είναι σαφές ότι με την αύξηση του βάθους των ταχέων δικτύων προώθησης, η απόδοση των πλαισίων μειώνεται, αν και η πλειοψηφία της μείωσης της απόδοσης συμβαίνει μόνο για την εργασία CoLa. Αν αγνοηθεί η εργασία CoLa για λίγο, το πλαίσιο UltraFastBERT επιστρέφει μια προβλεπτική απόδοση σκορ περίπου 98,6%.
Αποτελέσματα Επίδρασης
Σε αυτήν την ενότητα, θα συγκρίνουμε την απόδοση των verschiedenen δικτύων προώθησης ή ταχέων δικτύων προώθησης στην επίδραση, και αυτές οι επιδράσεις είναι διασκορπισμένες σε τρία επίπεδα.
- Στο επίπεδο 1, η υλοποίηση κατασκευάζεται χρησιμοποιώντας BLAS Level 1 ρουτίνες, δηλαδή scalar-vector προϊόν και vector-vector dot-προϊόντα.
- Στο επίπεδο 2, οι υλοποιήσεις χρησιμοποιούν BLAS Level 2 ρουτίνες, δηλαδή batched scalar-vector προϊόν και batched matrix-vector dot-προϊόντα.
- Στο επίπεδο 3, οι υλοποιήσεις χρησιμοποιούν την non-batched BLAS Level 3 matrix-matrix multiplication προσεγγίσει, και αν και είναι η ταχύτερη υλοποίηση που είναι διαθέσιμη για δίκτυα προώθησης, τέτοιες υλοποιήσεις δεν είναι διαθέσιμες για ταχέα δίκτυα προώθησης επειδή η βιβλιοθήκη δεν υποστηρίζει τη διαστατική σπαρσιότητα της Computational Matrix Multiplication.
Επιπλέον, το πλαίσιο UltraFastBERT αναπτύσσει υλοποιήσεις GPU χρησιμοποιώντας είτε custom CUDA ή PyTorch kernels.

Ο παραπάνω πίνακας, συγκρίνει την απόδοση του πλαισίου UltraFastBERT με τους προκατόχους του, τα πλαίσια BERT, όσον αφορά τα στρώματα προώθησης και ταχέα δίκτυα προώθησης, όπου κάθε στήλη περιέχει τις σχετικές inference Fast Feedforward sobre Feedforward υλοποίηση ταχύτητας.
Ωστόσο, είναι σημαντικό να σημειωθεί ότι οι ταχύτητες που αναφέρονται στον πίνακα είναι για “δίκαιες συγκρίσεις”, δηλαδή και οι ταχείς και οι feedforward υλοποιήσεις χρησιμοποιούν τις ίδιες lineαρ-αλγεβρικές ρουτίνες. Επιπλέον, στα επίπεδα 1 και 2, οι υλοποιήσεις των ταχέων δικτύων προώθησης είναι ικανές να εκτελέσουν την επίδραση 48x και 78x ταχύτερα από την ταχύτερη feedforward υλοποίηση, αντίστοιχα.
Τελικές Σκέψεις
Σε αυτό το άρθρο, έχουμε μιλήσει για το UltraFastBERT, μια παραλλαγή του πλαισίου BERT, που βασίζεται στην концепασία ότι τα στρώματα προώθησης δεν χρησιμοποιούν το 100% των διαθέσιμων νευρώνων για να παράγουν εξόδου για κάθε εισαγωγή κατά τη διάρκεια της ερμηνείας, οδηγώντας σε σπατάλη πόρων που αυξάνει τη phứcικότητα, τον χρόνο υπολογισμού και τους υπολογιστικούς κόστους, και αντικαθιστά τα στρώματα προώθησης με ταχύτερα στρώματα προώθησης στην αρχιτεκτονική του, που οδηγεί στο UltraFastBERT να χρησιμοποιεί μόνο το 0,3% των διαθέσιμων νευρώνων κατά τη διάρκεια της ερμηνείας, ενώ παράγει αποτελέσματα συγκρίσιμα με τα κορυφαία μοντέλα BERT με παρόμοιο μέγεθος και διαδικασία εκπαίδευσης, ιδιαίτερα στις εργασίες downstream.
Λόγω των υλοποιήσεων του, τα μεσοστικά στρώματα στο πλαίσιο UltraFastBERT είναι εκθετικά ταχύτερα. Επιπλέον, η ισχυρή απόδοση που παρέχει το UltraFastBERT είναι μια απόδειξη ότι τα LLMs μπορούν να παράγουν ισχυρή απόδοση με την εμπλοκή μόνο ενός κλάσματος των παραμέτρων τους για μεμονωμένες επιδράσεις, καθώς το UltraFastBERT χρησιμοποιεί μόνο το 0,3% των διαθέσιμων νευρώνων κατά τη διάρκεια της ερμηνείας, και ακόμη καταφέρνει να επιτύχει 78x ταχύτητα σε σχέση με τους χρόνους ερμηνείας.












