Aller au contenu principal

Régression avec une unité linéaire

Une unité linéaire prédit un nombre réel par une combinaison affine des entrées. Cette note dérive ses gradients de perte quadratique ; elle n’utilise ni l’activation à seuil ni la mise à jour déclenchée par les erreurs du perceptron classique.

Une unité linéaire pour la régression

L’entraînement ajuste poids et biais pour minimiser la perte choisie. C’est exactement la régression linéaire, pas un modèle biologique du neurone. Le manuel Dive into Deep Learning emploie la même sortie linéaire et la même convention de demi-perte quadratique.

Représentation mathématique

Étant données des entrées x1,x2,...,xnx_1, x_2, ..., x_n avec les poids correspondants w1,w2,...,wnw_1, w_2, ..., w_n et un terme de biais bb, la sortie y^\hat{y} de l’unité linéaire est donnée par :

y^=i=1nwixi+b\hat{y} = \sum_{i=1}^n w_i x_i + b

Cette sortie peut être utilisée pour des prédictions dans des problèmes de régression linéaire, où y^\hat{y} peut représenter la valeur prédite d'une variable dépendante, telle que le prix d'une maison.

Fonction de perte

Une perte courante en régression est l’erreur quadratique moyenne (MSE). Nous en utilisons ici la moitié pour simplifier les dérivées :

L(y,y^)=12Ni=1N(yiy^i)2L(y, \hat{y}) = \frac{1}{2N} \sum_{i=1}^{N} (y_i - \hat{y}_i)^2

yiy_i est la valeur réelle, y^i\hat{y}_i est la valeur prédite, et NN est le nombre d'échantillons.

Descente de gradient

Algorithme de descente de gradient

Pour minimiser la fonction de perte, la descente de gradient met à jour les paramètres comme suit :

  • wi(new)=wi(old)αLwiw_i^{(new)} = w_i^{(old)} - \alpha \frac{\partial L}{\partial w_i}
  • b(new)=b(old)αLbb^{(new)} = b^{(old)} - \alpha \frac{\partial L}{\partial b}

α\alpha représente le taux d'apprentissage, un hyperparamètre qui contrôle la taille des pas au cours du processus d'optimisation.

Calcul des dérivées

Les règles de mise à jour reposent sur le calcul des dérivées de la fonction de perte par rapport à chaque paramètre. Ces dérivées sont obtenues à l'aide de la règle de la chaîne pour la dérivation. Pour un modèle avec une fonction de perte quadratique simple (L=12(yy^)2L = \frac{1}{2}(y - \hat{y})^2), les dérivées sont les suivantes :

Dérivée de la fonction de perte par rapport aux prédictions

dLdy^=(yy^)\frac{dL}{d\hat{y}} = - (y - \hat{y})

Dérivées partielles des prédictions

  • Par rapport au biais (bb) :
dy^db=1\frac{d\hat{y}}{db} = 1
  • Par rapport au poids (w1w_1) :
dy^dw1=x1\frac{d\hat{y}}{dw_1} = x_1
  • Par rapport au poids (w2w_2) :
dy^dw2=x2\frac{d\hat{y}}{dw_2} = x_2

Application de la règle de la chaîne

La règle de la chaîne est appliquée pour calculer le gradient de la fonction de perte par rapport à chaque paramètre :

  • Pour le biais (bb) :
dLdb=dLdy^dy^db=(yy^)\frac{dL}{db} = \frac{dL}{d\hat{y}} \cdot \frac{d\hat{y}}{db} = - (y - \hat{y})
  • Pour le poids (w1w_1) :
dLdw1=dLdy^dy^dw1=(yy^)x1\frac{dL}{dw_1} = \frac{dL}{d\hat{y}} \cdot \frac{d\hat{y}}{dw_1} = - (y - \hat{y}) \cdot x_1
  • Pour le poids (w2w_2) :
dLdw2=dLdy^dy^dw2=(yy^)x2\frac{dL}{dw_2} = \frac{dL}{d\hat{y}} \cdot \frac{d\hat{y}}{dw_2} = - (y - \hat{y}) \cdot x_2

Règles de mise à jour

En réintégrant les dérivées dans la formule de descente de gradient, les paramètres sont mis à jour de manière itérative :

  • w1(new)=w1(old)α[(yy^)x1]w_1^{(new)} = w_1^{(old)} - \alpha \cdot [ - (y - \hat{y}) \cdot x_1 ]
  • w2(new)=w2(old)α[(yy^)x2]w_2^{(new)} = w_2^{(old)} - \alpha \cdot [ - (y - \hat{y}) \cdot x_2 ]
  • b(new)=b(old)α[(yy^)]b^{(new)} = b^{(old)} - \alpha \cdot [ - (y - \hat{y}) ]

Par l'application répétée de ces mises à jour, la descente de gradient vise à converger vers les valeurs optimales de w1,w2,w_1, w_2, et bb qui minimisent la fonction de perte, conduisant à un modèle avec une erreur de prédiction minimisée.

Conclusion

La règle de la chaîne sépare la dérivée de la perte de celle de la prédiction. Ce schéma s’étend aux réseaux non linéaires, tandis que ce modèle reste affine en ses entrées.

D’un exemple à un lot

Le facteur 1/21/2 fait de la perte affichée la moitié de la MSE ; il annule le 22 provenant de la dérivée du carré. Pour un indice d’exemple ii et un indice de caractéristique jj, posons ri=y^iyir_i=\hat y_i-y_i. Les gradients sur le lot complet sont

Lwj=1Nirixij,Lb=1Niri.\frac{\partial L}{\partial w_j}=\frac1N\sum_i r_i x_{ij},\qquad \frac{\partial L}{\partial b}=\frac1N\sum_i r_i.

Les formules scalaires précédentes correspondent à N=1N=1. Avec x=(2,1)x=(2,-1), y=3y=3 et tous les paramètres initialement nuls, r=3r=-3, donc (L/w1,L/w2,L/b)=(6,3,3)(\partial L/\partial w_1,\partial L/\partial w_2,\partial L/\partial b)=(-6,3,-3). Pour α=0.1\alpha=0.1, la mise à jour simultanée donne (w1,w2,b)=(0.6,0.3,0.3)(w_1,w_2,b)=(0.6,-0.3,0.3). La prédiction devient 1.81.8 et la demi-perte quadratique passe de 4.54.5 à 0.720.72.

Pour un lot, moyenner les gradients calculés aux mêmes paramètres avant la mise à jour. À caractéristiques fixes, cet objectif quadratique est convexe, mais l’unicité des poids exige une matrice de conception de rang colonne plein. Un pas adapté reste nécessaire pour converger. Une unité linéaire seule ne représente pas des relations non linéaires arbitraires, et une faible perte d’entraînement ne prouve pas la qualité des prédictions sur de nouvelles données.

Explorer les liensOuvrir le réseau