深度学习小白——Nearest Neighbor 分类器

最近邻分类器是通过比较训练集和测试集像素之间的距离来判断是否属于同一类的。可解决图像分类的问题

针对像素距离,常用的有:

1.L1距离 


2.L2距离


K-Nearest Neighbor分类器

找出与测试集某张图片最相近的K个图片标签,然后针对测试图片进行投票,票数最高的标签作为对测试图片的预测。这样可以使得分类器对于异常值更有抵抗力


超参数 hyperparameter

机器学习算法设计中,如K-NN中的k的取值,以及计算像素差异时使用的距离公式,都是超参数,而调参更是机器学习中不可或缺的一步

注意:调参要用validation set,而不是test set. 机器学习算法中,测试集只能被用作最后测试,得出结论,如果之前用了,就会出现过拟合的情况


交叉验证cross validation set

这是当训练集数量较小的时候,可以将训练集平分成几份,然后循环取出一份当做validation set 然后把每次结果最后取平均



Nearest Neighbor 分类器的优劣

1.该分类器在训练阶段不需要花时间,然而在测试阶段却要花费大量时间,因为要将每一个测试图片与所有训练图片比对。所以几乎没人用这个算法

2.L1,L2 范数来进行像素比较是不够的,图像更多的是按背景和颜色被分类,而不是语义主体分身

3.如果想要使K-NN算法实用,可以对数据特征进行normalize,让其均值为0,和单位方差。或者用PCA降维


你可能感兴趣的:(深度学习小白——Nearest Neighbor 分类器)