`statsmodels` ile En Küçük Kareler
Bazı Python kütüphaneleri, modelin optimizasyon araçlarını her zaman bu kadar açıkça yönetmene gerek kalmadan kullanabileceğin kullanışlı, soyut arayüzler sağlar.
Örneğin, bu egzersizde, en küçük kareler optimizasyonunu (RSS'in en aza indirilmesi) kullanarak model kurmak için statsmodels kütüphanesini daha üst düzey, genelleştirilmiş bir iş akışında kullanacaksın.
Başlamana yardımcı olmak için, x_data, y_data = load_data() ile verileri önceden yükledik ve df = pd.DataFrame(dict(x_column=x_data, y_column=y_data)) kullanarak sütun adları x_column ve y_column olan bir pandas DataFrame'ine kaydettik.
Bu egzersiz, kursun bir parçasıdır
Python ile Doğrusal Modellemenin Temelleri
Egzersiz talimatları
formula="y_column ~ x_column"vedata=dfile birols()modeli kur ve ardından veriye.fit()et.model_fit.predict()kullanaraky_modeldeğerlerini elde et.- Verilen
plot_data_with_model()fonksiyonunu kullanaraky_datailey_model'i aynı grafikte göster. - Model parametre değerlerini
model_fit.paramsiçindena0vea1olarak çıkar. - Bu sonuçların
numpyile uygulanmış analitik formüllerle tutarlı olduğunu doğrulamak içincompute_rss_and_plot_fit()kullan.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Pass data and `formula` into ols(), use and `.fit()` the model to the data
model_fit = ols(____="y_column ~ x_column", ____=df).____()
# Use .predict(df) to get y_model values, then over-plot y_data with y_model
y_model = model_fit.____(df)
fig = plot_data_with_model(x_data, ____, ____)
# Extract the a0, a1 values from model_fit.params
a0 = model_fit.____['Intercept']
a1 = model_fit.____['x_column']
# Visually verify that these parameters a0, a1 give the minimum RSS
fig, rss = compute_rss_and_plot_fit(a0, a1)