开始使用免费开始使用

外推:越界的风险

本练习将讨论外推的风险。图中展示了一条山地徒步路线的海拔剖面。路径中有一段(黑色部分)看起来近似线性,并据此建立了模型。但我们看到,最佳拟合直线(红色)在原始"定义域"之外并不适用,因为它延伸到了新的外部数据(蓝色部分)。

如果我们想用该模型来预测海拔,并且希望误差控制在一定公差范围内,那么自变量 x 的取值最小和最大分别是多少,才能保证我们仍可合理地应用该模型?

这里,请使用预加载的 x_datay_datay_modelplot_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)
编辑并运行代码