KNN算法工作原理及实现
来源:互联网 发布:苹果电脑 mac地址 编辑:程序博客网 时间:2024/06/07 01:53
工作原理:训练数据中每个数据都存在标记(分类信息),当输入新样本后,将新样本的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本集中特征最想是数据的分类信息。一般来说,我们只选择样本集数据中前k个最相似的数据。最后,选择k个最相似数据出现次数最多的分类。
代码实现思路:第一:计算新样本点与训练数据点的距离
第二:将距离按照递增的顺序排序
第三:选取距离最小的k个点
第四:确定前k个点所在类别出现的频率
第五:将距离按照递增的顺序排序
代码实现:
#encoding:utf-8import numpy as npfrom numpy import *import operatordef classify(inX, dataSet, labels, k): # 距离的计算 # 获取数据的行数 dataSetSize = dataSet.shape[0] # 实现向量的相减 diffMat = np.tile(inX,(dataSetSize,1))-dataSet # 实现向量中各值的平方 diffMat1 = diffMat**2 # 计算行向量的总值,即距离的平方 diffMatSum = diffMat1.sum(axis=1) # 得到距离 distances = diffMatSum**0.5 # 将得到的距离排序,并且返回的是位置 diffMatsort = distances.argsort() # 定义一个新的词典 classcount = {} # 选择距离最小的k个点 for i in range(k): #获取不同位置的距离的标记 sortLabels = labels[diffMatsort[i]] # 统计类出现的次数 classcount[sortLabels] = classcount.get(sortLabels,0)+1 # 将类出现的次数逆序排序 sortedClasscount = sorted(classcount.items(),key = operator.itemgetter(1),reverse = True) # 返回最高的次数对应的类即可
0 0
- KNN算法工作原理及实现
- 机器学习KNN算法原理及实现
- KNN算法原理与实现
- KNN算法原理与实现
- KNN算法及python实现
- KNN算法拓展及实现
- KNN(一)--简单KNN原理及实现
- KNN(一)--简单KNN原理及实现
- KNN(一)--简单KNN原理及实现
- kNN算法的原理以及Python实现
- KNN算法原理(python代码实现)
- knn最近邻算法原理与实现
- Knn原理及Python实现、数据展示
- KNN原理及python实现(kd树)
- K邻近(KNN)分类和预测算法的原理及实现
- KNN临近算法的原理及实例(iris分类)代码实现
- 写程序学ML:K近邻(KNN)算法原理及实现(一)
- 写程序学ML:K近邻(KNN)算法原理及实现(二)
- Linux(Centos 7)安装JDK并配置环境变量
- Android中使用am命令实现在命令行启动程序详解
- maven 用指令启动jetty或tomcat需要做的步骤
- MYSQL 双向配置
- 多层嵌套json解析与构建|vuejs初探
- KNN算法工作原理及实现
- 【敏捷】创业公司如何实施敏捷开发
- NS3编译错误Traceback解决方法
- python实现knn算法
- python中的split() strip() argv
- 第五章上机4和上机五
- python scikit库
- Go实战--通过net/smtp发送邮件(The way to go)
- JavaScript界面动态效果