# Linear Regression - 1 poids par input - Représentation vectorielle : $ŷ = h_{{\theta}}(x) = \theta \cdot x$ - $h_{\theta}$ = fonction d'apprentissage - $\theta$ = vecteur à apprendre Usage de la RMSE à optimiser ## Equation Normale $\hat{\theta} = (X^TX)^{-1}X^TX$ Pseudo inverse ## Decomposition en valeur singulière (SVD) $X \rightarrow U\Sigma V^T$ et $X^+ = V\Sigma^+ U^T$ ## Complexités Eq normale : $O(n^2.4) \approx O(n^3)$ SVD : $O(n^2)$ # Descente de Gradient -> Recherche de minimum Part d'un vecteur initialisé aléatoirement Calcul de la dérivée de $f(\theta)$ (MSE par exemple) $\theta' = \theta - \alpha f'(\theta)$ $\alpha$ = learning rate Si $\alpha$ est trop petit : convergence trop lente Si $\alpha$ est trop grand : risque de "saut de vallée" et divergence De toute façon risque de tomber dans un minimum local Normalisation capitale pour la descente de gradient Bien mieux que SVD et Normale GridSearch pour trouver un bon learning rate limiter le nombre d'époques pour éviter la convergence trop lente Set le nombre d'époques grand mais interrompre si $\nabla$ très petit $O\left( \frac{1}{\epsilon} \right)$