K-近邻算法

✍ dations ◷ 2025-05-18 00:31:05 #分类算法,搜寻算法,机器学习算法,人工智能

在模式识别领域中,最近邻居法(KNN算法,又译K-近邻算法)是一种用于分类和回归的非参数统计方法。在这两种情况下,输入包含特征空间(英语:Feature Space)(Feature Space)中的个最接近的训练样本。

最近邻居法采用向量空间模型来分类,概念为相同类别的案例,彼此的相似度高,而可以借由计算与已知类别案例之相似度,来评估未知类别案例可能的分类。

K-NN是一种基于实例的学习(英语:instance-based learning),或者是局部近似和将所有计算推迟到分类之后的惰性学习(英语:lazy learning)。k-近邻算法是所有的机器学习算法中最简单的之一。

无论是分类还是回归,衡量邻居的权重都非常有用,使较近邻居的权重比较远邻居的权重大。例如,一种常见的加权方案是给每个邻居权重赋值为1/ d,其中d是到邻居的距离。

邻居都取自一组已经正确分类(在回归的情况下,指属性值正确)的对象。虽然没要求明确的训练步骤,但这也可以当作是此算法的一个训练样本集。

k-近邻算法的缺点是对数据的局部结构非常敏感。本算法与K-平均算法(另一流行的机器学习技术)没有任何关系,请勿与之混淆。

训练样本是多维特征空间向量,其中每个训练样本带有一个类别标签。算法的训练阶段只包含存储的特征向量和训练样本的标签。

在分类阶段,是一个用户定义的常数。一个没有类别标签的向量(查询或测试点)将被归类为最接近该点的个样本点中最频繁使用的一类。

一般情况下,将欧氏距离作为距离度量,但是这是只适用于连续变量。在文本分类这种离散变量情况下,另一个度量——重叠度量(或海明距离)可以用来作为度量。例如对于基因表达微阵列数据,-NN也与Pearson和Spearman相关系数结合起来使用。通常情况下,如果运用一些特殊的算法来计算度量的话,近邻分类精度可显著提高,如运用大间隔最近邻居或者邻里成分分析法。

“多数表决”分类会在类别分布偏斜时出现缺陷。也就是说,出现频率较多的样本将会主导测试点的预测结果,因为他们比较大可能出现在测试点的K邻域而测试点的属性又是通过邻域内的样本计算出来的。解决这个缺点的方法之一是在进行分类时将样本到个近邻点的距离考虑进去。近邻点中每一个的分类(对于回归问题来说,是数值)都乘以与测试点之间距离的成反比的权重。另一种克服偏斜的方式是通过数据表示形式的抽象。例如,在自组织映射(SOM)中,每个节点是相似的点的一个集群的代表(中心),而与它们在原始训练数据的密度无关。-NN可以应用到SOM中。

如何选择一个最佳的K值取决于数据。一般情况下,在分类时较大的K值能够减小噪声的影响, 但会使类别之间的界限变得模糊。一个较好的K值能通过各种启发式技术(见超参数优化(英语:Hyperparameter optimization))来获取。

噪声和非相关性特征的存在,或特征尺度与它们的重要性不一致会使K近邻算法的准确性严重降低。对于选取和缩放特征来改善分类已经作了很多研究。一个普遍的做法是利用进化算法优化功能扩展,还有一种较普遍的方法是利用训练样本的互信息进行选择特征。

在二元(两类)分类问题中,选取为奇数有助于避免两个分类平票的情形。在此问题下,选取最佳经验值的方法是自助法。

k- 最近邻分类器可以被视为为 k最近邻居分配权重 1 / k {\displaystyle 1/k} 最近邻居法在文件分类方面的效果,如Han等人于2002年尝试利用贪心法,针对文件分类实做可调整权重的k最近邻居法WAkNN(weighted adjusted k nearest neighbor),以促进分类效果;而Li等人于2004年提出由于不同分类的文件本身有数量上有差异,因此也应该依照训练集合中各种分类的文件数量,选取不同数目的最近邻居,来参与分类。

相关

  • 化学及热力学中所谓熵(英语:entropy),是一种测量在动力学方面不能做功的能量总数,也就是当总体的熵增加,其做功能力也下降,熵的量度正是能量退化的指标。熵亦被用于计算一个系统中
  • 修行制度修道、修行、修行制度,主要是宗教关于修行的教导、制度等。可以指:
  • 乙二硫醇乙二硫醇、1,2-乙二硫醇,分子式为C2H4(SH)2,室温下为无色有气味的液体。可用于有机合成试剂和螯合配体。乙二硫醇比乙二醇反应性更强,更易与醛和酮反应生成缩硫醛/酮。后者是有
  • 郎德海花园场景《朗德海花园场景》(法语:Une scène au jardin de Roundhay),是路易斯·普林斯在1888年10月拍摄的短片,并为世界上已知最早的短片。本片约2秒长,被《吉尼斯世界纪录大全》收录为
  • 19581958年欧洲歌唱大赛(Grand-Prix Eurovision de la Chanson Européenne 1958)为欧洲歌唱大赛之第3届比赛,于1958年3月12日在荷兰希尔弗瑟姆举行。这次比赛是法国第一次得到冠军
  • 巡逻机反潜机(英语:Maritime patrol aircraft,MPA),又称海上巡逻机,泛指担任搜索、标定和攻击潜艇的军用飞机。常见的反潜机有固定翼飞机或是直升机这两种型态,有从陆地机场操作,也有自水
  • 2010/11赛季欧洲羽联巡回赛2010/11赛季欧洲羽联巡回赛(BE Circuit 2010/11),是欧洲羽联巡回赛的第24个赛季。本年度共包含25个比赛。以下为欧洲羽联公布的赛程:
  • CC98论坛浙江大学CC98论坛是浙江大学学生较常使用的BBS,也是中国各大学中较活跃的BBS之一。论坛创建于创建于2002年12月,目前是浙江大学校网内规模最大的论坛,其管理由CC98运营管理团队
  • HomoljeHomolje(塞尔维亚语西里尔字母:Хомоље, 发音:.mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux Libertine","Segoe UI","Lucida Sans Unicode","Co
  • 北爱尔兰议会 政治主题北爱尔兰议会(英语:Northern Ireland Assembly;爱尔兰语:Tionól Thuaisceart Éireann;阿尔斯特苏格兰语:Norlin Airlan Assemblie)为北爱尔兰分权自治政府之立法机关。