高级程序员面试题及答案,机器学习 -- 简析KNN(k近邻算法,食堂大妈看完都会了
(1)算法简单,理论成熟,可用于分类和回归。(2)对异常值不敏感。(3)可用于非线性分类。(4)比较适用于容量较大的训练数据,容量较小的训练数据则很容易出现误分类情况。(5)KNN算法原理是根据邻域的K个样本来确定输出类别,因此对于不同类的样本集有交叉或重叠较多的待分样本集来说,KNN方法较其他方法更为合适。(6)对数据类型(图片,文本,视频)不做限制(1)时间复杂度和空间复杂度高。(训练复杂度为
(1)算法简单,理论成熟,可用于分类和回归。
(2)对异常值不敏感。
(3)可用于非线性分类。
(4)比较适用于容量较大的训练数据,容量较小的训练数据则很容易出现误分类情况。
(5)KNN算法原理是根据邻域的K个样本来确定输出类别,因此对于不同类的样本集有交叉或重叠较多的待分样本集来说,KNN方法较其他方法更为合适。
(6)对数据类型(图片,文本,视频)不做限制
缺点:
(1)时间复杂度和空间复杂度高。(训练复杂度为0,但测试耗时,需要计算很多距离,还要相应存储,再选出最小的k个距离)
(2)训练样本不平衡,对稀有类别的预测准确率低。
(3)相比决策树模型,KNN模型可解释性不强。
三、KNN模型
k近邻模型对应一个特征空间划分。每个样例是最小的单元,对应一个类别。
要点:
(1)距离度量Distance metric
(2)k值的选择Choice of k value
(3)分类规则Classification decision rule
1. 距离度量(Distance metric)
Lp距离: xi是n维空间向量,其距离就是对应分量相减的p次方之和再开平方。
当p=2 欧几里得距离
当p=1 曼哈顿距离
当p=无穷大 切比雪夫距离
三者之间的关系
2. k值的选择(Choice of k value)
如果选择较小的k值: “学习”的近似误差减小,而“学习”的估计误差增大。噪声敏感,k值的降低意味着整个模型变得复杂,容易出现过拟合。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
文末
我一直觉得技术面试不是考试,考前背背题,发给你一张考卷,答完交卷等通知。
首先,技术面试是一个 认识自己 的过程,知道自己和外面世界的差距。
更重要的是,技术面试是一个双向了解的过程,要让对方发现你的闪光点,同时也要 试图去找到对方的闪光点,因为他以后可能就是你的同事或者领导,所以,面试官问你有什么问题的时候,不要说没有了,要去试图了解他的工作内容、了解这个团队的氛围。
前端面试题汇总
JavaScript
性能
linux
前端资料汇总
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
b5b1b4b6aa26129a.png)
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-Z2wh53to-1712618380294)]
更多推荐
所有评论(0)