第1关:相似性和距离度量
任务描述
本关任务:编写一个手写数字识别的模型,并对模型进行评估
相关知识
为了完成本关任务,你需要掌握:1.KNN算法的基本流程;2.相似度和距离度量
KNN算法
knn算法可以概括为"近朱者赤,近墨者黑"
KNN算法是一种用于分类和回归的算法,在机器学习中是一种比较基础而且简单的算法之一,它是属于监督学习中分类方法的一种。其大致思想可以表述为:
1.给定一个训练集合 M 和一个测试对象 n ,其中该对象是由一个属性值和未知的类别标签组成的向量。
计算对象 m 和训练集中每个对象之间的距离(一般是欧式距离)或者相似度(一般是余弦相似度),确定最近邻的列表
2.将最近邻列表中数量占据最多的类别判给测试对象 z 。
3.一般来说,我们只选择训练样本中前 K 个最相似的数据,这便是 k-近邻算法中 k 的出处。
from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selectio