Scendere in ML: allenamento e perdita

Addestrare un modello significa semplicemente imparare (a determinare) i valori validi per tutte le ponderazioni e il bias degli esempi etichettati. Nell'apprendimento supervisionato, un algoritmo di machine learning crea un modello esaminando molti esempi e cercando di trovare un modello che riduca al minimo la perdita; questo processo è chiamato minimizzazione del rischio empirico.

La perdita è una sanzione per una previsione errata. In altre parole, loss è un numero che indica la cattiva qualità della previsione del modello su un singolo esempio. Se la previsione del modello è perfetta, la perdita è pari a zero; in caso contrario, la perdita è maggiore. L'obiettivo di addestrare un modello è trovare un insieme di pesi e bias che abbiano una bassa perdita, in media, per tutti gli esempi. Ad esempio, la Figura 3 mostra un modello con perdita elevata a sinistra e un modello con perdita bassa a destra. Tieni presente quanto segue in merito alla figura:

  • Le frecce rappresentano la perdita.
  • Le linee blu rappresentano le previsioni.

Due grafici cartesiani, ciascuno con una linea e alcuni punti dati. Nel primo grafico, la linea è adatta ai dati, quindi la perdita è elevata. Nel secondo grafico, la linea è più adatta ai dati, pertanto la perdita è bassa.

Figura 3. Elevata perdita nel modello di sinistra; bassa perdita nel modello di destra.

 

Noterai che le frecce nel grafico a sinistra sono molto più lunghe delle rispettive controparti nel grafico a destra. È evidente che la linea nel grafico a destra è un modello predittivo molto migliore rispetto alla linea nel grafico a sinistra.

Forse ti starai chiedendo se puoi creare una funzione matematica, una funzione di perdita, che aggrega le singole perdite in modo significativo.

I modelli di regressione lineare che esamineremo qui utilizzano una funzione di perdita chiamata perdita al quadrato (nota anche come L2 perdita). La perdita al quadrato per un singolo esempio è la seguente:

  = the square of the difference between the label and the prediction
  = (observation - prediction(x))2
  = (y - y')2

Errore quadrato medio (MSE) è la perdita media quadrata per esempio sull'intero set di dati. Per calcolare il valore MSE, somma tutte le perdite al quadrato per singoli esempi, quindi dividi per il numero di esempi:

$$ MSE = \frac{1}{N} \sum_{(x,y)\in D} (y - prediction(x))^2 $$

dove:

  • \((x, y)\) è un esempio in cui
    • \(x\) è l'insieme di funzionalità (ad esempio cicalini/minuto, età, genere) che il modello utilizza per le previsioni.
    • \(y\) è l'etichetta dell'esempio (ad esempio, la temperatura).
  • \(prediction(x)\) è una funzione delle ponderazioni e dei bias in combinazione con l'insieme di funzionalità \(x\).
  • \(D\) è un set di dati contenente molti esempi etichettati, che sono \((x, y)\) coppie.
  • \(N\) è il numero di esempi in \(D\).

Sebbene la MSE sia comunemente utilizzata nel machine learning, non è l'unica funzione di perdita pratica né la migliore funzione di perdita per tutte le circostanze.