【机器学习】交叉验证筛选参数K值和weight

交叉验证

在这里插入图片描述

导包

import numpy as npfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn import datasets#model_selection :模型选择
# cross_val_score: 交叉 ,validation:验证(测试)
#交叉验证
from sklearn.model_selection import cross_val_score

读取datasets中鸢尾花(yuan1wei3hua)数据

X,y= datasets.load_iris(True)
X.shape

(150, 4)

一般情况不会超过数据的开方数

#参考
150**0.5
#K 选择 1~13

12.24744871391589

knn = KNeighborsClassifier()score = cross_val_score(knn,X,y,scoring='balanced_accuracy',cv=11)
score.mean()

0.968181818181818

应用cross_val_score筛选 n_neighbors k值

errors =[]
for k in range(1,14):knn = KNeighborsClassifier(n_neighbors=k)score = cross_val_score(knn,X,y, scoring='accuracy',cv = 6).mean()#误差越小 说明K选择越合适 越好errors.append(1-score)import matplotlib.pyplot as plt
%matplotlib inline#k = 11时 误差最小 说明最合适的k值
plt.plot(np.arange(1,14),errors)

[<matplotlib.lines.Line2D at 0x17ece9ff0b8>]
在这里插入图片描述

应用cross_val_score筛选 weights

weights =['uniform','distance']for w  in weights:knn  = KNeighborsClassifier(n_neighbors = 11,weights= w)print(w,cross_val_score(knn,X,y, scoring='accuracy',cv = 6).mean())

uniform 0.98070987654321
distance 0.9799382716049383

模型如何调参的,参数调节

result = {}
for k in range(1,14):for w  in weights:knn = KNeighborsClassifier(n_neighbors=k,weights=w)sm = cross_val_score(knn,X,y,scoring='accuracy',cv=6).mean()result[w+str(k)] =sma =result.values()
list(a)np.array(list(a)).argmax()

20

list(result)[20]

‘uniform11’

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/456136.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jqGrid列的统计

$("#List").jqGrid({ url: "${pageContext.request.contextPath}/cbfx/getCbhzList.do", datatype: "json", mtype: GET, colNames:["成本类别","费用","去年同期费用","备注"], colMod…

手机只能签荣耀!最忠诚代言人胡歌喊你去天猫超品日

在你心中&#xff0c;男神胡歌是什么样子&#xff1f;“御剑乘风来&#xff0c;除魔天地间。”也许是《仙剑奇侠传》里飞扬跋扈、青春不羁的侠客李逍遥。“遍识天下英雄路&#xff0c;俯首江左有梅郎。”也许是《琅铘榜》中才智冠天下&#xff0c;远在江湖却名动帝辇的麒麟才子…

欧式距离与曼哈顿距离

欧式距离&#xff0c;其实就是应用勾股定理计算两个点的直线距离 二维空间的公式 其中&#xff0c; 为点与点之间的欧氏距离&#xff1b;为点到原点的欧氏距离。 三维空间的公式 n维空间的公式 曼哈顿距离&#xff0c;就是表示两个点在标准坐标系上的绝对轴距之和&#xff1a…

在maven pom.xml中加载不同的properties ,如localhost 和 dev master等jdbc.properties 中的链接不一样...

【参考】&#xff1a;maven pom.xml加载不同properties配置[转] 首先 看看效果&#xff1a; 点开我们项目中的Maven projects 后&#xff0c;会发现右侧 我们profile有个可勾选选项。默认勾选localhost。localhost对应项目启动后&#xff0c;会加载配置左侧localhost文件夹下面…

4.8-全栈Java笔记:包机制

包机制是java中管理类的重要手段。 开发中&#xff0c;我们会遇到大量同名的类&#xff0c;通过包我们很容易对解决类重名的问题&#xff0c;也可以实现对类的有效管理。 包对于类&#xff0c;相当于&#xff0c;文件夹对于文件的作用。package我们通过package实现对类的管理&a…

python安装以及版本检测

Windows 安装 Python 3 目前Python有两个大版本&#xff0c;分别是 2.X 和 3.X &#xff0c;我们的教程基于最新版本 3.6.1 首先我们需要获取Python的安装包&#xff0c;可以从官网获取&#xff0c;如果你因为没有VPN工具而无法访问官网的话&#xff0c;我已经将它放在网盘了&…

【机器学习】梯度下降原理

import numpy as np import matplotlib.pyplot as plt %matplotlib inlinef lambda x :(x-3)**22.5*x-7.5 f2 lambda x :-(x-3)**22.5*x-7.5求解导数 导数为0 取最小值 x np.linspace(-2,5,100) y f(x) plt.plot(x,y)梯度下降求最小值 #导数函数 d lambda x:2*(x-3)*12.…

C语言的面向对象设计-对X264/FFMPEG架构探讨

本文贡献给ZSVC开源社区&#xff08;https://sourceforge.net/projects/zsvc/&#xff09;&#xff0c;他们是来自于中国各高校的年轻学子&#xff0c;是满怀激情与梦想的人&#xff0c;他们将用自己的勤劳与智慧在世界开源软件领域为中国留下脚步&#xff0c;该社区提供大量视…

linux gtest安装

1. 安装cmake, 具体步骤这里不详说。 2. 下载源码&#xff1a;https://codeload.github.com/google/googletest/zip/release-1.8.0 3. 解压源码&#xff1a;unzip googletest-release-1.8.0.zip 4. 进入源码目录&#xff1a;cd googletest-release-1.8.0 5. 创建并进入目录buil…

基于物联网的智能垃圾桶设计

前言 目前我国各城市包括首都正在深入开展争创国家卫生城市活动&#xff0c;这是全国爱国卫生运动委员会办公室评选命名的国家级卫生优秀城市的最高荣誉&#xff0c;是一个城市综合素质的重要标志。沈阳市正在深入开展创建国家卫生城市和建设国家健康城市(以下简称“双城双创”…

学习实践 - 收藏集 - 掘金

2道面试题&#xff1a;输入URL按回车&HTTP2 - 掘金通过几轮面试&#xff0c;我发现真正那种问答的技术面&#xff0c;写一堆项目真不如去刷技术文章作用大&#xff0c;因此刷了一段时间的博客和掘金&#xff0c;整理下曾经被问到的2道面试题 从浏览器输入URL按回车到页面显…

【机器学习】自己手写实现线性回归,梯度下降 原理

导包 import numpy as npimport matplotlib.pyplot as plt %matplotlib inlinefrom sklearn.linear_model import LinearRegression创建数据 X np.linspace(2,10,20).reshape(-1,1)# f(x) wx b y np.random.randint(1,6,size 1)*X np.random.randint(-5,5,size 1)# 噪…

跨站的艺术-XSS Fuzzing 的技巧

作者 | 张祖优(Fooying) 腾讯云 云鼎实验室 对于XSS的漏洞挖掘过程&#xff0c;其实就是一个使用Payload不断测试和调整再测试的过程&#xff0c;这个过程我们把它叫做Fuzzing&#xff1b;同样是Fuzzing&#xff0c;有些人挖洞比较高效&#xff0c;有些人却不那么容易挖出漏洞…

H.264/AVC视频压缩编码标准的新进展

H .264/AVC是由ISO/IEC与ITU-T组成的联合视频组(JVT)制定的新一代视频压缩编码标准&#xff0c;于2003年5月完成制订。相对于先前的标准&#xff0c;H.264/AVC无论在压缩效率、还是在网络适应性方面都有明显的提高&#xff0c;因此&#xff0c;业界普遍预测其将在未来的视频应用…

python注释及语句分类

注释 注释就是&#xff1a;注解&#xff0c;解释。 主要用于在代码中给代码标识出相关的文字提示(提高代码的可读性) 或 调试程序。Python中注释分为两类&#xff1a; 1.单行注释 &#xff1a; 单行注释以 # 号开头&#xff0c;在当前行内&#xff0c;# 号后面的内容就是注释…

【机器学习】回归误差:MSE、RMSE、MAE、R2、Adjusted R2 +方差、协方差、标准差(标准偏差/均方差)、均方误差、均方根误差(标准误差)、均方根解释

我们通常采用MSE、RMSE、MAE、R2来评价回归预测算法。 1、均方误差&#xff1a;MSE&#xff08;Mean Squared Error&#xff09; 其中&#xff0c;为测试集上真实值-预测值。 def rms(y_test, y): return sp.mean((y_test - y) ** 2) 2、均方根误差&#xff1a;RMSE&#xff…

大院大所合作对接会7天倒计时!亮点抢先看

为什么80%的码农都做不了架构师&#xff1f;>>> 推动产业特色发展&#xff0c;提升企业自主创新能力&#xff0c;加快成果转化落地&#xff0c;继江苏发展大会之后&#xff0c;围绕“聚力创新”&#xff0c;7月5日-6日&#xff0c;中国江苏大院大所合作对接会暨第六…

通过取父级for循环的i来理解闭包,iife,匿名函数

在使用for循环的时候&#xff0c;假如需要在循环体中添加一个匿名函数处理其他的事情&#xff0c;那么&#xff0c;在这个匿名函数内&#xff0c;如果需要用到对应的i&#xff0c;因为闭包的缘故&#xff0c;循环体循环结束后才返回i&#xff0c;所以i最终为最后一次的数值。闭…

H.264将普及 视频编码讲坛之H.264前世今生

随着HDTV等高清资源的兴起&#xff0c;H.264这个规范频频出现在我们眼前&#xff0c;HD-DVD和蓝光DVD均计划采用这一标准进行节目制作。而且自2005年下半年以来&#xff0c;无论是NVIDIA还是ATI都把支持H.264硬件解码加速作为自己最值得夸耀的视频技术。而数码播放器领域也吹来…

python命令方式和关键字

常用命名方式 不管是文件&#xff0c;变量&#xff0c;函数或类名等等&#xff0c;命名都要遵守一个基本规范&#xff0c;就是&#xff0c;命名要有意义&#xff0c;易读易懂。因此&#xff0c;两种主流的命名方式出现了&#xff0c;他们分别是驼峰命名方法 和 使用下划线分隔…