Bắt đầu ngayBắt đầu miễn phí

Nội suy quá đà: Đi quá giới hạn

Trong bài này, chúng ta xem xét rủi ro của việc nội suy vượt phạm vi. Hình dưới là mặt cắt độ cao của một lối mòn trên núi. Một đoạn của lối mòn, tô đen, trông có vẻ tuyến tính và đã được dùng để xây dựng mô hình. Nhưng ta thấy đường hồi quy tốt nhất, tô đỏ, không còn phù hợp khi ra ngoài "miền" ban đầu, vì nó kéo dài sang dữ liệu mới ở bên ngoài, tô xanh.

Nếu muốn dùng mô hình để dự đoán độ cao nhưng vẫn chính xác trong một mức dung sai nào đó, thì giá trị nhỏ nhất và lớn nhất của biến độc lập x mà chúng ta có thể áp dụng mô hình là bao nhiêu?

Tại đây, hãy dùng sẵn x_data, y_data, y_model, và plot_data_model_tolerance() để hoàn thành lời giải của bạn.

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

Xem khóa học

Hướng dẫn bài tập

  • Dùng np.abs() để tính residuals là hiệu y_data - y_model.
  • Tìm giá trị .min().max() của x tại những điểm mà residuals nhỏ hơn tolerance = 100 mét.
  • Dùng np.min()np.max() để in ra khoảng (lớn nhất và nhỏ nhất) của các giá trị x_good.
  • Dùng hàm dựng sẵn plot_data_model_tolerance() để so sánh dữ liệu, mô hình, và khoảng các giá trị x_good nơi residuals < toleranceTrue.

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.

# Compute the residuals, "data - model", and determine where [residuals < tolerance]
residuals = np.abs(____ - ____)
tolerance = 100
x_good = x_data[____ < ____]

# Find the min and max of the "good" values, and plot y_data, y_model, and the tolerance range
print('Minimum good x value = {}'.format(np.____(____)))
print('Maximum good x value = {}'.format(np.____(____)))
fig = plot_data_model_tolerance(x_data, y_data, y_model, tolerance)
Chỉnh sửa và Chạy Mã