Una piccola nota minore sulla teoria vs. la pratica. Matematicamente possono essere stimati con la seguente formula:β0,β1,β2...βn
β^=(X′X)−1X′Y
dove sono i dati di input originali e è la variabile che vogliamo stimare. Ciò deriva dalla minimizzazione dell'errore. Lo proverò prima di fare un piccolo punto pratico.XY
Sia l'errore che la regressione lineare fa al punto . Poi:eii
ei=yi−yi^
L'errore al quadrato totale che commettiamo ora è:
∑i=1ne2i=∑i=1n(yi−yi^)2
Perché abbiamo un modello lineare sappiamo che:
yi^=β0+β1x1,i+β2x2,i+...+βnxn,i
Che può essere riscritto in notazione matrice come:
Y^=Xβ
Lo sappiamo
∑i=1ne2i=E′E
Vogliamo ridurre al minimo l'errore quadrato totale, in modo che la seguente espressione sia il più piccola possibile
E′E=(Y−Y^)′(Y−Y^)
Questo è uguale a:
E′E=(Y−Xβ)′(Y−Xβ)
La riscrittura può sembrare confusa ma deriva dall'algebra lineare. Si noti che le matrici si comportano in modo simile alle variabili quando le stiamo moltiplicando per alcuni aspetti.
Vogliamo trovare i valori di modo che questa espressione sia il più piccola possibile. Dovremo differenziare e impostare la derivata uguale a zero. Usiamo la regola della catena qui.β
dE′Edβ=−2X′Y+2X′Xβ=0
Questo da:
X′Xβ=X′Y
Tale che infine:
β=(X′X)−1X′Y
Quindi matematicamente sembra che abbiamo trovato una soluzione. C'è un problema però, ed è che è molto difficile da calcolare se la matrice è molto grande. Ciò potrebbe dare problemi di precisione numerica. Un altro modo per trovare i valori ottimali per in questa situazione è utilizzare un metodo di discesa gradiente. La funzione che vogliamo ottimizzare è illimitata e convessa, quindi in pratica dovremmo utilizzare un metodo gradiente. (X′X)−1Xβ