Loss Function

[loss fànction]

Funzione che misura quanto il modello sta sbagliando. Tutto il training serve a minimizzarla. Se sbagli loss, sbagli tutto.

La loss function (in italiano: funzione di perdita o costo) è il modo in cui dici al modello "ecco quanto stai sbagliando". Tutto il gradient descent esiste per minimizzarla. Senza loss, niente training.

Loss tipiche per problema:

  • Cross-entropy: standard per classificazione e per addestrare gli LLM. Penalizza sicurezze su risposte sbagliate.
  • Mean Squared Error (MSE): per regressione, dove l'output è un numero. Semplice, ma sensibile agli outlier.
  • Mean Absolute Error (MAE): come MSE ma con errore assoluto. Più robusta agli outlier.
  • Hinge loss: classico delle SVM, ancora usato per certi compiti.
  • Contrastive loss / Triplet loss: per imparare embedding, distinguere coppie simili da coppie diverse.
  • KL divergence: misura distanza tra distribuzioni di probabilità. Usata in VAE e nel training RL degli LLM (vedi RLHF).

Nei modelli reali si combinano più loss. Esempio: nei VAE c'è una reconstruction loss + KL divergence. Nei modelli di rilevamento oggetti c'è classification loss + bounding box loss.

Punto cruciale: la loss che minimizzi NON è sempre quello che ti interessa davvero. Esempio: addestri un classificatore minimizzando cross-entropy, ma tu vuoi alta precision. Spesso bisogna scegliere loss che approssimano il vero obiettivo o usare metriche diverse per la valutazione (vedi precision e recall).

Quando la loss esplode o non scende, il problema sta nella loss, nel learning rate, o nei dati. In questo ordine.