knn算法

      K近邻法(k-nearest neighbor,KNN)是一种很基本的机器学习方法了,在我们平常的生活中也会不自主的应用,就是“物以类聚,人以群分”。比如,我们判断一个人的人品,只需要观察他来往最密切的几个人的人品好坏就可以得出了。这里就运用了KNN的思想。KNN方法既可以做分类,也可以做回归,这点和决策树算法相同。KNN做回归和分类的主要区别在于最后做预测时候的决策方式不同。

       KNN做分类预测时,一般是选择多数表决法,即训练集里和预测的样本特征最近的K个样本,预测为里面有最多类别数的类别。

       而KNN做回归时,一般是选择平均法,即最近的K个样本的样本输出的平均值作为回归预测值。由于两者区别不大,虽然本文主要是讲解KNN的分类方法,但思想对KNN的回归方法也适用。

        k值的选择,K值的选择会对k近邻法的结果产生重大影响。

      (1)如果选择较小的k值,就相当于用较小的邻域中的训练实例进行预测,“学习”的近似误差会减少,只有与输入实例较近的训练实例才会对预测结果起作用。但缺点是“学习”的估计误差会增大,预测的结果会对近邻的实例点非常敏感。如果近邻的实例点家好食噪声,预测就会出错。换句话说,k值的减小就意味着整体模型变得

你可能感兴趣的:(算法)