PEFT (Parameter-Efficient Fine-Tuning) (EL)

From Systems analysis Wiki
Jump to navigation Jump to search

Αποδοτικό ως προς παραμέτρους fine-tuning (αγγλ. Parameter-Efficient Fine-Tuning, PEFT) — είναι ένα σύνολο μεθόδων προσαρμογής μεγάλων προεκπαιδευμένων μοντέλων, όπως τα μεγάλα γλωσσικά μοντέλα (LLM), σε εξειδικευμένες εργασίες με ελάχιστο υπολογιστικό και πόρων κόστος. Σε αντίθεση με το παραδοσιακό πλήρες fine-tuning (full fine-tuning), το οποίο απαιτεί την ενημέρωση όλων των παραμέτρων του μοντέλου, οι μέθοδοι PEFT εστιάζουν στην τροποποίηση μόνο ενός μικρού τμήματος των βαρών (λιγότερο από 1-5% του συνολικού αριθμού), αφήνοντας το κύριο μέρος του μοντέλου αμετάβλητο («παγωμένο»)[1].

Αυτή η προσέγγιση επιτρέπει τη σημαντική μείωση των απαιτήσεων σε μνήμη, αποθηκευτικό χώρο και χρόνο εκπαίδευσης, καθιστώντας τη διαδικασία προσαρμογής ισχυρών θεμελιωδών μοντέλων πιο προσιτή και ανθεκτική στο πρόβλημα της καταστροφικής λήθης[2].

Προβλήματα του πλήρους fine-tuning

Το παραδοσιακό πλήρες fine-tuning, κατά το οποίο ενημερώνονται όλες οι παράμετροι του μοντέλου, αντιμετωπίζει μια σειρά κρίσιμων προβλημάτων που αποτέλεσαν τον καταλύτη για την ανάπτυξη του PEFT:

  • Υψηλό υπολογιστικό κόστος: Η ενημέρωση εκατοντάδων δισεκατομμυρίων παραμέτρων απαιτεί τεράστιες υπολογιστικές δυνατότητες (υψηλής απόδοσης GPU/TPU) και μεγάλο όγκο μνήμης βίντεο (VRAM), καθιστώντας τη διαδικασία δαπανηρή και απρόσιτη για πολλούς ερευνητές.
  • Αναποτελεσματικότητα αποθήκευσης: Για κάθε νέα εργασία είναι απαραίτητο να αποθηκεύεται ένα πλήρες, πολυγιγαμπαϊτικό αντίγραφο του μοντέλου, γεγονός που οδηγεί σε εκθετική αύξηση των απαιτήσεων σε χώρο δίσκου.
  • Καταστροφική Λήθη (Catastrophic Forgetting): Το μοντέλο, προσαρμοζόμενο σε νέα δεδομένα, «ξεχνά» τις γενικές γνώσεις που αποκτήθηκαν κατά τη φάση της προεκπαίδευσης, μειώνοντας την απόδοσή του σε άλλες εργασίες.
  • Κίνδυνος υπερπροσαρμογής (Overfitting): Σε μικρά σύνολα δεδομένων fine-tuning, τα μοντέλα με δισεκατομμύρια παραμέτρους τείνουν να «απομνημονεύουν» τα παραδείγματα εκπαίδευσης αντί να μαθαίνουν γενικευτικά μοτίβα[2].

Ταξινόμηση μεθόδων PEFT

Οι μέθοδοι PEFT μπορούν να ταξινομηθούν ανάλογα με τον τρόπο που τροποποιούν τις παραμέτρους του μοντέλου. Υπάρχουν τρεις κύριες κατηγορίες: προσθετικές, επιλεκτικές και επαναπαραμετρικές[3].

Προσθετικές μέθοδοι

Αυτές οι μέθοδοι παγώνουν όλα τα αρχικά βάρη του μοντέλου και προσθέτουν νέες, μικρές εκπαιδεύσιμες ενότητες.

  • Adapters: Η πιο πρώιμη προσθετική μέθοδος. Μικρές νευρωνικές ενότητες με αρχιτεκτονική «bottleneck» εισάγονται μεταξύ των στρωμάτων του transformer. Εκπαιδεύονται μόνο τα βάρη αυτών των adapters[4].
  • Μέθοδοι βασισμένες σε «μαλακά» prompts (Soft Prompts): Αντί για τροποποίηση των βαρών του μοντέλου, αυτές οι μέθοδοι προσθέτουν στα δεδομένα εισόδου εκπαιδεύσιμα διανύσματα («εικονικά tokens»), που κατευθύνουν τη συμπεριφορά του μοντέλου. Βασικές παραλλαγές:
    • Prompt Tuning: Προσθέτει εκπαιδεύσιμα διανύσματα μόνο στα embedding εισόδου.
    • Prefix-Tuning: Προσθέτει εκπαιδεύσιμα διανυσματικά προθέματα στις κρυφές καταστάσεις σε κάθε στρώμα του μηχανισμού attention, παρέχοντας πιο λεπτό έλεγχο[5].
    • P-Tuning v2: Γενίκευση της ιδέας του Prefix-Tuning, η οποία εφαρμόζει εκπαιδεύσιμα prompts σε όλα τα στρώματα του μοντέλου, επιτυγχάνοντας απόδοση συγκρίσιμη με το πλήρες fine-tuning[6].

Επιλεκτικές μέθοδοι

Αυτές οι μέθοδοι δεν προσθέτουν νέες παραμέτρους, αλλά επιλέγουν και κάνουν fine-tuning σε ένα μικρό υποσύνολο ήδη υπαρχόντων.

  • BitFit: Εξαιρετικά οικονομική μέθοδος που κάνει fine-tuning μόνο στα διανύσματα μεροληψίας (bias terms) και τις παραμέτρους των στρωμάτων κανονικοποίησης, ενημερώνοντας λιγότερο από 0,1% του συνολικού αριθμού παραμέτρων.
  • Διαφορικό pruning (Diff Pruning): Χρησιμοποιεί μια εκπαιδεύσιμη μάσκα για τον δυναμικό προσδιορισμό ποια βάρη πρέπει να ενημερωθούν κατά τη διαδικασία εκπαίδευσης[3].

Επαναπαραμετρικές μέθοδοι

Αυτή η κατηγορία βασίζεται στην υπόθεση ότι οι αλλαγές βαρών για την προσαρμογή του μοντέλου έχουν χαμηλό «εσωτερικό τάξη». Αντί για ενημέρωση πλήρων πινάκων βαρών, αυτές οι μέθοδοι ενημερώνουν την αναπαράστασή τους χαμηλής τάξης.

  • LoRA (Low-Rank Adaptation): Η πιο δημοφιλής μέθοδος PEFT σήμερα. Προϋποθέτει ότι η ενημέρωση του πίνακα βαρών `ΔW` μπορεί να προσεγγιστεί ως γινόμενο δύο πινάκων χαμηλής τάξης: `ΔW = BA`. Κατά τη διαδικασία fine-tuning ο αρχικός πίνακας `W` παγώνει, ενώ εκπαιδεύονται μόνο οι `A` και `B`[7].
  • QLoRA: Συνδυάζει το LoRA με τεχνικές κβαντισμού για περαιτέρω μείωση των απαιτήσεων μνήμης, επιτρέποντας το fine-tuning μοντέλων με 65 δισεκατομμύρια παραμέτρους σε μία μόνο καταναλωτική GPU[8].

Σύγκριση απόδοσης και πόρων

Οι μέθοδοι PEFT επιτρέπουν την επίτευξη απόδοσης συγκρίσιμης με το πλήρες fine-tuning, με ριζική μείωση κόστους.

Συγκριτική απόδοση και αποτελεσματικότητα μεθόδων PEFT
Μοντέλο Μέθοδος Εκπαιδεύσιμες παράμετροι (%) Αποτέλεσμα στο benchmark (Avg. Accuracy) Πηγή
BERT-Large Πλήρες fine-tuning 100% 80.4 (GLUE) [4]
BERT-Large Adapters 3.6% 80.0 (GLUE) [4]
LLaMA-7B LoRA 0.83% 74.7% [9]
LLaMA-7B DoRA (παραλλαγή LoRA) 0.84% 78.1% [9]

Κύρια πλεονεκτήματα του PEFT στην εξοικονόμηση πόρων:

  • Μνήμη GPU (VRAM): Για το μοντέλο LLaMA 65B, το πλήρες fine-tuning απαιτεί θεωρητικά >780 GB VRAM, ενώ το QLoRA επιτρέπει το fine-tuning του σε GPU με <48 GB VRAM[8].
  • Αποθηκευτικός χώρος: Τα checkpoints που αποθηκεύονται μετά το PEFT καταλαμβάνουν megabytes και όχι gigabytes. Αυτό επιτρέπει την αποθήκευση εκατοντάδων «adapters» για διαφορετικές εργασίες στον χώρο που θα καταλάμβανε ένα μόνο πλήρως εκπαιδευμένο μοντέλο.

Τομείς εφαρμογής

Αρχικά αναπτυγμένες για NLP, οι μέθοδοι PEFT προσαρμόστηκαν επιτυχώς για ένα ευρύ φάσμα εργασιών:

  • Υπολογιστική όραση (CV) και πολυτροπικά μοντέλα (VLM): Προσαρμογή μοντέλων όπως το Vision Transformer (ViT) και το Segment Anything Model (SAM) για εργασίες κατάτμησης εικόνας, συμπεριλαμβανομένης της βιοϊατρικής.
  • Δημιουργία και ανάλυση κώδικα: Ρύθμιση LLM στις ιδιαιτερότητες συγκεκριμένων προγραμματιστικών έργων, εσωτερικών API ή βάσεων κώδικα.
  • Γεννητικά μοντέλα: «Στυλιζάρισμα» μοντέλων δημιουργίας εικόνας, όπως το Stable Diffusion, με τη χρήση LoRA adapters (τεχνική Dreambooth).
  • Σύνθεση ομιλίας: Προσαρμογή μοντέλων για δημιουργία ομιλίας με συγκεκριμένη φωνή, τονικότητα ή συναισθηματική χροιά.

Σύνδεσμοι

  • Αποθετήριο της βιβλιοθήκης PEFT στο GitHub
  • Επίσημη τεκμηρίωση της βιβλιοθήκης PEFT από το Hugging Face

Βιβλιογραφία

  • Hu, E.J. et al. (2021). LoRA: Low-Rank Adaptation of Large Language Models. arXiv:2106.09685.
  • Dettmers, T. et al. (2023). QLoRA: Efficient Finetuning of Quantized LLMs. arXiv:2305.14314.
  • Houlsby, N. et al. (2019). Parameter-Efficient Transfer Learning for NLP. ICML 2019.
  • Li, X.L.; Liang, P. (2021). Prefix-Tuning: Optimizing Continuous Prompts for Generation. arXiv:2101.00190.
  • Liu, X. et al. (2022). P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks. arXiv:2110.07602.
  • Ben Zaken, E.; Ravfogel, S.; Goldberg, Y. (2021). BitFit: Simple Parameter-Efficient Fine-Tuning for Transformer-Based Masked Language Models. arXiv:2106.10199.
  • Guo, D.; Rush, A.M.; Kim, Y. (2020). Parameter-Efficient Transfer Learning with Diff Pruning. arXiv:2012.07463.
  • Jiang, Z. et al. (2024). MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning. arXiv:2405.12130.
  • Mao, K. et al. (2024). A Survey on LoRA of Large Language Models. arXiv:2407.11046.
  • Chen, S. et al. (2024). Parameter-Efficient Fine Tuning: A Comprehensive Analysis Across Applications. arXiv:2404.13506.
  • Zhang, J. et al. (2025). Parameter-Efficient Fine-Tuning for Foundation Models. arXiv:2501.13787.

Παραπομπές

  1. «Parameter-Efficient Fine-Tuning for Foundation Models». arXiv:2501.13787. [1]
  2. 2.0 2.1 «5 Problems Encountered Fine-Tuning LLMs with Solutions». Machine Learning Mastery. [2]
  3. 3.0 3.1 «PEFT: Parameter-Efficient Fine-Tuning Methods for LLMs». Hugging Face Blog. [3]
  4. 4.0 4.1 4.2 Houlsby, N., et al. «Parameter-Efficient Transfer Learning for NLP». Proceedings of the 36th International Conference on Machine Learning. [4]
  5. Li, X.L., Liang, P. «Prefix-Tuning: Optimizing Continuous Prompts for Generation». arXiv:2101.00190. [5]
  6. Liu, X., et al. «P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks». arXiv:2110.07602. [6]
  7. Hu, E.J., et al. «LoRA: Low-Rank Adaptation of Large Language Models». arXiv:2106.09685. [7]
  8. 8.0 8.1 Dettmers, T., et al. «QLoRA: Efficient Finetuning of Quantized LLMs». arXiv:2305.14314. [8]
  9. 9.0 9.1 «Parameter Efficient Fine Tuning: A Comprehensive Analysis Across Applications». arXiv:2404.13506. [9]