Trực quan hóa điểm cực tiểu của RSS
Trong bài tập này, bạn sẽ tính và trực quan hóa cách RSS thay đổi theo các giá trị tham số của mô hình. Bắt đầu bằng cách giữ nguyên hệ số chặn (intercept), nhưng thay đổi hệ số góc (slope): với mỗi giá trị slope, bạn sẽ tính giá trị mô hình và RSS tương ứng. Khi đã có một mảng các giá trị RSS, bạn sẽ xác định giá trị RSS nhỏ nhất bằng mã, và từ giá trị nhỏ nhất đó, suy ra slope tạo ra RSS tối thiểu.
Sử dụng sẵn các mảng dữ liệu x_data, y_data, và vùng chứa rỗng rss_list để bắt đầu.

Bài tập này là một phần của khóa học
Nhập môn Mô hình tuyến tính với Python
Hướng dẫn bài tập
- Với mỗi giá trị thử
a1tronga1_array, dùngmodel()để dự đoán giá trị mô hình, rồi dùngcompute_rss()vớiy_data, y_model, lưu đầu rarss_valuevàorss_list. - Chuyển
rss_listthànhnp.array(), sau đó dùngnp.min()để tìm giá trị nhỏ nhất trongrss_array. - Dùng
np.where()để tìm giá trị thử tương ứng và gán kết quả chobest_a1. - Dùng
plot_rss_vs_parameters()để xác nhận trực quan rằng các giá trị của bạn khớp với hình minh họa.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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)