ÎncepețiÎncepe gratuit

Metoda celor mai mici pătrate cu `numpy`

Formulele de mai jos sunt rezultatul calculelor diferențiale prezentate în introducere. În acest exercițiu, vom considera că acele calcule sunt corecte și vom implementa formulele în cod folosind numpy.

$$ a_{1} = \frac{ covariance(x, y) }{ variance(x) } $$ $$ a_{0} = mean(y) - a_{1} mean(x) $$

Acest exercițiu face parte din cursul

Introducere în modelarea liniară în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Calculează mediile și devierile celor două variabile x, y din datele preîncărcate.
  • Folosește np.sum() pentru a aplica formulele metodei celor mai mici pătrate și calculează valorile optime pentru a0 și a1.
  • Folosește model() pentru a construi valorile modelului y_model pe baza pantei optime a1 și a interceptului a0.
  • Folosește funcția predefinită compute_rss_and_plot_fit() pentru a confirma vizual că acest model optim se potrivește datelor.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# prepare the means and deviations of the two variables
x_mean = np.____(x)
y_mean = np.____(y)
x_dev = x - ____
y_dev = y - ____

# Complete least-squares formulae to find the optimal a0, a1
a1 = np.sum(____ * ____) / np.sum( np.square(____) )
a0 = ____ - (a1 * ____)

# Use the those optimal model parameters a0, a1 to build a model
y_model = model(x, ____, ____)

# plot to verify that the resulting y_model best fits the data y
fig, rss = compute_rss_and_plot_fit(a0, a1)
Editează și rulează codul