k-近邻算法(kNN)测试算法:作为完整程序验证分类器

Posted fd-682012

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k-近邻算法(kNN)测试算法:作为完整程序验证分类器相关的知识,希望对你有一定的参考价值。

 1 #测试算法:作为完整程序验证分类器
 2 def datingClassTest():
 3     hoRatio = 0.10  #设置测试集比重,前10%作为测试集,后90%作为训练集
 4     datingDataMat,datingLabels = file2matrix(datingTestSet.txt)
 5     normMat, ranges, minVals = autoNorm(datingDataMat)
 6     m = normMat.shape[0]    #得到样本数量m
 7     numTestVecs = int(m*hoRatio)    #得到测试集最后一个样本的位置
 8     errorCount = 0.0    #初始化定义错误个数为0
 9     for i in range(numTestVecs):
10         #测试集中元素逐一放进分类器测试,k = 3
11         classifierResult = classify0(normMat[i,:],normMat[numTestVecs:m,:],datingLabels[numTestVecs:m],3)
12         #输出分类结果与实际label
13         print("the classifier came back with: %d, the real answer is: %d"% (classifierResult, datingLabels[i]))
14         #若预测结果与实际label不同,则errorCount+1
15         if (classifierResult !=datingLabels[i]): errorCount += 1.0
16         #输出错误率 = 错误的个数 / 总样本个数
17         print("the total error rate is: %f" % (errorCount/float(numTestVecs)))

输入命令:kNN.datingClassTest()

 

以上是关于k-近邻算法(kNN)测试算法:作为完整程序验证分类器的主要内容,如果未能解决你的问题,请参考以下文章

机器学习 分类算法--K近邻算法 KNN

后端程序员之路 12K最近邻(k-Nearest Neighbour,KNN)分类算法

实验二 K-近邻算法及应用

K近邻算法——KNN

python用K近邻(KNN)算法分类MNIST数据集和Fashion MNIST数据集

第二章:k-近邻算法(kNN)