美文网首页
K近邻法

K近邻法

作者: 从0到1024 | 来源:发表于2018-03-24 18:04 被阅读0次

    算法简介

    给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的k个实例,这k个实例的多数属于某个类,就把该输入实例分为这个类。

    模型由三个基本要素决定: 距离度量、K值的选择、分类决策规则。

    距离度量

    Lp距离定义

    二维空间中p取不同值时,Lp=1的点的图形

    K值的选择

    K值过小,会对近邻的实例点非常敏感,容易发生过拟合;

    K值过大,与输入实例较远的训练实例也会对预测起作用,如果k=N,则预测为训练实例最多的类,不可取。

    应用中,k值一般取一个比较小的值,采用交叉验证法选取最优k值。

    分类决策规则

    多数表决规则,即由输入实例的k个临近的训练实例中的多数类决定输入实例的类。

    算法实现

    构造kd树

    以二维空间为例,给定数据集

    1、X(1)轴中位数为7,以平面X(1)=7将空间分为左右两个子矩形(子节点);

    2、左矩形以X(2)=4分为两个子矩形,右矩形以X(2)=6分为两个子矩形;

    3、如此递归,得到如下kd树。

    搜索kd树

    1、在kd树中找到包含点S的叶节点D,则最近邻点在以S为圆心通过D的园内;

    2、返回父节点B,B的另一子节点F与圆不相交,不可能有最近邻点;

    3、返回上一级父节点A,A的另一子节点C与圆相交,该区域有在圆内的E,E成为新的最近邻点。

    相关文章

      网友评论

          本文标题:K近邻法

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