Τεχνητή νοημοσύνη
LoRA, QLoRA και QA-LoRA: Αποτελεσματική Προσαρμογή σε Μεγάλους Γλωσσικούς Μοντέλους Μέσω Χαμηλού Βαθμού Παράγωγης Πυρήνα

Τα Μεγάλα Γλωσσικά Μοντέλα (LLM) έχουν δημιουργήσει ένα μοναδικό χώρο, προσφέροντας απαράμιλλες ικανότητες στην κατανόηση και την παραγωγή ανθρώπινου στυλ κειμένου. Η δύναμη των LLM οφείλεται στην τεράστια τους μέγεθος, που συχνά έχει δισεκατομμύρια παραμέτρους. Ενώ αυτό το τεράστιο μέγεθος τροφοδοτεί την απόδοσή τους, δημιουργεί επίσης προκλήσεις, ιδιαίτερα όταν πρόκειται για προσαρμογή του μοντέλου για συγκεκριμένες εργασίες ή τομείς. Οι παραδοσιακές μεθόδοι διαχείρισης των LLM, όπως η λεπτοβελτίωση όλων των παραμέτρων, παρουσιάζουν一个 nặng υπολογιστικό και οικονομικό κόστος, θέτοντας σημαντικό εμπόδιο στην ευρεία υιοθέτησή τους σε πραγματικές εφαρμογές.
Σε ένα προηγούμενο άρθρο, εξετάσαμε την λεπτοβελτίωση των Μεγάλων Γλωσσικών Μοντέλων (LLM) για να τα προσαρμόσουμε σε συγκεκριμένες απαιτήσεις. Ερευνήσαμε διάφορες μεθόδοι λεπτοβελτίωσης, όπως η λεπτοβελτίωση με βάση τις οδηγίες, η λεπτοβελτίωση για μια εργασία και η λεπτοβελτίωση παραμέτρων (PEFT), κάθε μια με τη δική της προσέγγιση για την βελτίωση των LLM για διαφορετικές εργασίες. Κεντρικό σημείο της συζήτησης ήταν η αρχιτεκτονική του μετασχηματιστή, η σπονδυλική στήλη των LLM, και οι προκλήσεις που θέτουν οι υπολογιστικές και μνημονικές απαιτήσεις της διαχείρισης ενός τεράστιου αριθμού παραμέτρων κατά τη λεπτοβελτίωση.
Η παραπάνω εικόνα αντιπροσωπεύει το μέγεθος των verschiedenen μεγάλων γλωσσικών μοντέλων, ταξινομημένων ανάλογα με τον αριθμό των παραμέτρων τους. Ιδιαίτερα: PaLM, BLOOM, κ.λπ.
Ως του έτους, υπάρχουν προόδους που οδηγούν σε ακόμη μεγαλύτερα μοντέλα. Ωστόσο, η ρύθμιση τέτοιων γιγαντιαίων, ανοιχτών μοντέλων σε τυπικά συστήματα είναι απραγματοποίητη χωρίς ειδικές τεχνικές βελτίωσης.
Εισάγουμε την Προσαρμογή Χαμηλού Βαθμού (LoRA) που εισήχθη από τη Microsoft σε αυτό έγγραφο, με στόχο να μετριάσει αυτές τις προκλήσεις και να κάνει τα LLM πιο προσιτά και προσαρμόσιμα.
Η ουσία της LoRA έγκειται στην προσέγγισή της για προσαρμογή του μοντέλου χωρίς να αναμιχθεί στις λεπτομέρειες της επανα-εκπαίδευσης του ολόκληρου μοντέλου. Αντιθέτως με την παραδοσιακή λεπτοβελτίωση, όπου κάθε παράμετρος υπόκειται σε αλλαγή, η LoRA υιοθετεί ένα έξυπνο δρόμο. Κρυώνει τα προ-εκπαιδευμένα βάρη και εισάγει εκπαιδεύσιμες πυρήνες χαμηλού βαθμού σε κάθε στρώμα της αρχιτεκτονικής του μετασχηματιστή. Αυτή η προσέγγιση μειώνει δραστικά τον αριθμό των εκπαιδεύσιμων παραμέτρων, εξασφαλίζοντας μια πιο αποτελεσματική διαδικασία προσαρμογής.
Η Εξέλιξη των Στρατηγικών Ρύθμισης LLM
Αναλογιζόμενοι το ταξίδι της ρύθμισης LLM, μπορούμε να αναγνωρίσουμε διάφορες στρατηγικές που έχουν χρησιμοποιηθεί από τους επαγγελματίες αυτά τα χρόνια. Αρχικά, το φως ήταν στη λεπτοβελτίωση των προ-εκπαιδευμένων μοντέλων, μια στρατηγική που περιλαμβάνει μια ολοκληρωμένη αλλαγή των παραμέτρων του μοντέλου για να ταιριάζει η συγκεκριμένη εργασία. Ωστόσο, καθώς τα μοντέλα μεγάλωσαν σε μέγεθος και πολυπλοκότητα, così και οι υπολογιστικές απαιτήσεις αυτής της προσέγγισης.
Η επόμενη στρατηγική που κέρδισε έδαφος ήταν η λεπτοβελτίωση υποσυνόλου, μια πιο περιορισμένη εκδοχή του προκατόχου της. Εδώ, μόνο ένα υποσύνολο των παραμέτρων του μοντέλου υπόκειται σε λεπτοβελτίωση, μειώνοντας τις υπολογιστικές απαιτήσεις σε κάποιο βαθμό.尽管 αυτό, η λεπτοβελτίωση υποσυνόλου δεν ήταν ακόμη σε θέση να跟πεί την ταχύτητα αύξησης του μεγέθους των LLM.
Εισαγωγή στη LoRA
Ο βαθμός ενός πίνακα μας δίνει μια γνώση για τις διαστάσεις που δημιουργούνται από τις στήλες του, καθορίζεται από τον αριθμό των μοναδικών γραμμών ή στηλών που έχει.
- Πλήρης-Βαθμός Πίνακας: Ο βαθμός του αντιστοιχεί στο μικρότερο αριθμό μεταξύ των γραμμών και των στηλών του.
- Χαμηλού-Βαθμού Πίνακας: Με einen βαθμό που είναι σημαντικά μικρότερος και από τις γραμμές και από τις στήλες του, καταγράφει λιγότερες ιδιότητες.
Τώρα, τα μεγάλα μοντέλα έχουν μια ευρεία κατανόηση του τομέα τους, όπως η γλώσσα στα γλωσσικά μοντέλα. Αλλά, η λεπτοβελτίωση τους για συγκεκριμένες εργασίες συχνά απαιτεί μόνο την επισήμανση ενός μικρού μέρους αυτής της κατανόησης. Εδώ είναι όπου η LoRA λάμπει. Υποδεικνύει ότι ο πίνακας που παρουσιάζει αυτές τις αλλαγές βαρών μπορεί να είναι ένας χαμηλού βαθμού πίνακας, καταγράφοντας λιγότερες ιδιότητες.
Η LoRA περιορίζει έξυπνα τον βαθμό του πίνακα ενημερώσεων分割οντας τον σε δύο μικρότερους πίνακες. Έτσι, αντί να αλλάξει ολόκληρο τον πίνακα βαρών, αλλάζει μόνο ένα μέρος του, καθιστώντας την εργασία της λεπτοβελτίωσης πιο αποτελεσματική.
Εφαρμογή της LoRA στους Μετασχηματιστές
Η LoRA βοηθά στην ελαφράωση του φόρτου εκπαίδευσης στα νευρωνικά δίκτυα, εστιάζοντας σε συγκεκριμένους πίνακες βαρών. Υπό την αρχιτεκτονική του μετασχηματιστή, ορισμένοι πίνακες βαρών συνδέονται με τον μηχανισμό της αυτο-προσοχής, συγκεκριμένα Wq, Wk, Wv και Wo, εκτός από δύο ακόμη στο模块 του MLP.
Μαθηματική Εξήγηση της LoRA
Ας αναλύσουμε τα μαθηματικά της LoRA:
- Προ-Εκπαιδευμένος Πίνακας Βαρών :
- Ξεκινάμε με έναν προ-εκπαιδευμένο πίνακα βαρών των διαστάσεων . Αυτό σημαίνει ότι ο πίνακας έχει γραμμές και στήλες.
- Χαμηλού-Βαθμού Αποσύνθεση:
- Αντί να ενημερώσουμε απευθείας ολόκληρο τον πίνακα , που μπορεί να είναι υπολογιστικά ακριβό, η μέθοδος προτείνει μια χαμηλού-βαθμού αποσύνθεση.
- Η ενημέρωση του μπορεί να αναπαρασταθεί ως γινόμενη δύο πινάκων: και .
- Ο πίνακας έχει διαστάσεις .
- Ο πίνακας έχει διαστάσεις .
- Ο κρίσιμος σημείο εδώ είναι ότι ο βαθμός είναι πολύ μικρότερος και από τις και , που επιτρέπει μια πιο υπολογιστικά αποτελεσματική αναπαράσταση.
- Εκπαίδευση:
- Κατά τη διάρκεια της εκπαίδευσης, το παραμένει αμετάβλητο. Αυτό ονομάζεται “παγώνοντας” τα βάρη.
- Από την άλλη πλευρά, τα και είναι οι εκπαιδεύσιμοι παράμετροι. Αυτό σημαίνει ότι, κατά τη διάρκεια της εκπαίδευσης, γίνονται προσαρμογές στα και για να βελτιωθεί η απόδοση του μοντέλου.
- Πολλαπλασιασμός και Πρόσθεση:
- Και το και η ενημέρωση (που είναι το γινόμενο του και ) πολλαπλασιάζονται με την ίδια είσοδο (που σημειώνεται ως ).
- Τα αποτελέσματα αυτών των πολλαπλασιασμών προστίθενται.
- Αυτή η διαδικασία συνοψίζεται στην εξίσωση: Εδώ, αντιπροσωπεύει την τελική έξοδο μετά την εφαρμογή των ενημερώσεων στην είσοδο .
Συντομότερα, αυτή η μέθοδος επιτρέπει μια πιο αποτελεσματική τρόπο ενημέρωσης ενός μεγάλου πίνακα βαρών, αναπαρίσταντας τις ενημερώσεις με μια χαμηλού-βαθμού αποσύνθεση, που μπορεί να είναι ωφέλιμη όσον αφορά την υπολογιστική αποτελεσματικότητα και τη χρήση μνήμης.
Εκκίνηση και Κλιμάκωση:
Όταν εκπαιδεύουμε μοντέλα, το πώς αρχικοποιούμε τις παραμέτρους μπορεί να επηρεάσει σημαντικά την αποτελεσματικότητα και την αποτελεσματικότητα της διαδικασίας μάθησης. Στο πλαίσιο της ενημέρωσης του πίνακα βαρών με και :
- Αρχικοποίηση των Πινάκων και :
- Πίνακας : Αυτός ο πίνακας αρχικοποιείται με τυχαίες Γκαουσιανές τιμές, επίσης γνωστές ως κανονική κατανομή. Ο λόγος για την उपयογή της Γκαουσιανής αρχικοποίησης είναι να σπάσει τη συμμετρία: διαφορετικά νευρώνες στην ίδια στρώση θα μάθουν διαφορετικά χαρακτηριστικά όταν έχουν διαφορετικές αρχικές βάρη.
- Πίνακας : Αυτός ο πίνακας αρχικοποιείται με μηδενικά. Κάνοντας così, η ενημέρωση αρχίζει ως μηδέν στην αρχή της εκπαίδευσης. Αυτό εξασφαλίζει ότι δεν υπάρχει απότομη αλλαγή στη συμπεριφορά του μοντέλου στην αρχή, επιτρέποντας στο μοντέλο να προσαρμοστεί σταδιακά καθώς το μαθαίνει κατάλληλες τιμές κατά τη διάρκεια της εκπαίδευσης.
- Κλιμάκωση της Έξοδου από :
- Μετά τον υπολογισμό της ενημέρωσης , η έξοδος κλιμακώνεται με έναν παράγοντα όπου είναι μια σταθερά. Με την κλιμάκωση, ελέγχεται η μεγέθυνση των ενημερώσεων.
- Η κλιμάκωση είναι ιδιαίτερα κρίσιμη όταν ο βαθμός αλλάζει. Για παράδειγμα, αν αποφασίσετε να αυξήσετε τον βαθμό για μεγαλύτερη ακρίβεια (με το κόστος της υπολογιστικής), η κλιμάκωση εξασφαλίζει ότι δεν χρειάζεται να調整σετε πολλές άλλες υπερπαράμετρους στη διαδικασία. Παρέχει ένα επίπεδο σταθερότητας στο μοντέλο.
Πρακτική Επίδραση της LoRA
Η LoRA έχει αποδείξει την ικανότητά της να προσαρμόζει τα LLM σε συγκεκριμένα καλλιτεχνικά στυλ αποτελεσματικά από άτομα της κοινότητας του AI. Αυτό ήταν ιδιαίτερα εμφανές στην προσαρμογή ενός μοντέλου για να μιμηθεί το καλλιτεχνικό στυλ του Greg Rutkowski.
Όπως υπογραμμίστηκε στο έγγραφο με το GPT-3 175B ως παράδειγμα. Έχοντας μεμονωμένες εκδόσεις των μοντέλων που έχουν υποβληθεί σε λεπτοβελτίωση με 175B παραμέτρους το καθένα είναι αρκετά ακριβό. Αλλά με την LoRA, οι εκπαιδεύσιμες παραμέτρους μειώνονται κατά 10.000 φορές, και η χρήση μνήμης GPU μειώνεται στο ένα τρίτο.
Η LoRA δεν μόνο αποτελεί ένα σημαντικό βήμα προς την κατεύθυνση της καθιστά τα LLM πιο προσιτά αλλά και υπογραμμίζει την δυνατότητα να γεφυρώσει το χάσμα μεταξύ θεωρητικών προόδων και πρακτικών εφαρμογών στον τομέα του AI. Μειώνοντας τις υπολογιστικές προκλήσεις και διευκολύνοντας μια πιο αποτελεσματική διαδικασία προσαρμογής, η LoRA είναι έτοιμη να παίξει ένα κρίσιμο ρόλο στην ευρύτερη υιοθέτηση και ανάπτυξη των LLM σε πραγματικές εφαρμογές.
QLoRA (Quantized)
Ενώ η LoRA είναι ένας game-changer στην μείωση των απαιτήσεων αποθήκευσης, εξακολουθεί να απαιτεί ένα ισχυρό GPU για να φορτώσει το μοντέλο για εκπαίδευση. Εδώ είναι όπου η QLoRA, ή Quantized LoRA, εισέρχεται, συνδυάζοντας την LoRA με Quantization για μια έξυπνη προσέγγιση.
Κανονικά, οι παράμετροι βαρών αποθηκεύονται σε μορφή 32-bit (FP32), που σημαίνει ότι κάθε στοιχείο του πίνακα καταλαμβάνει 32 bits χώρου. Φανταστείτε αν μπορούσαμε να συμπιέσουμε τις ίδιες πληροφορίες σε μόνο 8 ή ακόμη και 4 bits. Αυτή είναι η βασική ιδέα πίσω από την QLoRA. Η Quantization αναφέρεται στη διαδικασία της αντιστοίχισης συνεχών απεριόριστων τιμών σε ένα μικρότερο σύνολο διακριτών πεπερασμένων τιμών. Στο контέκστ των LLM, αναφέρεται στη διαδικασία της μετατροπής των βαρών του μοντέλου από υψηλότερης ακρίβειας τύπους δεδομένων σε χαμηλότερης ακρίβειας.
Εδώ είναι μια απλούστερη αναπαράσταση της QLoRA:
- Αρχική Quantization: Πρώτα, το Μεγάλο Γλωσσικό Μοντέλο (LLM) quantize σε 4 bits, μειώνοντας σημαντικά την αποθηκευτική απήχηση.
- Εκπαίδευση LoRA: Στη συνέχεια, εκτελείται η εκπαίδευση LoRA, αλλά σε τυπική ακρίβεια 32-bit (FP32).
Τώρα, μπορείτε να αναρωτηθείτε, γιατί να επιστρέψετε στα 32 bits για εκπαίδευση μετά τη συρρίκνωση σε 4 bits; Για να εκπαιδεύσετε αποτελεσματικά τους προσαρμογείς LoRA σε FP32, τα βάρη του μοντέλου πρέπει επίσης να επιστρέψουν στα FP32. Αυτή η εναλλαγή μεταξύ 32 bits και 4 bits γίνεται με ένα έξυπνο, βήμα-προς-βήμα τρόπο για να αποφευχθεί η υπερφόρτωση της μνήμης GPU.
Η LoRA βρίσκει πρακτική εφαρμογή στη βιβλιοθήκη Parameter Efficient Fine-Tuning (PEFT) της Hugging Face, απλοποιώντας την χρήση της. Για εκείνους που θέλουν να χρησιμοποιήσουν την QLoRA, είναι διαθέσιμη μέσω συνδυασμού των βιβλιοθηκών bitsandbytes και PEFT. Επιπλέον, η βιβλιοθήκη Transformer Reinforcement Learning (TRL) της HuggingFace διευκολύνει την επιβλεπόμενη λεπτοβελτίωση με ενσωματωμένη υποστήριξη για LoRA. Μαζί, αυτές οι τρεις βιβλιοθήκες παρέχουν το απαραίτητο εργαλείο για την λεπτοβελτίωση ενός επιλεγμένου προ-εκπαιδευμένου μοντέλου, επιτρέποντας τη δημιουργία πειστικών και συνεκτικών περιγραφών προϊόντων όταν ζητείται με συγκεκριμένες οδηγίες.
Συμπέρασμα
Σε αυτό το άρθρο, θίξαμε τις προκλήσεις που θέτουν τα LLM λόγω του τεράστιου μεγέθους τους. Εξετάσαμε τις παραδοσιακές μεθόδοι λεπτοβελτίωσης και τις σχετικές υπολογιστικές και οικονομικές απαιτήσεις. Η ουσία της LoRA έγκειται στην ικανότητά της να τροποποιήσει τα προ-εκπαιδευμένα μοντέλα χωρίς να τα ξανα-εκπαιδεύσει ολόκληρα, μειώνοντας τις εκπαιδεύσιμες παραμέτρους και καθιστώντας τη διαδικασία προσαρμογής πιο οικονομική.
Επίσης, εξετάσαμε σύντομα την Quantized LoRA (QLoRA), ένα συνδυασμό της LoRA και της Quantization, που μειώνει την αποθηκευτική απήχηση του μοντέλου ενώ διατηρεί την απαραίτητη ακρίβεια για εκπαίδευση. Με αυτές τις προηγμένες τεχνικές, οι επαγγελματίες είναι τώρα εξοπλισμένοι με μια ισχυρή βιβλιοθήκη, διευκολύνοντας την ευρύτερη υιοθέτηση και ανάπτυξη των LLM σε ένα φάσμα πραγματικών εφαρμογών.
Αυτές οι στρατηγικές έχουν σχεδιαστεί για να ισορροπήσουν μεταξύ της καθιστά τα LLM προσαρμόσιμα για συγκεκριμένες εργασίες και της διασφάλισης ότι οι διαδικασίες λεπτοβελτίωσης και ανάπτυξης δεν είναι υπερβολικά απαιτητικές όσον αφορά την υπολογιστική και αποθηκευτική δυνατότητα.




















