ML之监督学习算法之分类算法一 ———— k-近邻算法(最邻近算法)

本文介绍了K-近邻(KNN)算法的基本概念与工作原理。KNN是一种基于实例的学习方法,通过计算新样本与已知样本之间的距离来实现分类。文中还讨论了不同距离度量方法如欧式距离和曼哈顿距离等,并指出了KNN算法的优点和局限性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

  最近邻规则分类(K-Nearest Neighbor)KNN算法

  由Cover 和Hart在1968年提出了最初的邻近算法,

  这是一个分类(classification)算法

  输入基于实例的学习(instance-based learning), 懒惰学习(lazy learning)

二、原理

  在一个样本数据集合, 也称作训练样本集, 并且样本集中每个数据都存在标签, 即我们知道样本集中每一数据与所属分类的对应关系。输入没有标签的新数据后, 将新数据的每个特征与样本集中数据对应的特征进行比较, 然后算法提取样本集中特征最相似数据( 最近邻) 的分类标签。 一般来说, 我们只选择样本数据集中前k个最相似的数据, 这就是k-近邻算法中k的出处, 通常k是不大于20的整数。 最后, 选择k个最相似数据中出现次数最多的分类, 作为新数据的分类。

三、Distance

  1、欧式距离

  2、余弦值(cos)

  3、相关度(correlation)

  4、曼哈顿距离(Manhatten distance)

四、优缺点

  k近邻算法是分类数据最简单最有效的算法,k近邻算法是基于实例的学习,使用算法时必须有接近实际算计的训练样本数据。 k近邻算法必须保存全部数据集,如果训练数据集过于庞大,必须使用大量的存储空间。此外,由于必须对数据集中的每个数据计算距离值,实际使用时可能非常耗时;

  k近邻算法的另一个缺陷是它无法给出任何数据的基础结构信息,因此我们无法知晓平均实例样本和典型实例样本具有什么特征。我们将使用 概率测量方法 处理分类问题; 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值