当前位置:网站首页 > Go语言开发 > 正文

knn模型是什么(knn模型是什么语言)



KNN:K-Nearest-Neighbor算法,即K值为邻近。KNN是最简单的分类算法之一,同时,也是最常用的分类算法之一。KNN算法是有监督学习中的分类算法。

基于基于iris数据集,具体经历下面四步流程:
        ①载入数据,对数据进行预处理 (缺失值处理、标准化等,其中iris数据集数据全面,无需进行缺失值处理)。
        ②计算待分类点到其他每个样本点的距离。
        ③对每个距离进行排序,然后选择出距离最小的K个点。
        ④对K个点所属的类别进行比较,根据少数服从多数的原则,将待分类点归入在K个点中占比最高的那一类。



(1)对缺失值补全的方法,此处采用对缺失值填充当列数据的平均值的方法

 
  

(2)距离计算公式,包括闵式距离(含欧式距离、曼哈顿距离和切比雪夫距离)、标准化欧式距离(排除数据量纲的影响)、余弦距离、杰卡德距离(求交集、并集间距离)、汉明距离(密码学常用,求字符串间距离)、马氏距离(求分布数据距离)。下面详细介绍闵式距离。

        闵氏距离又叫做闵可夫斯基距离,是欧氏空间中的一种测度,被看做是欧氏距离的一种推广,欧氏距离是闵可夫斯基距离的一种特殊情况。定义式:

                                                            

闵可夫斯基距离公式中:

当时,即为欧氏距离:勾股定理计算的点之间的直接距离

                                             

当时,即为曼哈顿距离:点在标准坐标系上的绝对轴距之和

                                           

当时,即为切比雪夫距离:各坐标轴数据差的最大值

                                              

                                  

               

图中绿色代表欧氏距离,红线代表曼哈顿距离,其他三条折线也表示了曼哈顿距离,这三条折线的长度是相等的。

 
  

运行结果:  

 

到此这篇knn模型是什么(knn模型是什么语言)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 苹果开发者账号年费多少(苹果开发者账号免年费)2026-01-25 08:27:08
  • 注册苹果开发者账号出现未知错误(苹果开发者账号现在注册是灰色)2026-01-25 08:27:08
  • 苹果开发者账号(苹果开发者账号个人注册)2026-01-25 08:27:08
  • 苹果开发者账号付款不成功(苹果开发者账号付款方式)2026-01-25 08:27:08
  • bsp驱动开发工资高吗(bsp开发和驱动开发的区别)2026-01-25 08:27:08
  • 嵌入式软件开发和驱动开发(嵌入式驱动开发就业前景)2026-01-25 08:27:08
  • bsp驱动开发是什么意思(bsp驱动工程师是做什么的)2026-01-25 08:27:08
  • 字符串转int go(字符串转int类型)2026-01-25 08:27:08
  • csgo远程主机断开连接是什么意思(csgo远程主机中断)2026-01-25 08:27:08
  • git怎么用于项目开发(git怎么运行项目)2026-01-25 08:27:08
  • 全屏图片