`numpy` ile En Küçük Kareler
Aşağıdaki formüller, girişte tartışılan hesaplamanın (calculus) sonucu elde edilir. Bu egzersizde, hesabın doğru olduğuna güvenecek ve bu formülleri numpy kullanarak kodda uygulayacağız.
$$ a_{1} = \frac{ covariance(x, y) }{ variance(x) } $$ $$ a_{0} = mean(y) - a_{1} mean(x) $$
Bu egzersiz, kursun bir parçasıdır
Python ile Doğrusal Modellemenin Temelleri
Egzersiz talimatları
- Önceden yüklenmiş verilerden
x, yiki değişkeninin ortalamalarını ve sapmalarını hesapla. - En küçük kareler formüllerini tamamlamak için
np.sum()kullan ve bunlarıa0vea1için en iyi değerleri hesaplamakta kullan. model()fonksiyonunu kullanarak, bu en iyi eğim a1 ve kesişim a0 değerlerindeny_modelmodel çıktısını oluştur.- Bu en iyi modelin veriye uyumunu görsel olarak doğrulamak için, önceden tanımlı
compute_rss_and_plot_fit()fonksiyonunu kullan.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# 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)