MulaiMulai sekarang secara gratis

Memvisualisasikan Minimum RSS

Dalam latihan ini Anda akan menghitung dan memvisualisasikan bagaimana RSS berubah untuk berbagai nilai parameter model. Mulailah dengan menahan intercept tetap, lalu variasikan slope; untuk setiap nilai slope, Anda akan menghitung nilai model, dan RSS yang dihasilkan. Setelah Anda memiliki array nilai RSS, Anda akan menentukan nilai RSS minimum dalam kode, dan dari minimum tersebut, menentukan slope yang menghasilkan RSS minimum.

Gunakan array data yang sudah dimuat x_data, y_data, dan wadah kosong rss_list untuk memulai.

Latihan ini adalah bagian dari kursus

Pengantar Pemodelan Linear di Python

Lihat Kursus

Petunjuk latihan

  • Untuk setiap nilai uji a1 dalam a1_array, gunakan model() untuk memprediksi nilai model, lalu compute_rss() dengan y_data, y_model, simpan keluaran rss_value ke dalam rss_list.
  • Ubah rss_list menjadi np.array(), lalu gunakan np.min() untuk menemukan nilai minimum di rss_array.
  • Gunakan np.where() untuk menemukan nilai uji yang bersesuaian dan tetapkan hasilnya ke best_a1.
  • Gunakan plot_rss_vs_parameters() untuk memastikan secara visual bahwa nilai Anda sesuai dengan gambar yang ditampilkan.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Loop over all trial values in a1_array, computing rss for each
a1_array = np.linspace(15, 35, 101)
for a1_trial in a1_array:
    y_model = model(x_data, a0=150, a1=____)
    rss_value = compute_rss(y_data, ____)
    rss_list.append(____)

# Find the minimum RSS and the a1 value from whence it came
rss_array = np.array(____)
best_rss = np.min(____) 
best_a1 = a1_array[np.where(rss_array==____)]
print('The minimum RSS = {}, came from a1 = {}'.format(best_rss, best_a1))

# Plot your rss and a1 values to confirm answer
fig = plot_rss_vs_a1(a1_array, rss_array)
Edit dan Jalankan Kode