最近邻分类算法中误码率的计算

时间:2013-10-05 19:53:15

标签: algorithm machine-learning pattern-matching nearest-neighbor

我试图找到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

1 个答案:

答案 0 :(得分:3)

留一法交叉验证意味着,给定您的模型m,大小为T的培训集n和一些评估指标(错误度量){{1}你按以下步骤进行:

  1. 来自E的每个点(x,y)
    1. 您在T上训练模型m(所有点数除了1中的点数。)
    2. 您检查T\(x,y),例如,检查E( m , (x,y) )是否能够正确地确定m给定y(然后x = 0)(和E = 1)
  2. 您计算所有分析点的所有E值的平均值
  3. 结果你得到了一个均值推广误差估计 - 你检查了你的模型如何能够预测一个点的标签,并对训练集的其余部分进行训练。