开始使用免费开始使用

评估 KNN 表现

我们刚刚观察了 KNN 分数的一些现象。首先,训练集分数一开始很高,并且随着 n 增大而下降,这是常见情况。不过,测试集性能在 5 达到峰值,因此我们将在最终的 KNN 模型中使用该设置。

与前面多次所做的一样,我们将通过可视化来检查模型表现。这有助于查看模型在不同真实值区间的预测效果。我们将对已缩放的特征使用 .predict() 方法,从 knn 模型获取预测值。然后使用 matplotlibplt.scatter() 创建真实值与预测值的散点图。

本练习是课程的一部分

Python 金融机器学习

查看课程

练习说明

  • KNeighborsRegressor 中的 n_neighbors 设为上个练习中表现最好的取值 5。
  • 使用 knn 模型分别对 scaled_train_featuresscaled_test_features 获取预测结果。
  • 创建 test_targetstest_predictions 的散点图,并标注为 test

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Create the model with the best-performing n_neighbors of 5
knn = KNeighborsRegressor(____)

# Fit the model
knn.fit(scaled_train_features, train_targets)

# Get predictions for train and test sets
train_predictions = ____
test_predictions = ____

# Plot the actual vs predicted values
plt.scatter(train_predictions, train_targets, label='train')
plt.scatter(____)
plt.legend()
plt.show()
编辑并运行代码