Sintonizzati su YOLO Vision 2025!
25 settembre 2025
10:00 — 18:00 BST
Evento ibrido
Yolo Vision 2024
Glossario

Knowledge Distillation

Scopri come la Knowledge Distillation comprime i modelli di IA per un'inferenza più rapida, una maggiore precisione e un'efficienza di implementazione dei dispositivi edge.

La Distillazione della Conoscenza è una tecnica di ottimizzazione del modello e compressione nel machine learning (ML) in cui un modello "studente" compatto viene addestrato per riprodurre le prestazioni di un modello "insegnante" più grande e complesso. L'idea centrale è quella di trasferire la "conoscenza" dal modello insegnante, potente ma ingombrante, al modello studente, più piccolo ed efficiente. Ciò consente l'implementazione di modelli altamente accurati in ambienti con risorse limitate, come su dispositivi edge o telefoni cellulari, senza un calo significativo delle prestazioni. Il processo colma il divario tra modelli di ricerca massicci e all'avanguardia e l'implementazione del modello pratica e reale.

Come funziona la Knowledge Distillation

Il modello "teacher", in genere una grande rete neurale o un ensemble di modelli, viene prima addestrato su un ampio dataset per ottenere un'elevata accuratezza. Durante il processo di distillazione, il modello "student" apprende cercando di imitare gli output del "teacher". Invece di apprendere solo dalle etichette ground-truth nei dati di addestramento, lo "student" viene addestrato anche sulle distribuzioni di probabilità complete del "teacher" per ogni previsione, spesso chiamate "soft labels". Queste "soft labels" forniscono informazioni più ricche rispetto alle "hard labels" (le risposte corrette), in quanto rivelano come il modello "teacher" "pensa" e generalizza. Ad esempio, un modello "teacher" potrebbe prevedere che un'immagine di un gatto sia "gatto" con una confidenza del 90%, ma assegnare anche piccole probabilità a "cane" (5%) e "volpe" (2%). Queste informazioni sfumate aiutano il modello "student" ad apprendere in modo più efficace, portando spesso a una migliore generalizzazione rispetto a se fosse stato addestrato solo sulle "hard labels". Questa tecnica è una parte fondamentale del toolkit di deep learning per la creazione di modelli efficienti.

Applicazioni nel mondo reale

La Distillazione della Conoscenza è ampiamente utilizzata in vari settori per rendere accessibile l'IA potente.

  1. Elaborazione del linguaggio naturale (NLP): I grandi modelli linguistici (LLM) come BERT sono incredibilmente potenti ma troppo grandi per molte applicazioni. DistilBERT è un famoso esempio di versione distillata di BERT. È più piccolo del 40% e più veloce del 60% pur mantenendo oltre il 97% delle prestazioni di BERT, rendendolo adatto per attività come l'analisi del sentiment e il question answering su dispositivi consumer.
  2. Computer Vision su dispositivi Edge: Nella computer vision, un modello di grandi dimensioni e ad alta precisione per la classificazione di immagini o il rilevamento di oggetti può essere distillato in un modello più piccolo. Ciò consente di eseguire attività di visione complesse, come il rilevamento di persone in tempo reale per una telecamera di sicurezza intelligente, direttamente su hardware con potenza di calcolo limitata, come un Raspberry Pi, migliorando la velocità e la privacy dei dati. I modelli Ultralytics YOLO come YOLO11 possono far parte di tali flussi di lavoro, in cui la conoscenza derivante da modelli più grandi potrebbe informare l'addestramento di versioni più piccole e implementabili.

Distillazione della Conoscenza vs. Altre tecniche di ottimizzazione

La Distillazione della Conoscenza è correlata ma distinta da altre tecniche di ottimizzazione del modello. Comprendere le differenze è fondamentale per scegliere l'approccio giusto per il tuo progetto, che può essere gestito e implementato tramite piattaforme come Ultralytics HUB.

  • Model Pruning: Questa tecnica prevede la rimozione di connessioni ridondanti o meno importanti (pesi) da una rete già addestrata per ridurne le dimensioni. Al contrario, la distillation addestra da zero una rete completamente nuova e più piccola per imitare il modello teacher.
  • Model Quantization: La quantizzazione riduce la precisione numerica dei pesi del modello (ad esempio, da float a 32 bit a interi a 8 bit). Questo riduce le dimensioni del modello e può accelerare il calcolo su hardware compatibile. Altera la rappresentazione del modello esistente, mentre la distillation crea un nuovo modello. La quantizzazione viene spesso utilizzata in combinazione con la distillation o il pruning, e i modelli possono essere esportati in formati come ONNX o ottimizzati con motori come TensorRT.
  • Transfer Learning: Questo implica il riutilizzo di parti di un modello pre-addestrato (di solito il suo backbone per l'estrazione di caratteristiche) e quindi la sua messa a punto su un nuovo dataset più piccolo. L'obiettivo è adattare un modello esistente a un nuovo task. La distillazione, d'altra parte, mira a trasferire il comportamento predittivo di un teacher a un modello student, che può avere un'architettura completamente diversa.

Unisciti alla community di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora
Link copiato negli appunti