Fondamenti di regressione lineare

Nov 27 2022
Definizione La regressione lineare è una metodologia che ci permette di mettere in relazione due fenomeni. Questo approccio consente di identificare una regola basata su dati reali per prevedere nuovi valori.

Definizione

La regressione lineare è una metodologia che ci permette di mettere in relazione due fenomeni. Questo approccio consente di identificare una regola basata su dati reali per prevedere nuovi valori. Esistono algoritmi e pacchetti che eseguono la regressione lineare in modo semplice, ma non capiamo sempre cosa sta succedendo dietro le quinte. Lo scopo di questa presentazione è esporre i fondamenti matematici della regressione lineare.

Il metodo

Il metodo può essere suddiviso in tre fasi:

  • Vista iniziale dei dati;
  • Determinazione dei parametri;
  • Genera i parametri trovati della curva.

L'obiettivo di questo passaggio è verificare se i dati seguono un comportamento approssimativamente lineare. In caso contrario, il metodo della regressione lineare non dovrebbe essere applicato. Consideriamo il seguente set di date.

Possiamo tracciare questi dati e controllarne il comportamento. Nell'immagine sottostante possiamo vedere che il grafico mostra un comportamento lineare, pertanto l'applicazione della tecnica di regressione lineare è giustificata.

In questo repository ho fornito un codice python che genera un curve fitting usando la regressione lineare, come ho detto, le basi matematiche sono soppresse e non abbiamo idea di cosa succede internamente. Il codice genera l'immagine qui sotto.

Determinazione dei parametri

Per determinare i parametri a e b della curva, utilizzeremo il metodo dei minimi quadrati. In questo metodo i valori a e b sono ottenuti in modo tale che la somma dei quadrati delle differenze tra i valori osservati di Y e quelli ottenuti dalla curva aggiustata per gli stessi valori di X sia minima. Matematicamente questa idea può essere rappresentata come:

Per trovare la configurazione minima possiamo derivare l'espressione precedente rispetto ai parametri aeb e porla uguale a zero.

Sapendo che n è il numero di osservazioni, possiamo scrivere le equazioni (I) e (II) come equazioni (III) e (IV) come segue.

Per determinare il parametro b, dividiamo la prima equazione per n e isoliamo a per sostituirla nella seconda equazione:

Sostituendo nella seconda equazione:

Il coefficiente lineare della linea può essere facilmente determinato dall'equazione già definita sopra:

Possiamo calcolare questi parametri direttamente dai dati, senza usare il pacchetto scipy attraverso il codice qui sotto:

Infine, dopo aver ottenuto il coefficiente lineare a e il coefficiente angolare b, possiamo tracciare la curva di adattamento.