开始使用免费开始使用

测试其他 "k" 取值

默认情况下,class 包中的 knn() 函数只使用单个最近邻。

通过设置参数 k,算法会将更多相邻的邻居纳入考虑。这会扩大参与投票以决定预测类别的邻居集合。

请比较 k 为 1、7 和 15 时的效果,观察其对交通标志分类准确率的影响。

class 包已在您的工作空间中加载,同时还提供了数据集 signssigns_testsign_types。对象 signs_actual 存放标志的真实取值。

本练习是课程的一部分

R 中的监督学习:分类

查看课程

练习说明

  • 先使用给定代码计算默认 k = 1 模型的准确率,然后使用 mean() 比较 signs_actual 与模型预测,得到准确率。
  • 将对 knn() 的调用修改为 k = 7,再次计算准确率。
  • 再次修改代码,将 k 设为 15,并再计算一次准确率。

交互式实操练习

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

# Compute the accuracy of the baseline model (default k = 1)
k_1 <- knn(train = ___, test = ___, cl = ___)
mean(___)

# Modify the above to set k = 7
k_7 <- ___
mean(___)

# Set k = 15 and compare to the above
k_15 <- ___
mean(___)
编辑并运行代码