Distillazione Della Conoscenza: differenze tra le versioni

Da Wiki AI.
Nessun oggetto della modifica
Riga 1: Riga 1:
* '''Nome''': Knowledge Distillation
Nome: [[Nome::Knowledge Distillation]]


La '''distillazione della conoscenza''' è il processo di trasferimento della conoscenza da un modello di grandi dimensioni ad uno più piccolo.
La '''distillazione della conoscenza''' è il processo di trasferimento della conoscenza da un modello di grandi dimensioni ad uno più piccolo.

Versione delle 13:42, 10 apr 2024

Nome: Knowledge Distillation

La distillazione della conoscenza è il processo di trasferimento della conoscenza da un modello di grandi dimensioni ad uno più piccolo.

Originariamente introdotto nel 2006 nel contesto dei modelli di ensemble, è stato successivamente reso popolare in un famoso paper del 2015 che ha generalizzato il metodo di reti neurali profonde.

Knowledge Distillation per il Fine-Tuning

Nel contesto dell'apprendimento automatico, specialmente nell'addestramento supervisionato come il fine-tuning, la distillazione della conoscenza è un metodo per trasferire l'informazione da un modello "insegnante" grande e complesso a un modello "studente" più piccolo e meno complesso. L'idea principale è quella di arricchire le etichette di verità fondamentale con una distribuzione di "soft probabilities" fornite dall'insegnante, che offrono informazioni complementari da cui lo studente può imparare. Ad esempio, se un classificatore basato su BERT assegna alte probabilità a più intenti, questo potrebbe indicare che questi intenti sono vicini l'uno all'altro nello spazio delle caratteristiche. Addestrando lo studente a imitare queste probabilità, l'obiettivo è di distillare parte di questa "dark knowledge" che l'insegnante ha appreso, ossia conoscenze non disponibili solo dalle etichette.

Matematicamente, questo processo funziona come segue: si fornisce una sequenza di input x all'insegnante per generare un vettore di logits x = [z1x, ..., zNx]. Questi logits possono essere convertiti in probabilità applicando una funzione softmax.



Tuttavia, spesso l'insegnante assegna una probabilità alta ad una classe, rendendo le probabilità delle altre classi vicine a zero, e quindi non fornendo molte informazioni aggiuntive rispetto alle etichette di verità fondamentale. Per questo, si "addolciscono" le probabilità scalando i logits con un iperparametro di temperatura T prima di applicare la softmax.



Valori più alti di T producono una distribuzione di probabilità più morbida sulle classi e rivelano più informazioni sul confine decisionale che l'insegnante ha appreso per ogni esempio di addestramento.

Figura1. Confronto tra un'etichetta rigida codificata in one-hot (sinistra), probabilità softmax (centro) e probabilità di classe addolcite (destra)

Links

Distilling the Knowledge in a Neural Network (2015)