0% ont trouvé ce document utile (0 vote)
19 vues3 pages

Rapport Séance

Le rapport détaille une séance de travail sur la construction d'un modèle de régression linéaire à l'aide de la descente du gradient. Les étapes incluent la préparation des données, la modélisation, le calcul de la fonction coût, le gradient, et la visualisation des résultats. La séance a permis de comprendre la structure du modèle et de recommander une révision des formules et des exercices pratiques.

Transféré par

lydiennedongmo32
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
19 vues3 pages

Rapport Séance

Le rapport détaille une séance de travail sur la construction d'un modèle de régression linéaire à l'aide de la descente du gradient. Les étapes incluent la préparation des données, la modélisation, le calcul de la fonction coût, le gradient, et la visualisation des résultats. La séance a permis de comprendre la structure du modèle et de recommander une révision des formules et des exercices pratiques.

Transféré par

lydiennedongmo32
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Rapport de la séance de travail du 20/04/2025

Introduction
Le cours a commencé à 12h30. L’objectif principal était de construire et comprendre notre
premier modèle de machine learning : la régression linéaire, puis de l’améliorer à l’aide
d’un algorithme d’optimisation — la descente du gradient.

Étape 1 : Préparation des données (Indispensable)


Génération des données
Nous avons généré un jeu de données synthétique simulant une relation linéaire :
from sklearn . datasets import make_regression

X , Y = make_regression ( n_samples =100 , n_features =1 , noise =10)


Y = Y . reshape ( Y . shape [0] , 1)

Analogie : imaginez que vous observez la relation entre la température extérieure (X) et la
consommation d’énergie d’un chauffage (Y). Vous prenez 100 mesures pour voir s’il existe une
tendance linéaire.

Ajout du biais
Ajout d’une colonne de 1 à X pour introduire un biais (ordonnée à l’origine) :
X = np . hstack (( X , np . ones ( X . shape ) ) )

Cela permet de modéliser une fonction de la forme :

ŷ = a · x + b
où a est la pente et b le biais.

Étape 2 : Modélisation de la régression linéaire


Définition du modèle

def model (x , theta ) :


return x . dot ( theta )

Formellement :

ŷ = X · θ
 
a
où X ∈ Rm×2 , θ = .
b
Analogie : on utilise une règle pour estimer où tombera une bille si elle roule — la pente de
la règle représente a, et sa hauteur initiale b.

1
Étape 3 : Calcul de la fonction coût (MSE)
Fonction coût

def cost_function (x , y , theta ) :


m = len ( y )
return 1/(2* m ) * np . sum (( model (x , theta ) - y ) **2)

Formule mathématique :
m
1 X  (i) 2
J(θ) = ŷ − y (i)
2m
i=1
Analogie : comme mesurer l’écart entre des fléchettes et le centre d’une cible.

Étape 4 : Calcul du gradient

def gradient (x , y , theta ) :


m = len ( y )
return 1/ m * x . T . dot ( model (x , theta ) - y )

Formule mathématique :
1 T
∇J(θ) = X (ŷ − y)
m
Analogie : le gradient indique la direction dans laquelle descendre une pente pour atteindre
le minimum.

Étape 5 : Descente du gradient

def gradient_descent (x , y , theta , learning_rate , n_iterations ) :


cost_history = []
for i in range ( n_iterations ) :
theta = theta - learning_rate * gradient (x , y , theta )
cost_history . append ( cost_function (x , y , theta ) )
return theta , cost_history

Mise à jour :

θ := θ − α · ∇J(θ)
où α est le learning rate.
Analogie : c’est comme freiner ou accélérer en vélo sur une pente. Trop vite = danger, trop
lent = inefficace.

Étape 6 : Visualisation
Visualisation des données et du modèle :
plt . scatter ( X [: , 0] , Y . ravel () , label = " Data " )
plt . plot ( X [: , 0] , model (X , theta ) , color = " red " , label = " Model " )
plt . xlabel ( " x " )
plt . ylabel ( " y " )
plt . legend ()
plt . show ()

2
On observe ainsi la droite de régression ajustée aux données.

Conclusion et Recommandations
Cette séance nous a permis de :
— Comprendre la structure d’un modèle de régression linéaire
— Implémenter chaque étape : données, coût, gradient, apprentissage
— Visualiser la convergence du modèle
Recommandation : Relire attentivement les formules et exécuter les cellules du notebook
pour bien assimiler chaque concept.

Vous aimerez peut-être aussi