GridSearchCV.grid_scores_和mean_validation_score报错_allein_STR的博客-程序员秘密_gridsearchcv 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

智能推荐

Ubuntu19配置静态IP的坑点_K放假的博客-程序员秘密

#铭记一下Ubuntu19配置静态IP的坑点#按照惯例,先查看本机网卡[email protected]:~$ ifconfigens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.101.141 netmask 255.255.255.0 broadcast 192.168.101...

java 动态编译_eason1015的博客-程序员秘密

在Sun JDK 1.2及后续版本中,包含了一组可在程序运行时刻编译和执行Java代码的API。这些API被包含在tools.jar类库中。这个功能允许Java程序在运行时动态编译、执行小的代码块,在有些情况下这个功能会让Java应用程序的架构更加灵活、开放。 本文假定读者已经在计算机中安装并配置好了Sun JDK 1.2或更高的版本,并对javac编译器命令有所了解。在Java程...

ubuntu安装fcitx_Bo_Lee的博客-程序员秘密_ubuntu fcitx

<br />Ubuntu10.04默认的是ibus,但是有些功能实在有限,因此更换,首先卸载ibus:sudo apt-get remove ibus;<br />仍后安装fcitx,可以到新得力软件软件安装,也可以直接在终端安装:sudo apt-get install fcitx;<br />接下来就是乱码问题:<br />1,修改fcitx配置:sudo gedit ~/.fcitx/config<br />2.将第一个改一下:<br />[程序]<br />显示字体(中)=AR PL ShanH

Java中httpclient.jar和httpcore.jar版本差异带来的异常_loongshawn的博客-程序员秘密_httpcore.jar

碰到以下两个异常时:java.lang.ClassNotFoundException: org.apache.http.ssl.TrustStrategy、java.lang.NoClassDefFoundError: org/apache/http/conn/ssl/NoopHostnameVerifier需要升级httpclient.jar和httpcore.jar包至4.4版本

控制Hive MAP个数详解_suchy_sz的博客-程序员秘密_hive的map个数参数

Hive的MAP数或者说MAPREDUCE的MAP数是由谁来决定的呢?inputsplit size,那么对于每一个inputsplit size是如何计算出来的,这是做MAP数调整的关键.HADOOP给出了Inputformat接口用于描述输入数据的格式,其中一个关键的方法就是getSplits,对输入的数据进行分片.Hive对InputFormat进行了封装:而具体采用的实现是...

Java的Date类与Calendar类_weixin_30642267的博客-程序员秘密

一:Date类  在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理。这里简单介绍一下Date类的使用。  1.使用Date类代表当前系统时间  Date date = new Date(); System.out.println(date);  使用Date类的默认构造...

随便推点

logback-spring.xml配置及说明_koney·C的博客-程序员秘密_resetjul

&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator"&gt; &lt;resetJUL&gt;true&lt;/resetJUL&gt;&lt;/contextListener&gt;&lt;!--ConsoleAppender 用于在屏幕上输出日志--&gt;&lt;

Python+Pychram+pytest环境搭建_猿小鱼的博客-程序员秘密_python+pytest环境搭建

https://download.csdn.net/download/u014096024/211056763、Pycharm 配置python开发环境3.1 安装 python官网下载地址:https://www.python.org/downloads/目前已经更新到了3.9.5Python3.6安装步骤去命令行输入:python3.2 安装 selenium打开cmd窗口,使用命令“pip install selenium”安装selenium然后用

图形加速卡技术_eattonton的博客-程序员秘密_图像加速卡

首先本文非常专业地道,当然,新手朋友们肯定会晕的,我看着都头大…… 不过其讲解的知识非常系统详细。基本上,显卡的所有基础知识都涵盖了,有兴趣的朋友可以仔细看看、学习一下。眼泪我也同样再复习复习。另外,这篇虽然是转载,但个人感觉应该是精华的模范(可惜太深奥了点),小星星不是要写精华定义么,给你个参考。当然了,这篇帖子归入索引就行了,精华就没必要了,毕竟我们还是要提倡适合新手的好文章。最后,感谢下本文

Arduino101学习笔记(十一)—— 蓝牙BLE_KEVINZHAO124517的博客-程序员秘密

一、BLE技术简介 第四代蓝牙既包括传统的蓝牙,现在标有“蓝牙经典”,和新的低功耗蓝牙(Bluetooth LE,或BLE)。低数据速率,低功耗优化。 蓝牙LE广播就像一个社区公告栏。连接到它的计算机就像是阅读公告板的社区成员一样。每一个无线电作为一个公告板或读者。如果你的收音机是一个公告板(称为蓝牙LE的说法一个外围设备)揭示数据中的所有收音机在社区看。如果你的...

数据库压力测试--MySQL数据库快速插入大量数据_高自强的博客的博客-程序员秘密

一、前言应本次数据库压力测试的要求,测试数据记录至少为千万级,所以,问题来了,如何快速插入大量数据.二、解决方法一第一种解决方法是在MySQL终端中实现的,具体方法如下. a.打开MySQl数据库;mysql -u root -pb.创建数据库;mysql> create database insertData;use insertData;create CREATE TABLE InsertTa

CocosCreator之RichText富文本_神兽白泽的博客-程序员秘密_cocos 富文本

&gt;&gt;&gt;&gt;&gt;官方文档:RichText 组件参考 · Cocos Creator富文本优缺点优点:自定义颜色,大小,描边,还能加图片。对于复杂的文本表现力更好。缺点:cocos的富文本是由Label组件拼装实现的。低版本会打断合批。Label太多导致卡顿。此处仅测试几个常用标签:// 换行符&lt;br/&gt;// 加粗&lt;b&gt; &lt;/b&gt;// 字体颜色&lt;color=#FFFFFF&gt; &lt;/color.

推荐文章

热门文章

相关标签