使用fit函数时,报错KeyError: ‘squared_error‘
关键代码
param_grid_simple = {"criterion": ["squared_error","poisson"], 'n_estimators': [*range(20,100,5)], 'max_depth': [*range(10,25,2)], "max_features": ["log2","sqrt",16,32,64,"auto"], "min_impurity_decrease": [*np.arange(0,5,10)]}
search = GridSearchCV(estimator=reg,param_grid=param_grid_simple,scoring = "neg_mean_squared_error",verbose = True,cv = cv,n_jobs=-1)
search.fit(X,y)
报错信息
~/anaconda3/lib/python3.8/site-packages/sklearn/ensemble/_forest.py in _parallel_build_trees(tree, forest, X, y, sample_weight, tree_idx, n_trees, verbose, class_weight, n_samples_bootstrap)166 indices=indices)167
--> 168 tree.fit(X, y, sample_weight=curr_sample_weight, check_input=False)169 else:170 tree.fit(X, y, sample_weight=sample_weight, check_input=False)~/anaconda3/lib/python3.8/site-packages/sklearn/tree/_classes.py in fit(self, X, y, sample_weight, check_input, X_idx_sorted)1240 """1241
-> 1242 super().fit(1243 X, y,1244 sample_weight=sample_weight,~/anaconda3/lib/python3.8/site-packages/sklearn/tree/_classes.py in fit(self, X, y, sample_weight, check_input, X_idx_sorted)334 self.n_classes_)335 else:
--> 336 criterion = CRITERIA_REG[self.criterion](self.n_outputs_,337 n_samples)338 KeyError: 'squared_error'
分析
当访问不在dict中的键时会引发KeyError错误,则 criterion
的参数 squared_error
可能不存在。由于已知有该参数值,推测可能是自己 sklearn版本问题。查询自己的 sklearn 版本为 0.23 ,而官方早已到 1.0 以上了。
解决
查询 sklearn 的官方文档看到
scikit-learn 1.1.dev0
scikit-learn 0.23.2
可以看到不同版本的criterion参数的值不同,可以考虑
- 将该值改为对应版本的值,如 ‘mse’。
- 或是直接更改 sklearn 版本。
由于官方文档中说:“mse”在 v1.0 中已弃用,并将在 1.2 版中删除,"squared_error"是等价的。因此采用了升级 sklearn 的方式。
pip install scikit-learn==1.0.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
相关文章
- Python KeyError – 常用解决办法
- sklearn.ensemble.RandomForestRegressor
- 指路各个版本sklearn文档
- jupyter 更新sklearn到最新版本
使用fit函数时,报错KeyError: ‘squared_error‘相关推荐
- 一次ffmpeg -c copy 在avformat_write_header函数处报错:Could not find tag for codec rawvideo in stream #0的原因分析
一.背景 在一次处理视频转换的时候使用了copy模式,然后在avformat_write_header函数处报错:Could not find tag for codec rawvideo in st ...
- 使用PIL的Image.fromarray报错KeyError: ((1, 1, 1), ‘|u1‘)
使用PIL的Image.fromarray报错 错误:使用PIL的Image.fromarray报错KeyError: ((1, 1, 1), '|u1') 原因:Pillow的fromarray函数 ...
- 报错 KeyError
当报错KeyError 1 时,多半是你使用一个不存在的key时报的错 来个dome a = {1:"a",2:"b",3:"c"}prin ...
- 求指教:报错KeyError: “None of [Index([‘2022/1/1 0:00:00‘, ... ],\n dtype=‘object‘] are in the [index]“
求指教:Python运行报错KeyError: "None of [Index(['2022/1/1 0:00:00', - '2022/1/8 23:59:45'],\n dtype='o ...
- php 正则报错,PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析...
本文实例讲述了PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法.分享给大家供大家参考,具体如下: 环境错误级别:error ...
- verilog “function”函数一直报错解决办法
verilog "function"函数一直报错 ,经qq群中的大佬指点,发现是在 function 函数内部的逻辑部分缺少 begin--end导致.在此记录一下. functi ...
- Windos环境下kafka配置启动Zookeeper时,报错:Invalid config, exiting abnormally.
Windos环境下kafka配置启动ZooKeeper时,报错:Invalid config, exiting abnormally. 执行命令: D:\kafkaOnWindows\kafka_2. ...
- linux执行.sh文件时,报错:XXX.sh: Permission denied(没有权限)
linux执行.sh文件时,报错:XXX.sh: Permission denied(没有权限) 解决方法:修改对该文件的权限 例如报错: bash: ./zkServer.sh: Permissio ...
- gpt磁盘标签linux,解决安装CentOS6.5时 报错 提示“sda 必须有一个GPT磁盘标签”
解决安装CentOS6.5时 报错 提示"sda 必须有一个GPT磁盘标签" 今天想在thinkpad t430u上安装CentOS6.5 时总共遇到了两个问题 1> u盘安 ...
最新文章
- Python:目录和文件的操作模块os.path和OS常用方法
- PHP str_replace() 和str_ireplace()函数
- 图片无法删除要计算机管理员,存在桌面的图片删不掉,怎么处理?提示是需要管理员权限。...
- 力扣1025.除数博弈
- 2008年度最佳开源CMS大奖赛开幕
- python语言规范_python语言规范
- 什么是RIA 技术?
- 3.FXBLUE跟单原理
- 手机文档转html,手机金山文档怎么转换成Word文档电脑手机?
- SFI立昌SHA系列方案与应用
- 微信公众号之在图片上添加热点链接
- 在土豆传的第一篇视频
- Fiddler安装与配置
- 光圈,快门, 曝光,焦距, ISO,景深。
- vs2019 加载.obj文件报错找不到403 IIS 3D可视化.obj/.mtl文件找不到
- 医院计算机培训ppt,计算机培训讲义.ppt
- Vue 计算时间差,几分钟之前、几小时前、几天之前、几个月前
- 如何找到高清照片,4K高清风景照片,建议收藏!
- iOS15第二个测试版发布!修复大量bug,稳定性提升
- 数据库中间件 Sharding-JDBC 源码分析 —— SQL 执行