kNN算法是k近邻分类(k-nearest neighbor classification)算法的简称。基本流程是从训练集中找到和新数据最接近的k条记录,然后根据他们的主要分类来决定新数据的类别。该算法涉及3个主要因素:训练集、距离或相似的衡量、k的大小。
一、算法的基本步骤如下所示:
输入: 训练数据T;近邻数目k;待分类的元组t。
输出: 输出类别c。
(1)N=O;
(2)FOR each d∈T DO BEGIN
(3) IF |N|≤k THEN
(4) N=N∪{ d};
(5) ELSE
(6) IF $u∈N such that sim(t,u)<sim(t,d)THEN BEGIN
(7) N=N-{ u};
(8) N=N∪{ d};
(9) END
(10)END
(11)c=class to which the most u ∈N.