Dato un set di dati D={(X1,Y2),…,(XN,YN)} come Xi e Yi sono continui. L'obiettivo della "regressione lineare" è trovare la linea migliore che si adatta a questi dati.
In altre parole, vogliamo creare il modello:
y^=a∗0+a∗1.x∗1+⋯+a∗p.x_p
dove p è il numero di dimensioni della variabile X.
In questo articolo vedremo come risolvere questo problema in tre scenari:
Quando X è unidimensionale, ovvero p=1.
Quando X è multidimensionale cioè p>1.
Utilizzando la discesa del gradiente.
X è unidimensionale (minimo quadrato ordinario)
Il modello che vogliamo creare è di forma:
y^=a∗0+a∗1.x
Ricorda che l'obiettivo della regressione lineare è trovare la linea che meglio si adatta ai dati. In altre parole, dobbiamo ridurre al minimo la distanza tra i punti dati e la linea.
(a∗0^,a∗1^)=(a∗0,a∗1)argmin∑∗i=1N(y∗i−y∗i^)2
=(a∗0,a∗1)argmin∑∗i=1N(y∗i−(a∗0+a∗1.x∗i))2
Mettiamo:
L=∑∗i=1N(y∗i−(a∗0+a∗1.x_i))2
Per trovare il minimo dobbiamo risolvere le seguenti equazioni:
In questo caso, Xi non è più un numero reale, ma è invece un vettore di dimensione p:
X∗i=(X∗i1,X∗i2,…,X∗ip)
Quindi, il modello è scritto come segue:
y^=a∗0+a∗1x∗1+a∗2x∗2+⋯+a∗px_p
oppure può essere scritto in formato matriciale:
Y^=X.W
Dove:
Y ha la forma (N,1).
X ha la forma (N,p).
W ha la forma (p,1): questo è il vettore dei parametri (w1,w2,…,wp).
Analogamente al primo caso, miriamo a minimizzare la seguente quantità:
W^=Wargmin∑∗i=1N(y∗i−y_i^)2
Ancora una volta mettiamo:
L=∑∗i=1N(y∗i−y_i^)2
=(Y−XW)T(Y−XW)
=YTY−YTXW−WTXTY+WTXTXW
=YTY−2WTXTY+WTXTXW
Poiché vogliamo minimizzare L rispetto a W, allora possiamo ignorare il primo termine "YTY" perché è indipendente da W e risolviamo la seguente equazione:
∂W∂(−2WTXTY+WTXTXW)=0
−2XTY+2XTXW^=0
W^=(XTX)−1XTY
Utilizzando la discesa del gradiente
Ecco la formulazione dell'algoritmo di discesa del gradiente:
w∗n+1=w∗n−lr×∂w_n∂f
Adesso non resta che applicarlo sui due parametri a0 e a1 (nel caso di una variabile X):
Dedicati e concentrati su di voi. Vi aiutiamo a capire, sfruttare e mettere in mostra le vostre nuove e potenti competenze attraverso la revisione del curriculum, la pratica dei colloqui e le discussioni sul settore.