一、K近邻算法的定义、原理、应用
定义:一种基本分类与回归算法,属于机器学习基本算法之一
原理:K近邻算法,即是给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的K个实例,这K个实例的多数属于某个类,就把该输入实例分类到这个类中。
应用:数据分类问题。
二、k近邻算法中k的选取以及特征归一化的重要性
1、选取k值以及其影响
Q1:K值的选择会对结果产生什么影响。
A1:K值过小,意味着模型变得复杂,发生过拟合。K过大意味着模型过于简单,无法得到预期模型。
Q2:如何得到合适的K值?
A2:交叉验证法(实验调参):
LOOCV法:以一个数据集作为测试集,其他的全作为训练集,重复N次,取MSE均值。(计算成本极高)
K-fold Cross Validation算法:K折交叉验证,将数据平分为5份的为5折,并计算MSE。
用MSE衡量 分类错配的问题。 Erri表示在第i个模型在第i组测试集上的分类错误的个数。
Cross-Validation 则可以使用计算公式:
_
