Glossario

LoRA (Low-Rank Adaptation)

Scopri come LoRA mette a punto in modo efficiente modelli di AI di grandi dimensioni come YOLO , riducendo i costi e consentendo un'implementazione edge con risorse minime.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

LoRA (Low-Rank Adaptation) è una tecnica efficiente utilizzata per adattare modelli di machine learning (ML) pre-addestrati di grandi dimensioni, come quelli utilizzati per l'elaborazione del linguaggio naturale (NLP) o per la computer vision (CV), a compiti o set di dati specifici senza dover ri-addestrare l'intero modello. Riduce in modo significativo il costo computazionale e i requisiti di memoria associati alla messa a punto di modelli massicci, rendendo più accessibile l 'IA avanzata. LoRA rientra nell'ambito dei metodi di Parameter-Efficient Fine-Tuning (PEFT), che si concentrano sull'adattamento dei modelli con modifiche minime ai loro parametri.

Come funziona la LoRA

La messa a punto tradizionale prevede l'aggiornamento di tutti i parametri (o dei pesi del modello) di un modello pre-addestrato utilizzando nuovi dati. Per i modelli con miliardi di parametri, come molti LLM moderni o modelli di visione di grandi dimensioni, questo processo richiede notevoli risorse computazionali, in particolare GPU e tempo. LoRA si basa sul principio, supportato dalla ricerca, che le modifiche necessarie per adattare un modello spesso risiedono in uno spazio a bassa dimensione, il che significa che non è necessario modificare ogni singolo peso.

Invece di modificare tutti i pesi originali, LoRA li congela e inietta matrici "low-rank" più piccole e addestrabili in strati specifici dell'architettura del modello, spesso all'interno dei blocchi Transformer (un componente comune in molti modelli di grandi dimensioni, spiegato meglio nell'articolo Attention Is All You Need). Solo queste matrici appena aggiunte (spesso chiamate adattatori) vengono aggiornate durante il processo di messa a punto. In questo modo si riduce drasticamente il numero di parametri addestrabili, spesso di ordini di grandezza (ad esempio, milioni invece di miliardi), ottenendo comunque prestazioni paragonabili a quelle di una messa a punto completa in molti casi. Il documento di ricerca originale di LoRA fornisce ulteriori dettagli tecnici sulla metodologia e sulla sua efficacia. Questo approccio rende il processo di regolazione fine molto più veloce e meno impegnativo per la memoria.

Rilevanza e vantaggi

Il vantaggio principale del LoRA è la sua efficienza, che porta a diversi benefici chiave:

  • Costo computazionale ridotto: Richiede una quantità di memoria e potenza di calcolo della GPU significativamente inferiore rispetto alla messa a punto completa, rendendo possibile l'adattamento di modelli di grandi dimensioni su hardware meno potente.
  • Ingombro di memoria ridotto: Poiché i pesi del modello originale sono congelati, è necessario salvare solo i piccoli adattatori LoRA per ogni attività specifica. Questo è molto più efficiente rispetto alla memorizzazione di una copia completa del modello ottimizzato per ogni attività.
  • Passaggio più rapido da un'attività all'altra: il caricamento di diversi adattatori LoRA consente di passare rapidamente da un'attività all'altra senza dover caricare nuovi modelli di grandi dimensioni.
  • Prestazioni comparabili: Nonostante l'addestramento di un numero molto inferiore di parametri, LoRA raggiunge spesso livelli di accuratezza simili a quelli ottenuti con una messa a punto completa su compiti specifici a valle.
  • Abilitazione all'implementazione sugli edge: La riduzione dei requisiti di risorse facilita l'adattamento dei modelli agli scenari di edge computing in cui la potenza di calcolo e la memoria sono limitate, portando potenti capacità di IA su dispositivi come smartphone o sistemi embedded(Edge AI spiegato da Intel).
  • Democratizzazione: Abbassa la barriera d'ingresso per i ricercatori e gli sviluppatori che vogliono personalizzare modelli all'avanguardia come il GPT-4 o l'Ultralytics. Ultralytics YOLO modelli.

Applicazioni della LoRA

L'efficienza di LoRA la rende preziosa in diversi ambiti:

  1. Adattamento di grandi modelli linguistici (LLM): Questo è uno degli usi più comuni. Gli sviluppatori possono prendere un LLM pre-addestrato di grandi dimensioni (come quelli disponibili attraverso Hugging Face) e utilizzare LoRA per specializzarlo per applicazioni specifiche come chatbot personalizzati, sistemi di risposta a domande specifiche per il dominio o per migliorare la sintesi del testo per particolari tipi di documenti. Librerie come la libreria PEFT diHugging Face forniscono facili implementazioni di LoRA.
  2. Personalizzazione dei modelli di computer vision: LoRA può essere applicato a modelli di computer vision di grandi dimensioni per compiti come il rilevamento di oggetti, la segmentazione di immagini o la stima della posa. Ad esempio, un modello Ultralytics YOLO pre-addestrato su un ampio set di dati come COCO potrebbe essere efficacemente perfezionato utilizzando LoRA per rilevare tipi specifici di oggetti in un dominio di nicchia, come specie in via di estinzione per la conservazione della fauna selvatica o difetti specifici nel controllo di qualità della produzione. Piattaforme come Ultralytics HUB possono semplificare l'addestramento e la distribuzione di questi modelli adattati.

LoRA e concetti correlati

È utile distinguere LoRA da altre tecniche di adattamento del modello:

  • Messa a punto completa: Questo metodo aggiorna tutti i pesi di un modello pre-addestrato su un nuovo set di dati. Sebbene sia spesso efficace, richiede notevoli risorse di calcolo e di archiviazione per ogni modello adattato. LoRA, invece, congela i pesi originali e addestra solo le piccole matrici di adattamento iniettate. Per maggiori dettagli, consulta la voce del nostro glossario sul fine-tuning e la panoramica sul fine-tuning diNVIDIA.
  • Regolazione dei suggerimenti: Questa tecnica mantiene i pesi del modello completamente congelati e apprende invece continui "suggerimenti morbidi" (vettori aggiunti agli embeddings di input) per orientare il comportamento del modello per compiti specifici. A differenza di LoRA, non modifica i pesi del modello ma si concentra esclusivamente sull'adattamento della rappresentazione degli input. Per saperne di più sulla regolazione dei prompt e sull'ingegneria dei prompt.
  • Altri metodi PEFT: LoRA è solo una delle tecniche che rientrano nel più ampio campo del Parameter-Efficient Fine-Tuning (PEFT). Altri metodi includono Adapter Tuning (simile ma con strutture di adattatori leggermente diverse), Prefix Tuning e IA³, ognuno dei quali offre diversi compromessi in termini di efficienza dei parametri e prestazioni.

In sintesi, LoRA offre un modo potente ed efficiente dal punto di vista delle risorse per personalizzare grandi modelli di base pre-addestrati per un'ampia gamma di compiti specifici sia in NLP che in computer vision, rendendo l'IA avanzata più pratica e accessibile.

Leggi tutto