RÉGRESSION / 06 · EXERCICE
Une classe RegressionLineaire
La classe rassemble l’apprentissage et la prédiction. Chaque instance conserve ses propres paramètres.
__init__ prépare les attributs. fit calcule self.a et self.b à partir des données reçues ; predict réutilise ces attributs. Les moyennes doivent être calculées dans fit, sans dépendre de variables d’un exercice précédent.
Exemple expliqué
- 1
def __init__(self): self.a = None self.b = NoneAucun paramètre appris avant fit.
- 2
x_bar = np.mean(x) y_bar = np.mean(y) denom = np.sum((x-x_bar)**2) self.a = np.sum((x-x_bar)*(y-y_bar)) / denom self.b = y_bar - self.a*x_barCalculs à reprendre dans fit. np.asarray accepte des listes et des tableaux ; un dénominateur nul doit être signalé.
- 3
return self.a*np.asarray(x) + self.bExpression renvoyée par predict. self désigne l’instance courante.
- 4
model = RegressionLineaire() model.fit(x, y) y_hat = model.predict(x)Instanciation, apprentissage, puis prédiction. return self à la fin de fit permet aussi de chaîner les appels.
Code à compléter
Écrire la classe avec __init__, fit et predict ; ajuster model sur CO₂, puis afficher ses coefficients et les premières prédictions.
Saisie autonome · crédit complet après réussite
Le résultat apparaîtra ici.
Session Python
Les variables restent disponibles entre les pages. Un rechargement efface les variables ; le code et l’utilisation de l’aide restent enregistrés dans cet onglet.