Che cos'è la regressione?

Completato

La regressione funziona stabilendo una relazione tra le variabili nei dati che rappresentano le caratteristiche dell'elemento che si sta osservando e la variabile che si sta tentando di predire, nota come etichetta.

Tenere sempre presente la società di noleggio di biciclette che vuole stimare il numero previsto di noleggi in un determinato giorno. In questo caso, le caratteristiche includono elementi come il giorno della settimana, il mese e così via, mentre l'etichetta è il numero di noleggi di biciclette.

Per eseguire il training del modello, si inizia con un esempio di dati contenente le caratteristiche e i valori noti per l'etichetta; quindi, in questo caso sono necessari dati cronologici che includano date, condizioni meteorologiche e il numero di noleggi di biciclette.

Quindi questo campione di dati verrà suddiviso in due subset:

  • Un set di dati di training a cui verrà applicato un algoritmo che determina una funzione che incapsula la relazione tra i valori delle caratteristiche e i valori delle etichette note.
  • Un set di dati di convalida o di test che è possibile usare per valutare il modello usandolo per generare stime per l'etichetta e confrontarle con i valori di etichetta effettivi noti.

L'uso di dati cronologici con valori di etichetta noti per eseguire il training di un modello fa della regressione un esempio di Machine Learning con supervisione.

Un esempio semplice

Ecco un semplice esempio per vedere come funziona in linea di principio il processo di training e valutazione. Si supponga di semplificare lo scenario in modo da usare una singola caratteristica, ossia la temperatura media giornaliera, per predire l'etichetta noleggi di biciclette.

Si inizierà con alcuni dati che includono valori noti per la caratteristica di temperatura media giornaliera e l'etichetta di noleggi di biciclette.

Temperatura Noleggi
56 115
61 126
67 137
72 140
76 152
82 156
54 114
62 129

Si selezioneranno ora in modo casuale cinque di queste osservazioni, che verranno usate per eseguire il training di un modello di regressione. Quando si parla di "training di un modello" si intende l'azione di trovare una funzione (un'equazione matematica, definita con la lettera f) che possa usare la caratteristica temperatura (definita con x) per calcolare il numero di noleggi (definito con y). In altre parole, è necessario definire la funzione seguente: f(x) = y.

Il set di dati di training avrà il seguente aspetto:

x y
56 115
61 126
67 137
72 140
76 152

Per iniziare, tracciare i valori di training per x e y su un grafico:

Chart showing training features plotted against labels.

A questo punto è necessario adattare questi valori a una funzione, lasciando spazio a una variazione casuale. Probabilmente si noterà che i punti tracciati formano una linea diagonale quasi diritta; in altre parole, esiste una relazione lineare evidente tra x e y, quindi è necessario trovare una funzione lineare che rappresenti la scelta migliore per il campione di dati. È possibile usare diversi algoritmi per determinare questa funzione, che alla fine troverà una linea retta con una minima varianza complessiva dai punti tracciati, nel seguente modo:

Chart showing training features plotted against labels with a regression line.

La linea rappresenta una funzione lineare che può essere usata con qualsiasi valore x per applicare la pendenza della linea e la relativa intercetta (dove la linea incrocia l'asse y quando x è 0) per calcolare y. In questo caso, se si estendesse la retta verso sinistra, si noterebbe che quando x è 0, y è circa a 20 e l'inclinazione della retta è tale che per ogni unità in cui x si sposta verso destra, y aumenta di circa 1,7. È quindi possibile calcolare la funzione fcome 20 + 1,7x.

Ora che è stata definita la funzione predittiva, è possibile usarla per stimare le etichette per i dati di convalida mantenuti e confrontare i valori stimati (che in genere si indicano con il simbolo o "y-hat") con i valori y noti effettivi.

x y
82 156 159,4
54 114 111,8
62 129 125,4

Si veda ora il confronto dei valori y e ŷ in un tracciato:

Chart showing validation features plotted against predicted and actual labels.

I punti tracciati che si trovano nella linea della funzione sono i valori stimati, calcolati dalla funzione, mentre gli altri punti tracciati sono i valori y effettivi.

Esistono diversi modi in cui è possibile misurare la varianza tra i valori predetti ed effettivi ed è possibile usare queste metriche per valutare la qualità di predizione del modello.

Nota

Il Machine Learning si basa sulla statistica e sulla matematica ed è importante conoscere i termini specifici usati dagli statistici e dai matematici, e quindi dagli scienziati dei dati. È possibile considerare la differenza tra un valore di etichetta stimato e il valore effettivo dell'etichetta come misura di errore. In pratica, tuttavia, i valori "effettivi" sono basati su osservazioni campione (che possono esse stesse essere soggette a una varianza casuale). Per chiarire che si sta confrontando un valore stimato () con un valore osservato (y), la differenza tra di essi viene chiamata residui. È possibile riepilogare i residui per tutte le stime dei dati di convalida per calcolare la perdita complessiva del modello come misura delle prestazioni predittive.

Uno dei modi più comuni per misurare la perdita consiste nell'elevare al quadrato i singoli residui, sommare i quadrati e calcolare la media. L'elevazione al quadrato dei residui ha l'effetto di basare il calcolo su valori assoluti (tralasciando se la differenza sia negativa o positiva) e assegnando maggiore peso alle differenze più grandi. Questa metrica si chiama errore quadratico medio.

Per i dati di convalida, il calcolo ha il seguente aspetto:

y y - ŷ (y - ŷ)2
156 159,4 3,4 11,56
114 111,8 2.2 4,84
129 125,4 3.6 12,96
Sum 29,36
Media 9,79

Quindi, la perdita del modello basata sulla metrica dell'errore quadratico medio è 9,79.

Si tratta quindi di una stima affidabile? È difficile stabilirlo, poiché il valore dell'errore quadratico medio non è espresso in un'unità di misura significativa. Si sa che più basso è il valore, minore è la perdita del modello; e pertanto maggiore sarà la sua prestazione predittiva. Si tratta di una metrica utile per confrontare due modelli e individuare quello con le prestazioni migliori.

In alcuni casi, è più utile esprimere la perdita nella stessa unità di misura del valore dell'etichetta stimato, in questo caso il numero di noleggi. È possibile eseguire questa operazione calcolando la radice quadrata dell'errore quadratico medio, che produce una metrica nota, prevedibilmente, come radice errore quadratico medio (RMSE).

√9,79 = 3,13

Quindi, la radice errore quadratico medio del modello indica che la perdita è appena oltre 3, il che con un'interpretazione generica può significare che in media le stime non corrette sono sbagliate di circa 3 noleggi.

Sono disponibili molte altre metriche che possono essere usate per misurare la perdita in una regressione. Ad esempio, R2 (R al quadrato) (talvolta noto come coefficiente di determinazione) è la correlazione tra x e y al quadrato. Questo produce un valore compreso tra 0 e 1 che misura la quantità di varianza spiegabile dal modello. In genere, più vicino questo valore è a 1, migliore sarà la prestazione predittiva del modello.