開始使用免費開始

外插:越界的風險

在本題中,我們要探討外插的風險。下圖顯示一座山上的健行步道高程剖面。其中有一段以黑色標示的路段看起來近似線性,並被用來建立模型。不過你會發現,紅色所示的最佳擬合直線在超出原始「定義域」後,無法貼合新的外部資料(藍色標示)。

如果我們想用這個模型來預測高度,且仍要在某個容許誤差範圍內保持準確,那麼可以套用模型的自變數 x 的最小與最大值各是多少?

在這裡,請使用預先載入的 x_datay_datay_model,以及 plot_data_model_tolerance() 來完成你的解答。

本練習屬於課程

Python 線性建模入門

檢視課程

練習說明

  • 使用 np.abs() 將殘差計算為 y_data - y_model 的差值。
  • 找出在 residuals 小於 tolerance = 100 公尺時對應的 x 值之 .min().max()
  • 使用 np.min()np.max() 印出 x_good 值的範圍(最大與最小)。
  • 使用預先定義的 plot_data_model_tolerance(),比較資料、模型,以及 residuals < toleranceTruex_good 的範圍。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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)
編輯並執行程式碼