Introduction à la Régression Linéaire et Machine Learning

Introduction aux Types d'Apprentissage Automatique

  • On distingue trois categories principales dans le domaine de l'apprentissage automatique (Machine Learning) :   - Apprentissage supervise :     - Principe : On dispose de donnees pour lesquelles l'etiquette (ou label) associee est deja connue.     - Objectif : Creer un modele capable de predire l'etiquette pour de nouvelles donnees non etiquetees.     - Exemple 1 (Classification de spams) : Les donnees sont les contenus d'emails et l'etiquette est "spam""spam" ou "nonspam""non\,spam". Le programme apprend a classer tout nouvel email entrant.     - Exemple 2 (Large Language Model - LLM) : Les donnees sont constituees de textes. La tache consiste a predire le prochain mot d'un texte (le mot suivant fait office d'etiquette).   - Apprentissage non supervise :     - Principe : On possede des donnees sans aucune etiquette associee.     - Objectif : Identifier la structure sous-jacente des donnees ou les organiser en groupes similaires (clustering).     - Exemple : Classer les utilisateurs d'un site de vente en ligne en segments de profils similaires pour determiner quelle publicite est la plus efficace pour chaque groupe.   - Apprentissage par renforcement :     - Principe : L'algorithme apprend de ses propres actions en interagissant avec un environnement.     - Exemple : AlphaGo, qui apprend a jouer au jeu de Go en s'entraenant.

La Regression Lineaire : Concepts et Definitions Generales

  • Tache de regression vs. Classification :   - La regression cherche a predire des valeurs continues (exemple : un prix en euros).   - La classification cherche a predire des valeurs discretes (exemple : "spam""spam" ou "nonspam""non\,spam").
  • Structure des donnees d'entrainement :   - Une donnee d'entrainement est un couple (x,y)(\mathbf{x}, y).   - x\mathbf{x} represente la donnee (vecteur d'attributs).   - yy represente son label (la verite terrain).   - y^\hat{y} designe la prediction faite par le modele.
  • Formalisme mathematique :   - L'ensemble des donnees est note : Data={(x1,y1),(x2,y2),...,(xN,yN)}RD×C\text{Data} = \{(\mathbf{x}_1, y_1), (\mathbf{x}_2, y_2), ..., (\mathbf{x}_N, y_N)\} \subseteq \mathbb{R}^D \times C.   - D : La dimension des donnees, aussi appelee nombre d'attributs ou features. Chaque attribut correspond a une dimension.   - N : Le nombre total de donnees dans l'ensemble d'entrainement.   - C : L'espace des labels. Pour une regression, C=RC = \mathbb{R}. Pour une classification, CC est un ensemble fini de classes.   - X : Matrice des donnees de dimension (N,D)(N, D).   - Y : Vecteur des labels de dimension (N,1)(N, 1).   - xn,dx_{n,d} : Valeur de la feature dd pour la donnee nn.
  • Exemples d'application :   - Immobilier : Pour predire le prix d'une maison, on utilise des features comme la surface en m2m^2 (D=1D=1). Si l'on ajoute le quartier et le nombre de pieces, la dimension devient D=3D=3.   - Classification d'images (Chat/Chien) : Il s'agit d'une tache supervisee. La dimension DD correspond au nombre de pixels de chaque image (en noir et blanc). NN est le nombre total d'images etiquetees.

Modelisation de la Regression Lineaire

  • Objectif central : Trouver une fonction de prediction hh telle que h(x)h(\mathbf{x}) soit le plus proche possible du label reel yy.
  • Modele de regression lineaire :   - On suppose une relation lineaire entre les features x\mathbf{x} et les labels yy.   - Cas D=1D=1 (droite) : fθ(x)=θ0+θ1xf_{\theta}(x) = \theta_0 + \theta_1x.   - Cas general (hyperplan) : fθ(x)=θ0+i=1Dθixif_{\theta}(\mathbf{x}) = \theta_0 + \sum_{i=1}^D \theta_i x_i.   - Parametres : θ=(θ0,θ1,...,θD)\theta = (\theta_0, \theta_1, ..., \theta_D) sont les parametres que le modele doit apprendre.
  • Fonction de perte (Loss Function) :   - Elle mesure l'ecart entre les predictions y^n=fθ(xn)\hat{y}_n = f_{\theta}(\mathbf{x}_n) et les vraies valeurs yny_n.   - La methode utilisee ici est celle des moindres carres (Least Squared Error) :     - L(θ,X,Y)=1Nn=1N(fθ(xn)yn)2=1Nn=1N(y^nyn)2L(\theta, X, Y) = \frac{1}{N} \sum_{n=1}^N (f_{\theta}(\mathbf{x}_n) - y_n)^2 = \frac{1}{N} \sum_{n=1}^N (\hat{y}_n - y_n)^2
  • Optimisation :   - On cherche a minimiser cette perte en ajustant θ\theta, tandis que les donnees (X,Y)(X, Y) restent fixes.   - La valeur optimale est notee : θ=argminθ(L(θ,X,Y))\theta^* = \text{argmin}_{\theta} (L(\theta, X, Y))   - En regression lineaire, θ\theta^* peut etre calcule analytiquement de maniere exacte. Pour des modeles complexes, on utilise une methode approchee comme la descente de gradient.

La Methode de Descente de Gradient

  • Definition : C'est une methode d'optimisation numerique iterative permettant de trouver un minimum (local) d'une fonction objectif (la loss).
  • Formule de mise a jour :   - θθηθL(θ,X,Y)\mathbf{\theta} \leftarrow \mathbf{\theta} - \eta \cdot \nabla_{\theta} L(\mathbf{\theta}, X, Y)   - θL\nabla_{\theta} L est le gradient de la fonction de perte par rapport a θ\theta.   - η\eta est le pas d'iteration (ou pas d'apprentissage).
  • Calcul du gradient pour la regression lineaire :   - En utilisant la derivee de la forme (u2)=2uu(u^2)' = 2 \cdot u' \cdot u :   - Pour i0i \neq 0 (pentes) : Lθi=1Nn=1N2xn,i(y^nyn)\frac{\partial L}{\partial \theta_i} = \frac{1}{N} \sum_{n=1}^N 2 \cdot x_{n,i}(\hat{y}_n - y_n)   - Pour i=0i = 0 (ordonnee a l'origine) : Lθ0=1Nn=1N2(y^nyn)\frac{\partial L}{\partial \theta_0} = \frac{1}{N} \sum_{n=1}^N 2(\hat{y}_n - y_n)   - Forme vectorisee du gradient :     - θL=2Nn=1Nxn(y^nyn)\nabla_{\theta} L = \frac{2}{N} \sum_{n=1}^N \mathbf{x}_n(\hat{y}_n - y_n) en definissant xn=(1,xn,1,...,xn,D)\mathbf{x}_n = (1, x_{n,1}, ..., x_{n,D}).     - De maniere compacte : θL=2NX(Xθy)\nabla_{\theta} L = \frac{2}{N} X^{\top}(X\mathbf{\theta} - \mathbf{y})   - Note sur l'intercept : L'ajout d'une valeur 11 systematique au vecteur de donnees est une pratique repandue car elle simplifie l'optimisation en incluant directement le parametre θ0\theta_0 ("l'intercept") dans le calcul matriciel.

Gestion du Pas d'Apprentissage (Learning Rate)

  • Impact de la valeur de η\eta :   - Si η\eta est trop grand : Les ajustements de θ\theta sont trop brutaux (sauts importants), ce qui empeche la convergence vers le minimum.   - Si η\eta est trop faible : La vitesse de convergence est excessivement lente.
  • Strategies et evolution :   - Approche historique (heuristiques manuelles) : On pouvait choisir un pas decroissant, par exemple η=Ct\eta = \frac{C}{t}, ou CC est une constante et tt le numero de l'iteration.   - Algorithmes modernes : Les methodes d'optimisation sont aujourd'hui plus sophistiquees.     - Adagrad : Une methode tres populaire.     - Adam : La methode la plus couramment utilisee a l'heure actuelle.