位置: IT常识 - 正文

【机器学习】KNN算法及K值的选取

编辑:rootadmin
【机器学习】KNN算法及K值的选取

推荐整理分享【机器学习】KNN算法及K值的选取,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

KNN算法是有监督学习中的分类算法,它看起来和另一个机器学习算法K-means有点像(K-means是无监督学习算法),但却是有本质区别的。

KNN的原理就是:当预测一个新的值x的时候,根据它距离最近的K个点是什么类别,来判断x属于哪个类别。

图中绿色的点就是我们要预测的那个点,假设K=3。那么KNN算法就会找到与它距离最近的三个点(这里用圆圈把它圈起来了),看看哪种类别多一些,比如这个例子中是蓝色三角形多一些,新来的绿色点就归类到蓝三角了。

但是,当K=5的时候,判定就变成不一样了。这次变成红圆多一些,所以新来的绿点被归类成红圆。从这个例子中,我们就能看得出K的取值是很重要的。

KNN的两个核心点:K值的选取和点之间距离的计算方式

【机器学习】KNN算法及K值的选取

距离计算公式就不多说了,是欧氏距离:d(x,y):=∑i=1n(xi−yi)2d(x,y):=\sqrt{\sum_{i=1}^n(x_i-y_i)^2}d(x,y):=∑i=1n​(xi​−yi​)2​

(对于高维特征,曼哈顿距离(即p更低)更能避免维度灾难的影响,效果更优。欧几里得距离(次数更高)更能关注大差异较大的特征的情况)

最简单粗暴的就是将预测点与所有点距离进行计算,然后保存并排序,选出前面K个值看看哪些类别比较多。但其实也可以通过一些数据结构来辅助,比如最大堆

如何确定K值?答案是通过网格搜索,交叉验证(将样本数据按照一定比例,拆分出训练用的数据和验证用的数据,比如6:4拆分出部分训练数据和验证数据),从选取一个较小的K值开始,不断增加K的值,然后计算验证集合的方差,最终找到一个比较合适的K值。

有个反直觉的现象,K取值较小时,模型复杂度(容量)高,训练误差会减小,泛化能力减弱;K取值较大时,模型复杂度低,训练误差会增大,泛化能力有一定的提高。原因是K取值小的时候(如k=1),仅用较小的领域中的训练样本进行预测,模型拟合能力比较强,决策就是只要紧跟着最近的训练样本(邻居)的结果。但是,当训练集包含”噪声样本“时,模型也很容易受这些噪声样本的影响(如图 过拟合情况,噪声样本在哪个位置,决策边界就会画到哪),这样会增大"学习"的方差,也就是容易过拟合。这时,多听听其他邻居训练样本的观点就能尽量减少这些噪声的影响。K值取值太大时,情况相反,容易欠拟合。

KNN是一种非参的,惰性的算法模型:

非参的意思并不是说这个算法不需要参数,而是意味着这个模型不会对数据做出任何的假设,与之相对的是线性回归(我们总会假设线性回归是一条直线)。也就是说KNN建立的模型结构是根据数据来决定的,这也比较符合现实的情况,毕竟在现实中的情况往往与理论上的假设是不相符的。

此处的非参数似乎不太正确

惰性又是什么意思呢?想想看,同样是分类算法,逻辑回归需要先对数据进行大量训练,最后才会得到一个算法模型。而KNN算法却不需要,它没有明确的训练数据的过程,或者说这个过程很快。

KNN算法优点

算法简单直观,易于应用于回归及多分类任务对数据没有假设,准确度高,对异常点较不敏感由于KNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此适用于类域的交叉或非线性可分的样本集。

KNN算法缺点

计算量大,尤其是样本量、特征数非常多的时候。另外KD树、球树之类的模型建立也需要大量的内存只与少量的k相邻样本有关,样本不平衡的时候,对稀有类别的预测准确率低使用懒散学习方法,导致预测时速度比起逻辑回归之类的算法慢。当要预测时,就临时进行 计算处理。需要计算待分样本与训练样本库中每一个样本的相似度,才能求得与 其最近的K个样本进行决策。与决策树等方法相比,KNN考虑不到不同的特征重要性,各个归一化的特征的影响都是相同的。相比决策树、逻辑回归模型,KNN模型可解释性弱一些差异性小,不太适合KNN集成进一步提高性能。
本文链接地址:https://www.jiuchutong.com/zhishi/298415.html 转载请保留说明!

上一篇:vue路由的安装和使用(vue的路由器)

下一篇:Vue生命周期钩子剖析(共12个钩子)(vue生命周期钩子函数)

  • 如何关闭icloud备份(如何关闭icloud备份提醒)

    如何关闭icloud备份(如何关闭icloud备份提醒)

  • vivo手机深色模式如何设置(vivo手机深色模式怎么关闭)

    vivo手机深色模式如何设置(vivo手机深色模式怎么关闭)

  • 微信视频静音是静自己的麦吗(微信视频静音是谁静音)

    微信视频静音是静自己的麦吗(微信视频静音是谁静音)

  • a1523是AirPods一代还是二代(airpods型号a1523是什么版)

    a1523是AirPods一代还是二代(airpods型号a1523是什么版)

  • 苹果11在哪里设置信息闪光灯(苹果11在哪里设置电量显示)

    苹果11在哪里设置信息闪光灯(苹果11在哪里设置电量显示)

  • 抖音不认证可以置顶作品吗(抖音不认证可以赚钱吗)

    抖音不认证可以置顶作品吗(抖音不认证可以赚钱吗)

  • wifi6路由器要用多少兆的宽带(wifi6路由有必要)

    wifi6路由器要用多少兆的宽带(wifi6路由有必要)

  • 拼多多不小心点到了确认收货怎么办(拼多多不小心点了订阅提醒怎么办)

    拼多多不小心点到了确认收货怎么办(拼多多不小心点了订阅提醒怎么办)

  • 魅族手机升级系统开不了机怎么办(魅族手机升级系统)

    魅族手机升级系统开不了机怎么办(魅族手机升级系统)

  • 被商家拉黑有什么影响吗(被商家拉黑是什么样的)

    被商家拉黑有什么影响吗(被商家拉黑是什么样的)

  • 双波浪下划线怎么设置(双波浪形下划线)

    双波浪下划线怎么设置(双波浪形下划线)

  • 鸿蒙手机什么时候上市(鸿蒙啥时候上手机)

    鸿蒙手机什么时候上市(鸿蒙啥时候上手机)

  • 网络电视线能接电脑吗(网络电视线接法图解)

    网络电视线能接电脑吗(网络电视线接法图解)

  • 计算机病毒指的是什么(电脑病毒排名)

    计算机病毒指的是什么(电脑病毒排名)

  • 新iphone11怎么激活(新iphone11怎么激活注册id)

    新iphone11怎么激活(新iphone11怎么激活注册id)

  • iphone11快充伤电池吗(苹果11快充会影响电池寿命吗)

    iphone11快充伤电池吗(苹果11快充会影响电池寿命吗)

  • 微信怎么弄提示音(微信怎么弄提示收到信息)

    微信怎么弄提示音(微信怎么弄提示收到信息)

  • 苹果8彩虹板什么意思(苹果8plus彩虹板)

    苹果8彩虹板什么意思(苹果8plus彩虹板)

  • 雷斯岬国家海岸公园里的柏树隧道,美国加利福尼亚州 (© Spondylolithesis/Getty Images)(雷斯岬国家海岸公园有信号吗)

    雷斯岬国家海岸公园里的柏树隧道,美国加利福尼亚州 (© Spondylolithesis/Getty Images)(雷斯岬国家海岸公园有信号吗)

  • 超分扩散模型 SR3 可以做图像去雨、去雾等恢复任务吗?(扩散分类)

    超分扩散模型 SR3 可以做图像去雨、去雾等恢复任务吗?(扩散分类)

  • Vue项目实战——实现一个任务清单(学以致用,两小时带你巩固和强化Vue知识点)(vue做项目的流程)

    Vue项目实战——实现一个任务清单(学以致用,两小时带你巩固和强化Vue知识点)(vue做项目的流程)

  • 如何用python查看进程(python文档怎么查看)

    如何用python查看进程(python文档怎么查看)

  • 软件开发费税率17还是6
  • 收到以前年度退所得税分录
  • 税务零申报是什么意思情况
  • 出差补贴计入
  • 个体户银行开户是开公户还是私户
  • 材料采购合同需要注意什么
  • 发票认证了申报系统没有数据
  • 建筑企业小规模纳税人升为一般纳税人条件
  • 结算金额和付款金额
  • 发票领回来了怎么读入发票
  • 房地产企业广告费扣除基数
  • 工业企业成本核算的一般程序包括下列的
  • 0退税产品怎么征税
  • 行政单位往来款项长期未清理
  • 企业房屋装修费如何入账
  • 托收承付是收到钱了吗
  • 电子版A4黑白发票可以抵税吗?
  • 建筑服务可以差额征收吗
  • 企业的消费税
  • 工业企业该怎样建账?
  • 怎么看是不是小叶紫檀手串
  • 备案类减免税又做费用了
  • 服务,不动产和无形资产扣除项目明细
  • 公司开13个点增值税交多少钱
  • 个人所得税申请免税条件
  • 增值税发票遗失证明模板
  • Ubuntu 16.04 Server Edition 英文版安装教程
  • 怎么用红字信息表开红字发票
  • 如何禁止远程
  • 宽带连接错误代码691
  • 000.exe病毒
  • 境外汇款所得税缴纳规定
  • 简易计税方法的适用主体有
  • window10为什么右键就卡住
  • 高新技术企业研发费加计扣除政策
  • 建设工程项目设计质量控制的内容
  • 前端开发配置
  • php die exit
  • 简述php操作mysql数据库的基本步骤
  • 认缴制情况下 公司一定要出资到位再注销吗
  • phpcms文档
  • 个体户一直未申报会怎样
  • 修改Dede默认投票代码 防止Request Error错误
  • 研发增值税税率怎么算
  • 合伙人退伙后对退伙后的债务承担责任吗
  • 税收分类编码是什么意思啊
  • 会员退费怎么算
  • 增值税是否计入在建工程
  • 工程物资残料价值
  • 营改增后可以抵扣的进项
  • 不良品扣款会计分录
  • 车费属于什么会计科目类
  • 年度损益调整的会计分录
  • 出纳提取现金的业务流程
  • 对公账户如何转钱进去
  • 现金日记账月末怎么结账图片
  • 如何搭建一个企业
  • 物业管理企业应设置代管基金和代收款项账户
  • 面向小微企业
  • Linux系统忘记root密码
  • 苹果系统怎么更新
  • win7出现正在启动就不动了
  • directx device
  • 怎么清空mac用户数据
  • win7如何更改文件后缀格式
  • win10注销是干嘛的
  • win7电脑无法正常启动系统
  • 电脑开机显示微信号怎么回事
  • w7升级w8.1
  • linux安装与部署
  • android:AndroidAnnotations上传文件,网络接口如此简洁
  • opengl常用函数库
  • jquery选择器的使用
  • js设置密码长度
  • 用javascript
  • 记录我的生活日常
  • javascript零基础入门书籍
  • 小米电脑安装ubuntu
  • 税控盘怎么领用
  • 租赁合同备案后可以更改吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设