机器学习经典算法之KNN
/*请尊重作者劳动成果,转载请标明原文链接:*/
/* https://www.cnblogs.com/jpcflyer/p/11111817.html * /
1 from sklearn.neighbors import KNeighborsClassifier
1 from sklearn.neighbors import KNeighborsRegressor
1 # 加载数据 2 digits = load_digits() 3 data = digits.data 4 # 数据探索 5 print(data.shape) 6 # 查看第一幅图像 7 print(digits.images[0]) 8 # 第一幅图像代表的数字含义 9 print(digits.target[0]) 10 # 将第一幅图像显示出来 11 plt.gray() 12 plt.imshow(digits.images[0]) 13 plt.show()
1 (1797, 64) 2 [[ 0. 0. 5. 13. 9. 1. 0. 0.] 3 [ 0. 0. 13. 15. 10. 15. 5. 0.] 4 [ 0. 3. 15. 2. 0. 11. 8. 0.] 5 [ 0. 4. 12. 0. 0. 8. 8. 0.] 6 [ 0. 5. 8. 0. 0. 9. 8. 0.] 7 [ 0. 4. 11. 0. 1. 12. 7. 0.] 8 [ 0. 2. 14. 5. 10. 12. 0. 0.] 9 [ 0. 0. 6. 13. 10. 0. 0. 0.]] 10 0
1 # 分割数据,将 25% 的数据作为测试集,其余作为训练集(你也可以指定其他比例的数据作为训练集) 2 train_x, test_x, train_y, test_y = train_test_split(data, digits.target, test_size=0.25, random_state=33) 3 # 采用 Z-Score 规范化 4 ss = preprocessing.StandardScaler() 5 train_ss_x = ss.fit_transform(train_x) 6 test_ss_x = ss.transform(test_x) 7 然后我们构造一个 KNN 分类器 knn,把训练集的数据传入构造好的 knn,并通过测试集进行结果预测,与测试集的结果进行对比,得到 KNN 分类器准确率,代码如下: 8 # 创建 KNN 分类器 9 knn = KNeighborsClassifier() 10 knn.fit(train_ss_x, train_y) 11 predict_y = knn.predict(test_ss_x) 12 print("KNN 准确率: %.4lf" % accuracy_score(predict_y, test_y))
1 KNN 准确率: 0.975
1 # 创建 SVM 分类器 2 svm = SVC() 3 svm.fit(train_ss_x, train_y) 4 predict_y=svm.predict(test_ss_x) 5 print('SVM 准确率: %0.4lf' % accuracy_score(predict_y, test_y)) 6 # 采用 Min-Max 规范化 7 mm = preprocessing.MinMaxScaler() 8 train_mm_x = mm.fit_transform(train_x) 9 test_mm_x = mm.transform(test_x) 10 # 创建 Naive Bayes 分类器 11 mnb = MultinomialNB() 12 mnb.fit(train_mm_x, train_y) 13 predict_y = mnb.predict(test_mm_x) 14 print(" 多项式朴素贝叶斯准确率: %.4lf" % accuracy_score(predict_y, test_y)) 15 # 创建 CART 决策树分类器 16 dtc = DecisionTreeClassifier() 17 dtc.fit(train_mm_x, train_y) 18 predict_y = dtc.predict(test_mm_x) 19 print("CART 决策树准确率: %.4lf" % accuracy_score(predict_y, test_y))
1 SVM 准确率: 0.9867 2 多项式朴素贝叶斯准确率: 0.8844 3 CART 决策树准确率: 0.8556
1 from sklearn.model_selection import train_test_split 2 from sklearn import preprocessing 3 from sklearn.metrics import accuracy_score 4 from sklearn.datasets import load_digits 5 from sklearn.neighbors import KNeighborsClassifier 6 from sklearn.svm import SVC 7 from sklearn.naive_bayes import MultinomialNB 8 from sklearn.tree import DecisionTreeClassifier 9 import matplotlib.pyplot as plt
转载于:https://www.cnblogs.com/jpcflyer/p/11111817.html
机器学习经典算法之KNN相关推荐
- 机器学习经典算法笔记——KNN
K近邻算法 这里面涉及到一些算法实现的包,比如得到的每个点,求距离后怎么处理的问题. # 前面求欧氏距离就不赘述了,这里主要是补充一点求出结果后怎么处理的问题 nearest = np.argsort ...
- 机器学习经典算法具体解释及Python实现--K近邻(KNN)算法
(一)KNN依旧是一种监督学习算法 KNN(K Nearest Neighbors,K近邻 )算法是机器学习全部算法中理论最简单.最好理解的.KNN是一种基于实例的学习,通过计算新数据与训练数据特征值 ...
- 免费技术直播:唐宇迪带你一节课了解机器学习经典算法
常常有小伙伴在后台反馈:机器学习经典算法有哪些? 自学难度大又没有效果,该怎么办? CSDN为了解决这个难题,联合唐宇迪老师为大家带来了一场精彩的直播[一节课掌握机器学习经典算法-线性回归模型].本次 ...
- 调包侠福音!机器学习经典算法开源教程(附参数详解及代码实现)
Datawhale 作者:赵楠.杨开漠.谢文昕.张雨 寄语:本文针对5大机器学习经典算法,梳理了其模型.策略和求解等方面的内容,同时给出了其对应sklearn的参数详解和代码实现,帮助学习者入门和巩固 ...
- 机器学习经典算法之线性回归sklearn实现
机器学习经典算法之线性回归sklearn实现 from sklearn import linear_model from sklearn import datasets import numpy as ...
- 数据挖掘十大经典算法之——KNN 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
- 机器学习初学者手抄本:数学基础、机器学习经典算法、统计学习方法等
机器学习怎么学?当然是系统地学习了.没有时间这么办呢?利用碎片时间学习!很多人一天要花 2 个小时通勤,通勤路上有很多时间看手机.于是我把一些机器学习的基础知识做成了在线的机器学习手册,只需打开微信收 ...
- 数学基础、机器学习经典算法、统计学习方法,这份机器学习在线手册来帮你...
机器学习怎么学?当然是系统地学习了.没有时间这么办呢?利用碎片时间学习!很多人一天要花 2 个小时通勤,通勤路上有很多时间看手机.于是我把一些机器学习的基础知识做成了在线的机器学习手册,只需打开微信收 ...
- 机器学习经典算法实践_服务机器学习算法的系统设计-不同环境下管道的最佳实践
机器学习经典算法实践 "Eureka"! While working on a persistently difficult-to-solve problem, you disco ...
最新文章
- mysql存储过程加多个创建表_mysql 存储过程创建多个表
- Windows2012R2 Hyper-v3.0 高可用群集安装及配置(Live Migration)
- vba怎么安装_VBA还要学吗?怎么入门Excel VBA?
- 简单七步让你轻松安全迁移网站
- 物化视图的刷新方式说明
- 0x00007FFEBAD050D8 处(位于 first.exe 中)有未经处理的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000000DD73CE
- PHP基础语法的学习
- 利用Windows 2003系统中实现两个网段的路由
- [实变函数]2.2 聚点 (cluster point), 内点 (interior point), 界点 (boundary point)
- 传媒业进入B2C领域:香港商报推爱购商城
- 帧率常量15可以随便改,问为什么是15,是想暴露自己不懂编程?
- 设计模式之Interpreter(解释器)
- matlab 峰值提取,Matlab2019b信号峰值检测与提取
- sunShine问题
- 计算机音乐谱大全eiei,彼岸吉他谱频道-求谱eiei,偶像练习生,求吉他谱,尤克里里谱,简谱,五线谱,钢琴谱,乐队总谱,乐谱-彼岸吉他 - 一站式吉他爱好者服务平台...
- 星级评分原理 N次重写的分析
- Latex角标(subscript/superscript)
- ansible中的加密
- LeetCode 581. 最短无序连续子数组 (unfinished 排序+双指针)
- icp许可证和edi许可证区别是什么?