美文网首页
kNN(k-Nearest Neighbors)

kNN(k-Nearest Neighbors)

作者: 机器学习笔记 | 来源:发表于2018-12-19 22:04 被阅读0次

    kNN(k-Nearest Neighbors)


    image

    KNN思想:

    如上图所示:原有数据集有两类:椭圆为一类,长方形为一类。KNN 需要判断星号是属于椭圆类还是长方形类。分如下几步判断:

    1.首选确定K值。本文K值取为3。

    2.判断离星号最近的K个样本中哪个样本类别最多,就判断星号属于哪个类别。

    距离公式

    使用欧拉距离


    image.png
    import numpy as np
    import matplotlib.pyplot as plt
    from math import sqrt
    from collections import Counter
    
    X = np.array([[2,2],[1,3],[3,3],[4,1],[4,3],[6,2]])
    Y = np.array([0 , 0, 0, 1, 1, 1])
    
    x = np.array([[1,1]])
    d = []
    d = [sqrt(np.sum((x-x_)**2)) for x_ in X]
    n = np.argsort(d)
    k = 3
    k_y = [y[i] for i in n[:k]]
    c = Counter(k_y)
    c = c.most_common(1)[0][0]
    print("x所属类别为:",c)
    
    

    相关文章

      网友评论

          本文标题:kNN(k-Nearest Neighbors)

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