Τα μεγάλα μοντέλα μετασχηματιστών που βασίζονται στην προσοχή έχουν επιτύχει τεράστια οφέλη στην επεξεργασία φυσικής γλώσσας (NLP). Ωστόσο, η εκπαίδευση αυτών των γιγαντιαίων δικτύων από την αρχή απαιτεί τεράστιο όγκο δεδομένων και υπολογισμών. Για μικρότερα σύνολα δεδομένων NLP, μια απλή αλλά αποτελεσματική στρατηγική είναι να χρησιμοποιήσετε έναν προεκπαιδευμένο μετασχηματιστή, συνήθως εκπαιδευμένο χωρίς επίβλεψη σε πολύ μεγάλα σύνολα δεδομένων, και να τον ρυθμίσετε με ακρίβεια στο σύνολο δεδομένων που σας ενδιαφέρει. Αγκαλιάζοντας το πρόσωπο διατηρεί ένα μεγάλο μοντέλο ζωολογικού κήπου με αυτούς τους προεκπαιδευμένους μετασχηματιστές και τους καθιστά εύκολα προσβάσιμους ακόμη και για αρχάριους χρήστες.
Ωστόσο, η τελειοποίηση αυτών των μοντέλων απαιτεί ακόμα ειδικές γνώσεις, επειδή είναι αρκετά ευαίσθητα στις υπερπαραμέτρους τους, όπως ο ρυθμός εκμάθησης ή το μέγεθος παρτίδας. Σε αυτήν την ανάρτηση, δείχνουμε πώς να βελτιστοποιήσετε αυτές τις υπερπαραμέτρους με το πλαίσιο ανοιχτού κώδικα Syne Tune για κατανεμημένη βελτιστοποίηση υπερπαραμέτρων (HPO). Το Syne Tune μας επιτρέπει να βρούμε μια καλύτερη διαμόρφωση υπερπαραμέτρων που επιτυγχάνει σχετική βελτίωση μεταξύ 1-4% σε σύγκριση με τις προεπιλεγμένες υπερπαραμέτρους σε δημοφιλείς ΚΟΛΛΑ σύνολα δεδομένων αναφοράς. Η επιλογή του ίδιου του προεκπαιδευμένου μοντέλου μπορεί επίσης να θεωρηθεί υπερπαράμετρος και επομένως να επιλέγεται αυτόματα από το Syne Tune. Σε ένα πρόβλημα ταξινόμησης κειμένου, αυτό οδηγεί σε πρόσθετη ώθηση στην ακρίβεια περίπου 5% σε σύγκριση με το προεπιλεγμένο μοντέλο. Ωστόσο, μπορούμε να αυτοματοποιήσουμε περισσότερες αποφάσεις που πρέπει να λάβει ένας χρήστης. Το αποδεικνύουμε αυτό εκθέτοντας επίσης τον τύπο του στιγμιότυπου ως υπερπαράμετρο που χρησιμοποιούμε αργότερα για να αναπτύξουμε το μοντέλο. Επιλέγοντας τον σωστό τύπο παρουσίας, μπορούμε να βρούμε διαμορφώσεις που αντισταθμίζουν βέλτιστα το κόστος και την καθυστέρηση.
Για μια εισαγωγή στο Syne Tune, ανατρέξτε στο Εκτελέστε εργασίες συντονισμού κατανεμημένων υπερπαραμέτρων και νευρωνικής αρχιτεκτονικής με το Syne Tune.
Βελτιστοποίηση υπερπαραμέτρων με το Syne Tune
Θα χρησιμοποιήσουμε το ΚΟΛΛΑ σουίτα σημείων αναφοράς, η οποία αποτελείται από εννέα σύνολα δεδομένων για εργασίες κατανόησης φυσικής γλώσσας, όπως η αναγνώριση συνεπειών κειμένου ή η ανάλυση συναισθήματος. Για αυτό, προσαρμόζουμε το Hugging Face's run_glue.py σενάριο εκπαίδευσης. Τα σύνολα δεδομένων GLUE συνοδεύονται από ένα προκαθορισμένο σετ εκπαίδευσης και αξιολόγησης με ετικέτες, καθώς και ένα δοκιμαστικό σετ συγκράτησης χωρίς ετικέτες. Επομένως, χωρίζουμε το σετ εκπαίδευσης σε σύνολα εκπαίδευσης και επικύρωσης (διάσπαση 70%/30%) και χρησιμοποιούμε το σύνολο αξιολόγησης ως σύνολο δεδομένων δοκιμής κράτησης. Επιπλέον, προσθέτουμε μια άλλη λειτουργία επανάκλησης στο Hugging Face's Trainer API που αναφέρει την απόδοση επικύρωσης μετά από κάθε εποχή πίσω στο Syne Tune. Δείτε τον παρακάτω κώδικα:
Ξεκινάμε με τη βελτιστοποίηση τυπικών υπερπαραμέτρων προπόνησης: τον ρυθμό εκμάθησης, την αναλογία προθέρμανσης για την αύξηση του ρυθμού εκμάθησης και το μέγεθος παρτίδας για τη βελτιστοποίηση ενός προεκπαιδευμένου BERT (μπερτ-βάση-περίβλημα) μοντέλο, το οποίο είναι το προεπιλεγμένο μοντέλο στο παράδειγμα Hugging Face. Δείτε τον παρακάτω κώδικα:
Ως μέθοδος HPO, χρησιμοποιούμε ASHA, το οποίο λαμβάνει δείγματα διαμορφώσεων υπερπαραμέτρων ομοιόμορφα τυχαία και διακόπτει επαναληπτικά την αξιολόγηση διαμορφώσεων με κακή απόδοση. Αν και πιο εξελιγμένες μέθοδοι χρησιμοποιούν ένα πιθανολογικό μοντέλο της αντικειμενικής συνάρτησης, όπως το BO ή το MoBster υπάρχει, χρησιμοποιούμε το ASHA για αυτήν την ανάρτηση επειδή έρχεται χωρίς υποθέσεις για τον χώρο αναζήτησης.
Στο παρακάτω σχήμα, συγκρίνουμε τη σχετική βελτίωση στο σφάλμα δοκιμής σε σχέση με την προεπιλεγμένη διαμόρφωση υπερπαραμέτρων του Hugging Faces.
Για απλότητα, περιορίζουμε τη σύγκριση σε MRPC, COLA και STSB, αλλά παρατηρούμε επίσης παρόμοιες βελτιώσεις και για άλλα σύνολα δεδομένων GLUE. Για κάθε σύνολο δεδομένων, εκτελούμε το ASHA σε ένα μόνο ml.g4dn.xlarge Amazon Sage Maker παράδειγμα με προϋπολογισμό χρόνου εκτέλεσης 1,800 δευτερολέπτων, που αντιστοιχεί σε περίπου 13, 7 και 9 πλήρεις αξιολογήσεις συναρτήσεων σε αυτά τα σύνολα δεδομένων, αντίστοιχα. Για να λάβουμε υπόψη την εγγενή τυχαιότητα της εκπαιδευτικής διαδικασίας, για παράδειγμα που προκαλείται από τη δειγματοληψία μίνι παρτίδων, εκτελούμε τόσο το ASHA όσο και την προεπιλεγμένη διαμόρφωση για πέντε επαναλήψεις με έναν ανεξάρτητο σπόρο για τη γεννήτρια τυχαίων αριθμών και αναφέρουμε τη μέση και τυπική απόκλιση του σχετική βελτίωση στις επαναλήψεις. Μπορούμε να δούμε ότι, σε όλα τα σύνολα δεδομένων, μπορούμε στην πραγματικότητα να βελτιώσουμε την προγνωστική απόδοση κατά 1-3% σε σχέση με την απόδοση της προσεκτικά επιλεγμένης προεπιλεγμένης διαμόρφωσης.
Αυτοματοποιήστε την επιλογή του προ-εκπαιδευμένου μοντέλου
Μπορούμε να χρησιμοποιήσουμε το HPO όχι μόνο για να βρούμε υπερπαραμέτρους, αλλά και να επιλέξουμε αυτόματα το σωστό προεκπαιδευμένο μοντέλο. Γιατί θέλουμε να το κάνουμε αυτό; Επειδή κανένα μοντέλο δεν έχει καλύτερη απόδοση σε όλα τα σύνολα δεδομένων, πρέπει να επιλέξουμε το σωστό μοντέλο για ένα συγκεκριμένο σύνολο δεδομένων. Για να το δείξουμε αυτό, αξιολογούμε μια σειρά από δημοφιλή μοντέλα μετασχηματιστών από το Hugging Face. Για κάθε σύνολο δεδομένων, κατατάσσουμε κάθε μοντέλο με βάση την απόδοση δοκιμής του. Η κατάταξη μεταξύ των συνόλων δεδομένων (δείτε το ακόλουθο σχήμα) αλλάζει και όχι ένα μοντέλο που έχει την υψηλότερη βαθμολογία σε κάθε σύνολο δεδομένων. Ως αναφορά δείχνουμε επίσης την απόλυτη απόδοση δοκιμής κάθε μοντέλου και δεδομένων στο παρακάτω σχήμα.
Για να επιλέξουμε αυτόματα το σωστό μοντέλο, μπορούμε να βάλουμε την επιλογή του μοντέλου ως κατηγορικές παραμέτρους και να το προσθέσουμε στον χώρο αναζήτησης υπερπαραμέτρων:
Αν και ο χώρος αναζήτησης είναι πλέον μεγαλύτερος, αυτό δεν σημαίνει απαραίτητα ότι είναι πιο δύσκολο να βελτιστοποιηθεί. Το παρακάτω σχήμα δείχνει το σφάλμα δοκιμής της καλύτερης παρατηρούμενης διαμόρφωσης (βάσει του σφάλματος επικύρωσης) στο σύνολο δεδομένων MRPC του ASHA με την πάροδο του χρόνου όταν πραγματοποιούμε αναζήτηση στον αρχικό χώρο (μπλε γραμμή) (με ένα προεκπαιδευμένο μοντέλο με βάση το BERT ) ή στον νέο χώρο επαυξημένης αναζήτησης (πορτοκαλί γραμμή). Με τον ίδιο προϋπολογισμό, η ASHA μπορεί να βρει μια διαμόρφωση υπερπαραμέτρων με πολύ καλύτερη απόδοση στον εκτεταμένο χώρο αναζήτησης από ό,τι στον μικρότερο χώρο.
Αυτοματοποιήστε την επιλογή του τύπου παρουσίας
Στην πράξη, μπορεί να μην μας ενδιαφέρει μόνο η βελτιστοποίηση της προγνωστικής απόδοσης. Μπορεί επίσης να μας ενδιαφέρουν άλλοι στόχοι, όπως ο χρόνος εκπαίδευσης, το κόστος (δολαρίου), η καθυστέρηση ή οι μετρήσεις δικαιοσύνης. Πρέπει επίσης να κάνουμε άλλες επιλογές πέρα από τις υπερπαραμέτρους του μοντέλου, για παράδειγμα επιλέγοντας τον τύπο του στιγμιότυπου.
Αν και ο τύπος παρουσίασης δεν επηρεάζει την προγνωστική απόδοση, επηρεάζει έντονα το κόστος (δολαρίου), το χρόνο εκτέλεσης της εκπαίδευσης και την καθυστέρηση. Το τελευταίο γίνεται ιδιαίτερα σημαντικό όταν το μοντέλο αναπτύσσεται. Μπορούμε να εκφράσουμε το HPO ως ένα πρόβλημα βελτιστοποίησης πολλαπλών στόχων, όπου στοχεύουμε στη βελτιστοποίηση πολλαπλών στόχων ταυτόχρονα. Ωστόσο, καμία μεμονωμένη λύση δεν βελτιστοποιεί όλες τις μετρήσεις ταυτόχρονα. Αντίθετα, στοχεύουμε να βρούμε ένα σύνολο διαμορφώσεων που ανταλλάσσουν βέλτιστα τον έναν στόχο με τον άλλο. Αυτό ονομάζεται το Σετ Pareto.
Για να αναλύσουμε περαιτέρω αυτήν τη ρύθμιση, προσθέτουμε την επιλογή του τύπου παρουσίας ως πρόσθετη κατηγορική υπερπαράμετρο στον χώρο αναζήτησής μας:
Χρησιμοποιούμε MO-ASHA, το οποίο προσαρμόζει το ASHA στο σενάριο πολλαπλών στόχων χρησιμοποιώντας ταξινόμηση χωρίς κυριαρχία. Σε κάθε επανάληψη, το MO-ASHA επιλέγει επίσης για κάθε διαμόρφωση και τον τύπο του στιγμιότυπου που θέλουμε να το αξιολογήσουμε. Για να εκτελέσετε το HPO σε ένα ετερογενές σύνολο παρουσιών, το Syne Tune παρέχει το backend του SageMaker. Με αυτό το backend, κάθε δοκιμή αξιολογείται ως ανεξάρτητη εργασία εκπαίδευσης του SageMaker από μόνη της. Ο αριθμός των εργαζομένων καθορίζει πόσες θέσεις εργασίας SageMaker εκτελούμε παράλληλα σε μια δεδομένη στιγμή. Ο ίδιος ο βελτιστοποιητής, το MO-ASHA στην περίπτωσή μας, εκτελείται είτε σε τοπικό μηχάνημα, σε σημειωματάριο Sagemaker ή σε ξεχωριστή εργασία εκπαίδευσης του SageMaker. Δείτε τον παρακάτω κώδικα:
Τα ακόλουθα σχήματα δείχνουν την καθυστέρηση έναντι του σφάλματος δοκιμής στα αριστερά και την καθυστέρηση έναντι του κόστους στα δεξιά για τυχαίες διαμορφώσεις που δειγματοληπτήθηκαν από το MO-ASHA (περιορίζουμε τον άξονα για ορατότητα) στο σύνολο δεδομένων MRPC μετά την εκτέλεση του για 10,800 δευτερόλεπτα σε τέσσερις εργαζόμενους. Το χρώμα υποδεικνύει τον τύπο του στιγμιότυπου. Η διακεκομμένη μαύρη γραμμή αντιπροσωπεύει το σύνολο Pareto, που σημαίνει το σύνολο σημείων που κυριαρχούν σε όλα τα άλλα σημεία σε τουλάχιστον έναν στόχο.
Μπορούμε να παρατηρήσουμε μια αντιστάθμιση μεταξύ λανθάνοντος χρόνου και σφάλματος δοκιμής, που σημαίνει ότι η καλύτερη διαμόρφωση με το χαμηλότερο σφάλμα δοκιμής δεν επιτυγχάνει τη χαμηλότερη καθυστέρηση. Με βάση την προτίμησή σας, μπορείτε να επιλέξετε μια διαμόρφωση υπερπαραμέτρων που θυσιάζει την απόδοση της δοκιμής αλλά συνοδεύεται από μικρότερο λανθάνοντα χρόνο. Βλέπουμε επίσης την αντιστάθμιση μεταξύ καθυστέρησης και κόστους. Χρησιμοποιώντας ένα μικρότερο παράδειγμα ml.g4dn.xlarge, για παράδειγμα, αυξάνουμε οριακά μόνο τον λανθάνοντα χρόνο, αλλά πληρώνουμε το ένα τέταρτο του κόστους μιας παρουσίας ml.g4dn.8xlarge.
Συμπέρασμα
Σε αυτήν την ανάρτηση, συζητήσαμε τη βελτιστοποίηση υπερπαραμέτρων για τη βελτιστοποίηση προεκπαιδευμένων μοντέλων μετασχηματιστών από το Hugging Face που βασίζονται στο Syne Tune. Είδαμε ότι βελτιστοποιώντας υπερπαραμέτρους όπως ο ρυθμός εκμάθησης, το μέγεθος παρτίδας και η αναλογία προθέρμανσης, μπορούμε να βελτιώσουμε την προσεκτικά επιλεγμένη προεπιλεγμένη διαμόρφωση. Μπορούμε επίσης να το επεκτείνουμε επιλέγοντας αυτόματα το προεκπαιδευμένο μοντέλο μέσω βελτιστοποίησης υπερπαραμέτρων.
Με τη βοήθεια του συστήματος υποστήριξης SageMaker του Syne Tune, μπορούμε να αντιμετωπίσουμε τον τύπο παρουσίας ως υπερπαράμετρο. Αν και ο τύπος παρουσίας δεν επηρεάζει την απόδοση, έχει σημαντικό αντίκτυπο στον λανθάνοντα χρόνο και το κόστος. Επομένως, μετατρέποντας το HPO ως πρόβλημα βελτιστοποίησης πολλαπλών στόχων, είμαστε σε θέση να βρούμε ένα σύνολο διαμορφώσεων που ανταλλάσσουν βέλτιστα τον έναν στόχο με τον άλλο. Αν θέλετε να το δοκιμάσετε μόνοι σας, ρίξτε μια ματιά στο δικό μας παράδειγμα σημειωματάριο.
Σχετικά με τους Συγγραφείς
Άαρον Κλέιν είναι Εφαρμοσμένος Επιστήμονας στο AWS.
Matthias Seeger είναι Κύριος Εφαρμοσμένος Επιστήμονας στο AWS.
Ντέιβιντ Σαλίνας είναι Sr Applied Scientist στο AWS.
Έμιλι Webber εντάχθηκε στο AWS αμέσως μετά την κυκλοφορία του SageMaker και από τότε προσπαθεί να το πει στον κόσμο! Εκτός από τη δημιουργία νέων εμπειριών ML για τους πελάτες, η Emily απολαμβάνει τον διαλογισμό και τη μελέτη του Θιβετιανού Βουδισμού.
Σέντρικ Αρσαμπώ είναι Κύριος Εφαρμοσμένος Επιστήμονας στο AWS και Μέλος του Ευρωπαϊκού Εργαστηρίου Μάθησης και Ευφυών Συστημάτων.
- Coinsmart. Το καλύτερο ανταλλακτήριο Bitcoin και Crypto στην Ευρώπη.
- Platoblockchain. Web3 Metaverse Intelligence. Ενισχύθηκε η γνώση. ΕΛΕΥΘΕΡΗ ΠΡΟΣΒΑΣΗ.
- CryptoHawk. Ραντάρ Altcoin. Δωρεάν δοκιμή.
- Πηγή: https://aws.amazon.com/blogs/machine-learning/hyperparameter-optimization-for-fine-tuning-pre-trained-transformer-models-from-hugging-face/
- "
- 10
- 100
- 7
- 9
- a
- Σχετικά
- Απόλυτος
- προσιτός
- Λογαριασμός
- Κατορθώνω
- απέναντι
- Πρόσθετος
- επηρεάζουν
- Όλα
- επιτρέπει
- Αν και
- Amazon
- ποσό
- ανάλυση
- αναλύσει
- Άλλος
- api
- εφαρμοσμένος
- περίπου
- αρχιτεκτονική
- επαυξημένης
- αυτοματοποίηση
- αυτομάτως
- μέσος
- AWS
- Άξονας
- επειδή
- αναφοράς
- ΚΑΛΎΤΕΡΟΣ
- Καλύτερα
- μεταξύ
- Πέρα
- Μαύρη
- ώθηση
- προϋπολογισμός
- Κτίριο
- ο οποίος
- περίπτωση
- προκαλούνται
- επιλογή
- επιλογές
- επιλέγονται
- τάξη
- ταξινόμηση
- κωδικός
- Ελάτε
- σύγκριση
- Υπολογίστε
- διαμόρφωση
- έλεγχος
- Πελάτες
- ημερομηνία
- αποφάσεις
- αποδεικνύουν
- παρατάσσω
- αναπτυχθεί
- διανέμονται
- Όχι
- Δολάριο
- κάθε
- εύκολα
- Αποτελεσματικός
- ευρωπαϊκός
- αξιολογήσει
- εκτίμηση
- παράδειγμα
- Δραστηριοτητες
- εμπειρογνώμονας
- επεκτείνουν
- Πρόσωπο
- Μόδα
- Εικόνα
- Εξής
- Πλαίσιο
- από
- πλήρη
- λειτουργία
- περαιτέρω
- Επί πλέον
- γεννήτρια
- βοήθεια
- εδώ
- Πως
- Πώς να
- Ωστόσο
- HTTPS
- Επίπτωση
- σημαντικό
- βελτίωση
- βελτίωση
- Αυξάνουν
- ανεξάρτητος
- επιρροή
- παράδειγμα
- Έξυπνος
- τόκος
- IT
- εαυτό
- Δουλειά
- Θέσεις εργασίας
- εντάχθηκαν
- γνώση
- εργαστήριο
- Ετικέτες
- Γλώσσα
- large
- μεγαλύτερος
- ξεκίνησε
- Οδηγεί
- μάθηση
- LIMIT
- γραμμή
- τοπικός
- μηχανή
- κάνω
- ΚΑΝΕΙ
- μαζική
- νόημα
- μέθοδοι
- Metrics
- ενδέχεται να
- ML
- μοντέλο
- μοντέλα
- περισσότερο
- πολλαπλούς
- Φυσικό
- αναγκαίως
- ανάγκες
- δίκτυα
- σημειωματάριο
- αριθμός
- στόχοι
- λαμβάνεται
- βελτιστοποίηση
- Βελτιστοποίηση
- βελτιστοποίηση
- πρωτότυπο
- ΑΛΛΑ
- δική
- ιδιαίτερα
- Πληρωμή
- επίδοση
- εκτέλεση
- σας παρακαλούμε
- σημεία
- Δημοφιλής
- πρακτική
- Κύριος
- Πρόβλημα
- διαδικασια μας
- μεταποίηση
- παρέχει
- σειρά
- Κατάταξη
- αναφέρουν
- δημοσιογράφος
- Εκθέσεις
- αντιπροσωπεύει
- Απαιτεί
- Αποτελέσματα
- τρέξιμο
- τρέξιμο
- ίδιο
- Επιστήμονας
- Αναζήτηση
- δευτερόλεπτα
- σπόρος
- επιλέγονται
- συναίσθημα
- σειρά
- τον καθορισμό
- δείχνουν
- σημαντικός
- παρόμοιες
- Απλούς
- ενιαίας
- Μέγεθος
- λύση
- εξελιγμένα
- Χώρος
- συγκεκριμένες
- διαίρεση
- πρότυπο
- Εκκίνηση
- Κατάσταση
- Ακόμη
- Στρατηγική
- συστήματα
- εργασίες
- δοκιμή
- Η
- ο κόσμος
- επομένως
- ώρα
- εμπόριο
- Εκπαίδευση
- θεραπεία
- καταπληκτικός
- δίκη
- κατανόηση
- us
- χρήση
- Χρήστες
- συνήθως
- χρησιμοποιώ
- επικύρωση
- ορατότητα
- Wikipedia
- χωρίς
- εργαζομένων
- κόσμος
- Σας