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

From Systems analysis Wiki
Jump to navigation Jump to search

Reglaj fin eficient din punct de vedere parametric (engl. Parameter-Efficient Fine-Tuning, PEFT) — este un ansamblu de metode de adaptare a modelelor mari pre-antrenate, precum modelele lingvistice mari (LLM), la sarcini specifice cu costuri computaționale și de resurse minime. Spre deosebire de tradiționalul reglaj fin complet (full fine-tuning), care necesită actualizarea tuturor parametrilor modelului, metodele PEFT se concentrează pe modificarea doar a unei mici părți a ponderilor (mai puțin de 1-5% din numărul total), lăsând partea principală a modelului neschimbată («înghețată»)[1].

Această abordare permite reducerea semnificativă a cerințelor de memorie, spațiu de stocare și timp de antrenare, făcând procesul de adaptare a modelelor fundamentale puternice mai accesibil și mai rezistent la problema uitării catastrofice[2].

Probleme ale reglajului fin complet

Reglajul fin complet tradițional, în cadrul căruia sunt actualizați toți parametrii modelului, se confruntă cu o serie de probleme critice care au servit drept catalizator pentru dezvoltarea PEFT:

  • Costuri computaționale ridicate: Actualizarea a sute de miliarde de parametri necesită resurse de calcul enorme (GPU/TPU de înaltă performanță) și un volum mare de memorie video (VRAM), ceea ce face procesul costisitor și inaccesibil pentru mulți cercetători.
  • Ineficiența stocării: Pentru fiecare sarcină nouă este necesară stocarea unei copii complete, de mai mulți gigabyți, a modelului, ceea ce duce la o creștere exponențială a cerințelor de spațiu pe disc.
  • Uitarea catastrofică (Catastrophic Forgetting): Modelul, adaptându-se la date noi, «uită» cunoștințele generale dobândite în etapa de pre-antrenare, ceea ce îi reduce performanța la alte sarcini.
  • Riscul de supraantrenare (Overfitting): Pe seturi de date mici pentru reglajul fin, modelele cu miliarde de parametri tind să «memoreze» exemplele de antrenare în loc să învețe tipare generalizabile[2].

Taxonomia metodelor PEFT

Metodele PEFT pot fi clasificate în funcție de modul în care modifică parametrii modelului. Există trei categorii principale: aditive, selective și de reparametrizare[3].

Metode aditive

Aceste metode înghețată toate ponderile originale ale modelului și adaugă module noi, mici, antrenabile.

  • Adaptoare (Adapters): Cea mai timpurie metodă aditivă. Module mici de rețele neuronale cu arhitectură «gât de sticlă» sunt inserate între straturile transformerului. Sunt antrenate doar ponderile acestor adaptoare[4].
  • Metode bazate pe prompt-uri «moi» (Soft Prompts): În loc să modifice ponderile modelului, aceste metode adaugă la datele de intrare vectori antrenabili («token-uri virtuale»), care orientează comportamentul modelului. Variante cheie:
    • Prompt Tuning: Adaugă vectori antrenabili doar la embedding-urile de intrare.
    • Prefix-Tuning: Adaugă prefixuri vectoriale antrenabile la stările ascunse din fiecare strat al mecanismului de atenție, oferind un control mai fin[5].
    • P-Tuning v2: O generalizare a ideii de Prefix-Tuning, care aplică prompt-uri antrenabile pe toate straturile modelului, atingând o performanță comparabilă cu reglajul fin complet[6].

Metode selective

Aceste metode nu adaugă parametri noi, ci selectează și reglează fin un mic subset din cei existenți.

  • BitFit: O metodă extrem de economică, care reglează fin doar vectorii de deplasare (bias terms) și parametrii straturilor de normalizare, actualizând mai puțin de 0,1% din numărul total de parametri.
  • Pruning diferențial (Diff Pruning): Utilizează o mască antrenabilă pentru a determina dinamic ce ponderi trebuie actualizate în procesul de antrenare[3].

Metode de reparametrizare

Această categorie se bazează pe ipoteza că modificările ponderilor pentru adaptarea modelului au un «rang intern» scăzut. În loc să actualizeze matrice de ponderi de dimensiune completă, aceste metode actualizează reprezentarea lor de rang scăzut.

  • LoRA (Low-Rank Adaptation): Cea mai populară metodă PEFT în prezent. Aceasta presupune că actualizarea matricei de ponderi `ΔW` poate fi aproximată prin produsul a două matrice de rang scăzut: `ΔW = BA`. În procesul de reglaj fin, matricea originală `W` este înghețată, iar `A` și `B` sunt antrenate[7].
  • QLoRA: Combină LoRA cu tehnici de cuantizare pentru a reduce și mai mult cerințele de memorie, permițând reglajul fin al modelelor cu 65 de miliarde de parametri pe un singur GPU de consum[8].

Compararea performanței și a resurselor

Metodele PEFT permit atingerea unei performanțe comparabile cu reglajul fin complet, cu o reducere radicală a costurilor.

Performanța comparativă și eficiența metodelor PEFT
Model Metodă Parametri antrenabili (%) Rezultat pe benchmark (Avg. Accuracy) Sursă
BERT-Large Reglaj fin complet 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 (variantă LoRA) 0.84% 78.1% [9]

Avantaje cheie ale PEFT în economisirea resurselor:

  • Memorie GPU (VRAM): Pentru modelul LLaMA 65B, reglajul fin complet necesită teoretic >780 GB VRAM, în timp ce QLoRA permite reglajul fin pe un GPU cu <48 GB VRAM[8].
  • Spațiu de stocare: Checkpoint-urile salvate după PEFT ocupă megabytes, nu gigabytes. Aceasta permite stocarea a sute de «adaptoare» pentru diferite sarcini în volumul pe care l-ar ocupa un singur model complet reglat fin.

Domenii de aplicare

Inițial dezvoltate pentru NLP, metodele PEFT au fost adaptate cu succes pentru o gamă largă de sarcini:

  • Vedere prin calculator (CV) și modele multimodale (VLM): Adaptarea modelelor precum Vision Transformer (ViT) și Segment Anything Model (SAM) pentru sarcini de segmentare a imaginilor, inclusiv în biomedicină.
  • Generarea și analiza codului: Configurarea LLM-urilor pentru specificul unor proiecte software concrete, API-uri interne sau baze de cod.
  • Modele generative: «Stilizarea» modelelor de generare a imaginilor, precum Stable Diffusion, cu ajutorul adaptorilor LoRA (tehnica Dreambooth).
  • Sinteza vorbirii: Adaptarea modelelor pentru generarea vorbirii cu o anumită voce, intonație sau coloratură emoțională.

Referințe

  • Depozitul bibliotecii PEFT pe GitHub
  • Documentația oficială a bibliotecii PEFT de la Hugging Face

Literatură

  • 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.

Note

  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]