python - 在 pycaret 中使用 tune_model() 时,有没有办法查看所有尝试过的模型的指标和超参数?
问题描述
我正在使用 pycaret 2.2.3 这是我正在运行的代码的基本版本:
from pycaret.regression import *
setup = setup(data = data_used, target = 'BAI')
lightgbm = create_model('lightgbm')
tuned_lightgbm = tune_model(lightgbm)
print(tuned_lightgbm)
功能tune_model()
是
对 10 个候选者中的每一个进行拟合 10 次,总共 100 次拟合
结果,我从测试的 100 个模型中获得了最佳拟合模型的 10 倍交叉验证的指标:
MAE MSE RMSE R2 RMSLE MAPE
0 2.0706 7.6366 2.7634 0.9658 0.1449 0.1540
1 2.2962 9.3864 3.0637 0.9557 0.1599 0.1489
2 2.2041 9.6054 3.0993 0.9585 0.2201 0.1907
3 1.9354 8.4334 2.9040 0.9539 0.2101 0.3200
4 1.8326 7.5099 2.7404 0.9584 0.1853 0.2637
5 1.8118 8.5014 2.9157 0.9289 0.2276 0.4220
6 1.4395 4.1903 2.0470 0.9803 0.1414 0.1685
7 2.9774 34.8474 5.9032 0.7861 0.4410 0.4381
8 2.2774 9.8567 3.1395 0.9480 0.1415 0.1194
9 2.1810 8.5512 2.9242 0.9605 0.1607 0.2271
Mean 2.1026 10.8519 3.1501 0.9396 0.2032 0.2452
SD 0.3842 8.1427 0.9639 0.0526 0.0851 0.1082
当我使用时,print(tuned_lightgbm)
我得到以下超参数:
LGBMRegressor(bagging_fraction=0.8, bagging_freq=4, boosting_type='gbdt',
class_weight=None, colsample_bytree=1.0, feature_fraction=0.4,
importance_type='split', learning_rate=0.062, max_depth=-1,
min_child_samples=55, min_child_weight=0.001, min_split_gain=0.8,
n_estimators=170, n_jobs=-1, num_leaves=50, objective=None,
random_state=989, reg_alpha=4, reg_lambda=0.4, silent=True,
subsample=1.0, subsample_for_bin=200000, subsample_freq=0)
有没有办法查看/打印/访问所有 100 个测试模型的指标和超参数?
解决方案
推荐阅读
- git - 为远程存储库定义 commit.template
- c# - 在 C# 中使用方法属性调用非静态方法
- algorithm - 查找子字符串/后缀等之间的最高对齐分数
- spring-boot-2 - SpringBoot2.3.1 Web项目只扩展EnableWebMvcConfiguration抛出异常
- python - 如何为 ctypes 消息框设置坐标?
- r - R 未使用 naniar 包或 colSums 检测所有缺失值
- http - 在进行部分 http 范围请求时,浏览器如何知道要请求的范围?
- python - 分别对训练集和测试集进行特征缩放还是使用相同的缩放器?
- java - Apple Pay 证书更新 | SSLHandshakeException:收到致命警报:handshake_failure
- r - 将系数从模型自动传递给函数