Regolarizzazione per semplicità

Regolarizzazione significa penalizzare la complessità di un modello per ridurre l'overfitting.

Regolarizzazione per semplicità

La funzione di perdita per il set di addestramento si riduce gradualmente. Al contrario, la funzione di perdita per l'insieme di convalida declina, ma poi inizia ad aumentare.
  • Vogliamo evitare la complessità del modello, ove possibile.
  • Possiamo integrare questa idea nell'ottimizzazione che effettuiamo durante la formazione.
  • Minimizzazione del rischio empirico:
    • punta a un basso errore di addestramento
    • $$ \text{minimize: } Loss(Data\;|\;Model) $$

  • Vogliamo evitare la complessità del modello, ove possibile.
  • Possiamo integrare questa idea nell'ottimizzazione che effettuiamo durante la formazione.
  • Minimizzazione del rischio strutturale:
    • punta a un basso errore di addestramento
    • e, al contempo, bilanciare la complessità
    • $$ \text{minimize: } Loss(Data\;|\;Model) + complexity(Model) $$

  • Come definire la complessità(modello)?
  • Come definire la complessità(modello)?
  • Preferisci pesi più piccoli
  • Come definire la complessità(modello)?
  • Preferisci pesi più piccoli
  • La divergenza dovrebbe comportare un costo
  • Puoi codificare questa idea tramite la regolarizzazione L2 (ovvero dorsale)
    • complexity(model) = somma dei quadrati delle ponderazioni
    • Penalizza pesi davvero pesanti
    • Per i modelli lineari: preferisce pendenze più piane
    • Direzione bayesiana:
      • le ponderazioni devono essere centrate intorno a zero
      • i pesi dovrebbero essere distribuiti normalmente

$$ Loss(Data|Model) + \lambda \left(w_1^2 + \ldots + w_n^2 \right) $$

\(\text{Where:}\)

\(Loss\text{: Aims for low training error}\) \(\lambda\text{: Scalar value that controls how weights are balanced}\) \(w_1^2+\ldots+w_n^2\text{: Square of}\;L_2\;\text{norm}\)