我试图找到K最近邻算法的K的最佳值。 我一直在Matlab上运行这种分类方法,用于不同数量的类成员 但是当我们使用不同的K值时,我需要计算错误率。 我试图用这个想法作为例子:
我有以下数据集:
1 3 1
2 3 2
2 1 2
3 3 2
3 4 1
3 3 2
2 2 2
第一列是x轴,第二列是y轴,第三列是标签 我需要使用K-NN算法对点(x,y)进行分类。我使用不同的K值。 我的问题是,如果我知道该点(4,1)未包含在源数据集中 但我知道它来自类标签1.如何计算错误率 某些K值基于方法Leave-one-out-cross-validation。
提前多多谢谢你
此致
Rinadi
答案 0 :(得分:3)
留一法交叉验证意味着,给定您的模型m
,大小为T
的培训集n
和一些评估指标(错误度量){{1}你按以下步骤进行:
E
的每个点(x,y)
:
T
上训练模型m
(所有点数除了1中的点数。)T\(x,y)
,例如,检查E( m , (x,y) )
是否能够正确地确定m
给定y
(然后x
= 0)(和E
= 1)E
值的平均值结果你得到了一个均值推广误差估计 - 你检查了你的模型如何能够预测一个点的标签,并对训练集的其余部分进行训练。