GridSearchCV.grid_scores_和mean_validation_score报错_gridsearch grid_scores_-程序员宅基地

技术标签: bug  

0. 写在前面

参考书

《Python数据科学手册》

工具

python3.5.1,Jupyter Notebook

1. 问题描述和解决过程

在P438页,5.13.4 示例:不是很朴素的贝叶斯中的2. 使用自定义评估器小节中有这样一行代码

scores = [val.mean_validation_score for val in grid.grid_scores_]

运行之后报错:

AttributeError: ‘GridSearchCV’ object has no attribute ‘grid_scores_’


经过百度了之后,可以知道grid_scores_在最新的sklearn中已经被弃用了,换成了cv_results_,参考链接:https://blog.csdn.net/weixin_40283816/article/details/83346098

那么,更改这个参数后,依然报错:

AttributeError: ‘str’ object has no attribute ‘mean_validation_score’


这个问题就再也没有搜到好的解决方案了,所以我去查了GridSearchCV的文档:https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html

然后发现,关于cv_results_的内容如下:

这就很尴尬了,所以没有一个参数是包含validation关键字的,我的理解是,验证集和测试集在某种情况下可以认为是等价的。所以我猜测mean_validation_score对应的应该就是mean_test_score。

这样,原来的代码就改成了

scores = grid.cv_results_['mean_test_score']

为了证明我的猜想是正确的,所以,按照得到的scores结果,顺着其他的代码,知道最后绘图:

事实证明,跟书上得到图一毛一样,所以证明我对源代码修改的猜想是正确的。

即证明了:

旧版本代码:scores = [val.mean_validation_score for val in grid.grid_scores_]

与新版本代码:scores = grid.cv_results_['mean_test_score']

等价!
 ———————————————— 
版权声明:本文为CSDN博主「李英俊小朋友」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_21579045/article/details/91435570

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/allein_STR/article/details/99696493

智能推荐

涨粉6万,带货百万,人类幼崽竟靠干饭实力圈粉?_果集云略的博客-程序员宅基地

文章浏览阅读294次。“可爱”“吃货”是视频号馒头小胖墩儿出现频率最高的词,许多用户看到才3岁的馒头小朋友努力干饭的搞笑视频,纷纷被他圈粉了。2020年11月,馒头麻麻开始在视频号运营账号馒头小胖墩儿,凭借3岁儿子的干饭视频,吸引众多妈妈、奶奶粉的关注,单条视频吸粉6万,运营至今累计吸引40万用户关注。9月,馒头麻麻联合爱逛在视频号开启直播带货,突破10万销售额。双11期间,馒头妈妈连续直播10天,带货销售额超100万。而近期几场双12直播销售额也达到了50万+。作为母婴育儿博主,馒头麻麻是如何抓住视频号流量密码?又是如何

PySide的QStackedWidget例子_pyside stackedwidget-程序员宅基地

文章浏览阅读2.1k次。环境:python 2.7.8pyside 1.2.2_pyside stackedwidget

MyBatis动态传入表名查询数据-程序员宅基地

文章浏览阅读650次。@RequestMapping("/searchSjgl.htm") @ResponseBody publicList<IdSjgl>searchSjgl(HttpServletRequestrequest)throwsUnsupportedEncodingException{ List<IdSjgl>list=sjglServic..._mybatis 根据表名获取表元数据

YNB/酵母氮源基础 (含硫酸铵,不含氨基酸)的基本信息(供应SD/-Ade/-His/-Leu/-Met-Trp/-Ura with Agar/SD/-Cys/-Met/Ura with Agar)_酵母氮源基础无氨基酸和硫酸氨_小编在火星的博客-程序员宅基地

文章浏览阅读511次。名称:YNB/酵母氮源基础 (含硫酸铵,不含氨基酸)英文名:YNB/Yeast Nitrogen Base (without Amino Acids)成分:Nitrogen SourceAmmonium Sulfate … 5.0 gCompounds Supplying Trace ElementsBoric Acid …500.0 μgCopper Sulfate … 40.0 μgPotassium Iodide … 100.0 μgFerric Chloride … 200.0 μ_酵母氮源基础无氨基酸和硫酸氨

fliplr函数-程序员宅基地

文章浏览阅读2.2k次,点赞2次,收藏6次。fliplr 左右翻转矩阵语法:B = fliplr(A)将矩阵A的列绕垂直轴进行左右翻转 matabc如果A是一个行向量,fliplr(A)将A中元素的顺序进行翻转。如果A是一个列向量,fliplr(A)还等于A。举例说明:例一:如果A是一个3×2的矩阵A =[1 4 2 5 3 6 ]fliplr(A)ans =..._fliplr函数

ZTE中兴通讯子公司(中兴智能视觉大数据):智能动态人脸识别高铁人证票核实管理系统-程序员宅基地

文章浏览阅读499次。 ZTE中兴通讯子公司(中兴智能视觉大数据):智能动态人脸识别高铁人证票核实管理系统 详细介绍 本系统是为了解决火车站、长途汽车站实行实名制后,需要对进站旅客进行人、证、票三合一查验而定制开发的一款产品。系统由前端人证票核验设备和后端应用管理平台组成。前端人证票核验设备部署在车站安检通道处,分别完成人、证、票的三合一核验。另外,系统还与公安部的黑名单库对接,实现嫌犯报警提醒...

随便推点

TypeScript----类型注解之数组与对象_typescript数组包对象的注解怎么写_羽千珏的博客-程序员宅基地

文章浏览阅读233次。TypeScript类型注解之数组// 初始化为空数组的时候需要添加类型注解let baskec: string[] = ['mike', 'james'];const dates = [new Date(), new Date()];// 二维数组const students = [['mike', 'nike'],['zhang'],['lise', 'san']];//提取值的时候帮助推断const player = baskec[0];const players = baske_typescript数组包对象的注解怎么写

代理模式(Proxy) Java实现-程序员宅基地

文章浏览阅读172次。代理模式代理(Proxy)定义代理模式是对象的结构模式。代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。代理模式结构所谓代理,就是一个人或者机构代表另一个人或者机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式类图如下:在代理模式中的角色:抽象对象角色:声明了目标对象和代理对象的共...

剑指offer(六十六)之机器人的运动范围_机器人的运动范围 剑指offer-程序员宅基地

文章浏览阅读2.1k次。题目描述地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达到多少个格子?代码:import java.u_机器人的运动范围 剑指offer

我要“冬眠”_c++冬眠-程序员宅基地

文章浏览阅读2.9k次。我要“冬眠” 作者:zfive5(zhaozidong)联系:[email protected] 道生一,一生二,二生三,三生万物。 老子--《道德经》 1. Hibernate由来Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。_c++冬眠

树莓派人脸识别打卡系统(python pyqt opencv)-程序员宅基地

文章浏览阅读9.6k次,点赞5次,收藏69次。界面效果图:每天的打卡记录存在txt文件中:局域网远程实时监控:用到的知识:1. opencv-python2. pyqt53. python-flask步骤:1. 人脸检测(adaboost + haar 特征)2. 人脸识别(lbp FaceRecognizer)3. 界面 pyqt。 日期、时间获取,控件、布局,多线程,界面更新、实时图像显示。4. 多线程,局域...

atitit 数字音频技术概论 艾提拉著 目录 1. 声学基础 2 1.1. 1.2人耳的听觉效应9 2 2. 第1章数字音频基础 2 2.1. 1.1音频的发展历史 2 2.2. 1.2音频的发展_数字音频概论考题-程序员宅基地

文章浏览阅读504次。atitit 数字音频技术概论 艾提拉著目录1. 声学基础 21.1. 1.2人耳的听觉效应9 22. 第1章数字音频基础 22.1. 1.1音频的发展历史 22.2. 1.2音频的发展方向 22.3. 1.4音频制作的硬件基础 32.4. 1.5音频的常见格式 33. 第3章音频信息采集与数字化28 33.1. 3.8.音频信息文件格式49 34..._数字音频概论考题