写道
[KNN算法的决策过程]
KNN算法的决策过程
k-Nearest Neighbor algorithm
右图中,绿色圆要被决定赋予哪个类,是红色三角形还是蓝色四方形?如果K=3,由于红色三角形所占比例为2/3,绿色圆将被赋予红色三角形那个类,如果K=5,由于蓝色四方形比例为3/5,因此绿色圆被赋予蓝色四方形类。
K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。该方法的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。KNN算法中,所选择的邻居都是已经正确分类的对象。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。 KNN方法虽然从原理上也依赖于极限定理,但在类别决策时,只与极少量的相邻样本有关。由于KNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,KNN方法较其他方法更为适合。
KNN算法不仅可以用于分类,还可以用于回归。通过找出一个样本的k个最近邻居,将这些邻居的属性的平均值赋给该样本,就可以得到该样本的属性。更有用的方法是将不同距离的邻居对该样本产生的影响给予不同的权值(weight),如权值与距离成正比。
该算法在分类时有个主要的不足是,当样本不平衡时,如一个类的样本容量很大,而其他类样本容量很小时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数。 该算法只计算“最近的”邻居样本,某一类的样本数量很大,那么或者这类样本并不接近目标样本,或者这类样本很靠近目标样本。无论怎样,数量并不能影响运行结果。可以采用权值的方法(和该样本距离小的邻居权值大)来改进。该方法的另一个不足之处是计算量较大,因为对每一个待分类的文本都要计算它到全体已知样本的距离,才能求得它的K个最近邻点。目前常用的解决方法是事先对已知样本点进行剪辑,事先去除对分类作用不大的样本。该算法比较适用于样本容量比较大的类域的自动分类,而那些样本容量较小的类域采用这种算法比较容易产生误分。
分享到:
相关推荐
K-最近邻(K-Nearest Neighbor,简称KNN)算法是一种基于实例的学习,也是最简单的分类与回归方法之一。这个算法的核心思想是:未知样本的类别可以通过其最近邻的多数类别来决定。在Java中实现KNN算法,通常包括以下...
In the realm of machine learning and pattern recognition, the K-Nearest Neighbors (K-NN) algorithm is one of the most fundamental non-parametric methods. Its simplicity and flexibility make it a ...
邻近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。 kNN算法的核心思想是...
针对传统的基于WiFi的最近邻(K-nearest neighbor algorithm, WiFi-KNN)室内定位算法精确度不能达到精准定位的需求的问题,本文提出了一种基于位置范围限定的K近邻(K-nearest neighbor based on the location range ...
模糊K最近邻(Fuzzy K-Nearest Neighbor, FKNN)算法是一种在分类问题中使用的非参数机器学习方法,尤其适用于处理包含模糊或不确定性的数据。这个算法是经典的KNN(K-Nearest Neighbor)算法的扩展,它考虑了样本点...
所提出的算法基于 k 最近邻方法,其中 k 的值是唯一的算法参数,用于控制最终解决方案的“平滑度”。 该算法的思想属于: 莫雷拉、阿德里亚诺和桑托斯、马里贝尔。 (2007)。 Concave hull:用于计算由一组点占据...
KNN也称作K最邻近结点算法(k-Nearest Neighbor algorithm)的缩写形式,是分类预测的经典算法之一。在煤炭勘探过程中,往往希望将新勘探出来的煤炭产品分类预测,并采取对应类别的煤炭处理和保存措施。文中,将采用基于...
Nearest Neighbour algorithm for a TSP with 7 cities. The solution changes as the starting point is changed The nearest neighbour (NN) algorithm (a greedy algorithm) lets the salesperson choose the ...
在之前的研究文献中,已经探索了许多文本分类算法,如KNN(K近邻)、朴素贝叶斯(Naïve Bayes)和支持向量机(Support Vector Machine,SVM)。KNN文本分类是一种有效但效率不高的分类方法。在这篇文章中,作者提出...
coding for k nearest neighbor algorithm
In pattern recognition, the k-nearest neighbor algorithm (k-NN) is a method for classifying objects based on closest training examples in the feature space.
The k-nearest neighbor algorithm uses the method of measuring the distance between different feature values for classification. First
在监督学习算法中,我们可以看到 Expectation Maximization (EM) Algorithm、Linear Regression Algorithm、Local Weighted Regression、k-Nearest Neighbor Algorithm for Regression、Linear Classifier、...
False Nearest Neighbor Searching algorithm.在国内非常罕见的算法。为了解决科学研究的需求用来4周编译处理的。这个软件包市作经济分析的必备工具,当然,非线性系统中更是不可缺少的东西了。 由于该软件包的技术...
K-最近邻算法(K-Nearest Neighbor Algorithm) K-最近邻算法是一种监督学习算法,用于分类和回归任务。K-最近邻算法的原理是通过计算测试样本与训练样本之间的距离,选择K个最近邻居,根据它们的输出值进行...
在这个名为"algorithm_classification_k-nearest_neighbor"的项目中,我们主要关注的是利用机器学习中的K最近邻(K-Nearest Neighbor, KNN)算法来预测乳腺癌的扩散情况。这个项目涉及了数据预处理(Extract-...
3. 最邻近聚类算法(K-Nearest Neighbor Algorithm):一种无监督学习算法,用于对数据进行聚类和分类。 4. 神经网络预测模型(Neural Network Prediction Model):使用神经网络进行预测的模型,常用于时间序列...
algorithm for nearest neighbor search from MIT
通过分析标签的共现上下文(Co-occurrence Contexts)和采用带有高斯权重的K近邻算法(K-Nearest Neighbor Algorithm with Gaussian Weight),系统能够找出最能代表抽象标签的具体标签。 #### 关键词丰富 除了直接...