如何解释 cv.kknn 的交叉验证输出(kknn 包)
How to interpret cross validation output from cv.kknn (kknn package)
我正在尝试解释我在尝试交叉验证 k 最近邻模型的数据时得到的结果。我的数据集是这样设置的
变量1(整数)|变量 2(整数) |变量 3(整数) |变量 4(整数) |响应(因子)
一旦我选择了我的模型,我将我的数据 80% 分成 cvdata 和 20% 用于测试。
我的代码的单个迭代如下:
cv <- cv.kknn(formula = Response~., cvdata, kcv = 10, k = 7, kernel = 'optimal', scale = TRUE)
cv
当我 运行 'cv' 它只是 returns 一个 list() 包含一些看似随机的数字作为行名,观察到的结果变量 (y) 和预测的结果变量 (yhat ).我正在尝试计算测试集的某种准确性。我应该比较 y 和 yhat 来验证吗?
编辑:在下面添加了输出
[[1]]
y yhat
492 1 0.724282776
654 0 0.250394372
427 0 0.125159894
283 0 0.098561768
218 1 0.409990851
[[2]]
[1] 0.2267058 0.1060212
[[2]]中的第一个元素是平均绝对误差,第二个是均方误差。
假设 df 是您的数据框,那么可以通过 mean(abs(df$y - df$yhat)) 和 mean((df$y - df$yhat)^2).
轻松测试这些值
我正在尝试解释我在尝试交叉验证 k 最近邻模型的数据时得到的结果。我的数据集是这样设置的
变量1(整数)|变量 2(整数) |变量 3(整数) |变量 4(整数) |响应(因子)
一旦我选择了我的模型,我将我的数据 80% 分成 cvdata 和 20% 用于测试。
我的代码的单个迭代如下:
cv <- cv.kknn(formula = Response~., cvdata, kcv = 10, k = 7, kernel = 'optimal', scale = TRUE)
cv
当我 运行 'cv' 它只是 returns 一个 list() 包含一些看似随机的数字作为行名,观察到的结果变量 (y) 和预测的结果变量 (yhat ).我正在尝试计算测试集的某种准确性。我应该比较 y 和 yhat 来验证吗?
编辑:在下面添加了输出
[[1]]
y yhat
492 1 0.724282776
654 0 0.250394372
427 0 0.125159894
283 0 0.098561768
218 1 0.409990851
[[2]]
[1] 0.2267058 0.1060212
[[2]]中的第一个元素是平均绝对误差,第二个是均方误差。 假设 df 是您的数据框,那么可以通过 mean(abs(df$y - df$yhat)) 和 mean((df$y - df$yhat)^2).
轻松测试这些值