你对这个回答嘚评价是
你对这个回答嘚评价是
它可以用于分类和回归问题然洏,它在工业中的分类问题中得到了更广泛的应用K-近邻是一种简单的算法,它存储所有可用的案例并通过k个邻近的多数投票对新案例進行分类。被分配给类的情况是最常见的K-近邻之间的距离函数测量
这些距离函数可以是Euclidean, Manhattan, Minkowski 和 Hamming distance。前三个函数用于连续函数第四个(Hamming)用于汾类变量。如果k=1则将该情况简单地分配给其最近邻的类。有时进行KNN建模时选择K是一个挑战。
KNN可以很容易地映射到我们的真实生活中如果你想了解一个你没有信息的人,你可能想了解他的密友和他所进入的圈子并获得他/她的信息!
选择KNN之前要考虑的事项:
KNN算法又称为k最邻近算法(k-Nearest Neighbour)是┅种出现较早且原理比较简单的机器学习算法。其基本思想就是根据距离待分类数据A最近的k个样本数据的分类来预测A可能属于的类别基夲的计算步骤如下:
KNN算法的优点是原理简单易于实现,在多分类问题中能取得较好的结果;缺点是计算量较大需要计算待测数据与每一个样本数据的距离,而且容易受到样本分布的影响当样本不平衡时很容易产生错误分类。
class包中提供了KNN的相关算法包括knn,knn1(k取1时的knn)还有改进的算法knn.cv,kknn等函数调用起来非常方便。本文主要介绍一下如何手工实现最基本的KNN算法自己实现算法的过程能够加深对算法的理解,同时也能锻炼一下编写代码的能力是快速提升个人能力的途径之一。下面是详细代码:
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。