美文网首页
机器学习面试002—kNN

机器学习面试002—kNN

作者: Silence_Dong | 来源:发表于2018-08-14 08:37 被阅读0次

1. 如何理解kNN中的k的取值?

Ans :①选取较小的k值时,相当于用较小的领域中的训练实例进行预测,“学习”近似误差会减小,只有与输入实例很相近的样本才会对预测结果起作用。但是,“学习”的估计误差会增大,整体模型会变得复杂,容易过拟合
②选取较大的k值是,相当于用较大的领域中的训练实例进行预测,可以减少学习的估计误差,但是近似误差会增大,因为离输入实例较远的样本也对预测结果起作用,容易使预测发生错误。k过大导致模型变得简单。
③在选取k上,一般取比较小的值,并采用交叉验证法进行调优。

2. 在kNN的样本搜索中,如何进行高效的匹配查找?

Ans :①线性扫描(数据多时,效率低)
②构建数据索引——Clipping和Overlapping两种。前者划分的空间没有重叠,如k-d树;后者划分的空间相互交叠,如R树。

3. 那什么是KD树?怎么构建的?

Ans:kd树是对数据点在k维空间中划分的一种数据结构,主要用于多维空间关键数据的搜索。本质上,kd树就是一种平衡二叉树。
思想:先对计算各个维度的方差,选取最大方差的维度作为候选划分维度(方差越大,表示此维度上数据越分散);对split维度上的值进行排序,选取中间的点为node-data;按照split维度的node-data对空间进行一次划分;对上述子空间递归以上操作,直到空间只包含一个数据点。分而治之,且循环选取坐标轴

4. 能简单介绍一下KD树的查找,以及增、删、改的实现流程吗?

Ans:先二叉查找,找到候选最近点;沿着路径进行回溯,画圆,是否父节点平面交割,以判断是否需要进入另一个平面进行查找;依次回溯,画圆,寻找最近点。
KD树更适合用于训练实例数远大于空间维数时的k近邻搜索。当维数超过20维时,KD数的检索效率急剧下降,几乎接近贪婪的线性扫描。因此出现对KD树的改进——BBF算法,M树,VP树,MVP树等高维空间索引树。

相关文章

  • 机器学习面试002—kNN

    1. 如何理解kNN中的k的取值? Ans :①选取较小的k值时,相当于用较小的领域中的训练实例进行预测,“学习”...

  • 面试题目总结

    阿里机器学习面试的一些题目, 1.说一下KNN的过程(刚开始的时候和k-means搞混了。。。) KNN是k ne...

  • 机器学习实战-knn

    机器学习实战笔记-knn算法实战 本文内容源于《机器学习实战》一书,主要介绍了knn(k-nearest neig...

  • 第六节分类算法

    1knn算法 1.1knn的过程 1.2scilit-learn中的knn 1.3scikit-learn机器学习...

  • 01 KNN算法 - 概述

    KNN算法全称是K近邻算法 (K-nearst neighbors,KNN) KNN是一种基本的机器学习算法,所谓...

  • KNN算法以及欧式距离

    1.KNN算法介绍 KNN 是什么? KNN(K-Nearest Neighbor)是最简单的机器学习算法之一,可...

  • 机器学习-KNN

    sklearn中的train_test_split 4.4分类准确度accuracy 不需要求出预测值 只要求预测...

  • 机器学习-knn

    生成已标记的数据集并直观显示 训练 预测 把带预测的样本以及和其最近的5个点标记出来

  • 机器学习: KNN

    KNN (K Nearest Neighbor) 是比较常见的种监督算法。它的主要思想是看这个数据距离最近的 K ...

  • 机器学习KNN

    代码带注释 一般在机器学习模型中会涉及到衡量两个样本间的距离,如聚类、KNN,K-means等,使用的距离为欧式距...

网友评论

      本文标题:机器学习面试002—kNN

      本文链接:https://www.haomeiwen.com/subject/zlaybftx.html