Few-shot și Zero-shot

From Systems analysis Wiki
Jump to navigation Jump to search

Învățarea cu un număr redus de exemple (Few-shot Learning, FSL) și învățarea fără exemple (Zero-shot Learning, ZSL) sunt paradigme de Machine Learning orientate spre rezolvarea problemei lipsei datelor etichetate. Ele permit modelelor să învețe și să generalizeze cunoștințe pe baza unei cantități foarte limitate de informații, ceea ce este esențial pentru aplicarea inteligenței artificiale în scenarii reale, în care colectarea unor seturi mari de date este imposibilă sau inadecvată.

Problema ubică a lipsei datelor

Modelele moderne de deep learning obțin rezultate impresionante, însă eficiența lor depinde, de regulă, direct de volume enorme de date etichetate. Colectarea și adnotarea unor astfel de date reprezintă un proces costisitor, laborios și adesea imposibil. Această problemă, cunoscută drept „foamete informațională", este deosebit de acută în domenii precum:

  • Diagnosticarea bolilor rare.
  • Producția industrială specializată.
  • Robotică și interacțiunea cu obiecte noi.
  • Categorizarea produselor sau temelor noi care apar în permanență.

FSL și ZSL propun o soluție prin deplasarea accentului de la „big data\" la „smart data\", concentrându-se pe transferul și generalizarea eficientă a cunoștințelor.

Învățarea cu un număr redus de exemple (Few-shot Learning)

Few-shot Learning (FSL) este o paradigmă în care modelul învață să recunoască clase noi pe baza unui număr foarte mic de exemple etichetate (de obicei între 1 și 5), denumite set de suport (support set).

Ideea cheie

Idea principală a FSL nu este doar să învețe trăsăturile unor clase specifice, ci să învețe procesul de învățare (learning to learn). Modelul trebuie să se adapteze rapid la sarcini noi, anterior necunoscute, utilizând un număr minim de exemple. Acest lucru se realizează prin utilizarea cunoștințelor dobândite anterior și a strategiilor de adaptare.

Principalele abordări în FSL

  • Meta-învățare („A învăța să înveți"): Aceasta este paradigma dominantă în FSL. Modelul este antrenat pe un număr mare de sarcini variate pentru a învăța să se adapteze eficient la sarcini noi.
    • Pe bază de metrici: Modelele (de exemplu, rețelele siameze sau prototipice) învață să construiască un spațiu de embedding în care distanța dintre vectori reflectă proximitatea semantică. Clasificarea unui nou exemplu se realizează prin compararea embedding-ului său cu embedding-urile din setul de suport.
    • Pe bază de optimizare: Modelele (de exemplu, MAML) învață să găsească o inițializare a parametrilor care permite adaptarea rapidă (în câțiva pași de gradient descent) la o sarcină nouă.
  • Învățare în context (In-Context Learning): Odată cu apariția modelelor lingvistice mari (LLM), a devenit populară o abordare în care exemplele din setul de suport sunt furnizate modelului direct în prompt. Modelul realizează o „meta-învățare implicită\" în timpul inferenței, adaptându-se la sarcină fără actualizarea ponderilor.

Abordări avansate în FSL

  • One-shot Learning: Acesta este un caz particular al FSL, în care numărul de exemple pentru fiecare clasă este egal cu unu (K=1 în notația „N-way K-shot\"). Exemple clasice de arhitecturi sunt Matching Networks și Siamese Networks.
  • Metode generative și augmentarea datelor: FSL utilizează activ modele generative (GAN, VAE, modele de difuzie) pentru sinteza unor exemple suplimentare de date. Aceasta permite extinderea artificială a setului de suport și îmbunătățirea calității clasificării, în special pentru clase rare sau neobișnuite.
  • FSL transdductiv: Spre deosebire de abordarea standard (inductivă), aici modelul, la adaptare, ia în considerare nu numai setul de suport etichetat, ci și întreaga colecție de exemple de test neetichetate (interogări). Aceasta permite captarea structurii datelor din interogări, de exemplu prin tehnici de propagare a etichetelor (label propagation), și îmbunătățirea robusteții clasificării.

Învățarea fără exemple (Zero-shot Learning)

Zero-shot Learning (ZSL) este o paradigmă în care modelul este capabil să recunoască clase pentru care nu a văzut niciun exemplu în etapa de antrenament.

Ideea cheie

Acest lucru se realizează prin utilizarea informațiilor semantice auxiliare, care descriu atât clasele văzute, cât și cele nevăzute. Modelul învață o mapare din spațiul trăsăturilor de intrare (de exemplu, imagini) într-un spațiu semantic comun.

Mecanismele informației semantice

  • Atribute semantice: Clasele sunt descrise printr-un set de atribute definite de oameni (de exemplu, pentru clasa „zebră\": [are_dungi, are_copite, este_mamifer]).
  • Reprezentări vectoriale ale cuvintelor (Word Embeddings): Denumirile claselor sau descrierile lor textuale sunt transformate în embedding-uri cu ajutorul modelelor lingvistice pre-antrenate (de exemplu, Word2Vec, BERT).
  • Prompting în LLM: Odată cu apariția modelelor multimodale, precum CLIP, ZSL poate fi realizat prin compararea embedding-ului unei imagini cu embedding-urile descrierilor textuale ale claselor (de exemplu, „fotografie cu un câine\", „fotografie cu o pisică\").

Tipuri de ZSL: Tradițional, Generalizat, Inductiv și Transductiv

  • ZSL tradițional: În etapa de testare, modelul trebuie să clasifice exemple doar din clase nevăzute.
  • ZSL generalizat (Generalized ZSL, GZSL): Un scenariu mai realist și mai complex, în care modelul trebuie să clasifice exemple atât din clase văzute, cât și din clase nevăzute. Aceasta necesită ca modelul nu doar să recunoască ce este nou, ci și să distingă noul de ceea ce este deja familiar, combătând tendința de favorizare a claselor văzute.
  • ZSL inductiv: Formularea standard, în care modelul este antrenat doar pe date și descrieri semantice ale claselor văzute, fără niciun acces la informații despre clasele nevăzute.
  • ZSL transductiv: O schemă mai avansată, în care modelul poate utiliza, în timpul antrenamentului, exemple neetichetate din clasele nevăzute. Aceasta permite adaptarea prealabilă a spațiului semantic și îmbunătățirea calității finale.

Abordări generative în ZSL

  • Generarea trăsăturilor claselor nevăzute: Pentru a rezolva problema tendinței de favorizare în GZSL, sunt utilizate pe scară largă modele generative (VAE, GAN). Acestea sintetizează nu imaginile propriu-zise, ci vectorii lor de trăsături (embedding-uri) pentru clasele nevăzute, pe baza descrierilor lor semantice. Aceasta permite echilibrarea setului de date pentru antrenarea clasificatorului final.

Analiză comparativă și sinergie

Compararea paradigmelor de învățare cu date limitate
Aspect Învățarea cu un număr redus de exemple (FSL) Învățarea fără exemple (ZSL)
Ideea principală A învăța să se adapteze rapid la clase noi pe baza câtorva exemple. A învăța să recunoască clase noi pe baza descrierilor lor semantice.
Cerințe privind datele pentru o sarcină/clasă nouă Câteva exemple etichetate (1-5) pentru fiecare clasă nouă. Zero exemple etichetate; este necesară o descriere semantică.
Transferul cunoștințelor Învățarea cunoștințelor procedurale („cum să se adapteze\") sau a unui spațiu bun de trăsături. Învățarea relațiilor semantice și a atributelor, transferul cunoștințelor printr-un spațiu semantic comun.
Cazuri tipice de utilizare Prototipare rapidă, personalizare, recunoașterea obiectelor rare, robotică. Descoperirea de noi specii, categorizarea temelor emergente, gestionarea unor tipuri complet noi de produse.

Nuanțe cheie și tendințe actuale

  • Distincția dintre Zero-shot Learning și Zero-shot Prompting: Este important să se facă distincție între aceste concepte. ZSL este o paradigmă arhitecturală de Machine Learning care necesită un model special și informații semantice. Zero-shot Prompting este o tehnică aplicată de prompt engineering, în care un model lingvistic mare (de exemplu, GPT-4) rezolvă o sarcină fără exemple în prompt, bazându-se exclusiv pe cunoștințele sale interne.
  • Rolul pre-antrenării la scară mare: Succesul modern al FSL și ZSL se datorează în mare măsură modelelor fundamentale puternice (BERT, CLIP, GPT-4). Pre-antrenarea lor pe volume enorme de date creează un frontend de embedding universal și bogat semantic, care servește drept o bază excelentă pentru adaptarea rapidă și inferența semantică în condiții de lipsă a datelor.

FSL și ZSL reprezintă puncte diferite pe spectrul eficienței utilizării datelor și sunt adesea folosite împreună. De exemplu, ZSL poate fi utilizat pentru inițializarea reprezentărilor, care sunt ulterior fine-tunate cu ajutorul FSL atunci când apar primele exemple ale unei clase noi.

Principalele instituții de cercetare și participanți

Cercetările în domeniul FSL și ZSL sunt desfășurate activ atât în mediul academic, cât și în laboratoarele industriale.

  • Universități: Universitatea Stanford, Universitatea Peking, Universitatea Națională din Singapore.
  • Laboratoare industriale: Google AI, Meta AI, OpenAI.

Odată cu apariția modelelor fundamentale puternice, focusul cercetărilor s-a deplasat de la dezvoltarea arhitecturilor specializate pentru FSL/ZSL spre metode de adaptare eficientă a acestor modele.

Bibliografie

  • Finn, C. et al. (2017). Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks. arXiv:1703.03400.
  • Koch, G. et al. (2015). Siamese Neural Networks for One-Shot Image Recognition. PDF.
  • Vinyals, O. et al. (2016). Matching Networks for One Shot Learning. arXiv:1606.04080.
  • Snell, J. et al. (2017). Prototypical Networks for Few-Shot Learning. arXiv:1703.05175.
  • Sung, F. et al. (2018). Learning to Compare: Relation Network for Few-Shot Learning. arXiv:1711.06025.
  • Chen, Y. et al. (2021). Meta-Baseline: Exploring Simple Meta-Learning for Few-Shot Learning. arXiv:2003.04390.
  • Wang, Y. et al. (2020). Generalizing from a Few Examples: A Survey on Few-Shot Learning. arXiv:1904.05046.
  • Xian, Y. et al. (2018). Zero-Shot Learning — A Comprehensive Evaluation of the State of the Art. arXiv:1707.00600.
  • Verma, V. K. et al. (2018). Generalized Zero-Shot Learning via Synthesized Examples. arXiv:1712.03878.
  • Radford, A. et al. (2021). Learning Transferable Visual Models from Natural Language Supervision. arXiv:2103.00020.
  • Xian, Y. et al. (2019). Zero-Shot Learning via Simultaneous Generating and Learning. arXiv:1910.09446.
  • Verma, V. K. et al. (2017). Zero-Shot Learning via Generative Adversarial Training of Class-Conditional Feature Vectors. arXiv:1712.00981.

Vezi și

  • Modele lingvistice mari