You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用XGBoost回归器配合sklearn learning_curve的性能指标疑问

相关问题解答

1. learning_curve返回的tr_scs、test_scs默认指标说明

你调用learning_curve时未指定scoring参数,scikit-learn会默认使用传入模型的score()方法作为评估标准。对于XGBRegressor回归器,score()方法返回的是决定系数R²,取值范围通常在0~1之间,数值越高代表拟合效果越好。
这里需要注意:XGBoost默认的reg:squarederror是模型训练阶段优化的损失函数,和scikit-learn评估环节用的默认指标没有关联,因此默认返回的tr_scs、test_scs结果并不是以平方误差为单位。

2. 从cross_val_score结果计算均方误差的方法

scikit-learn的评分规则统一遵循「得分越高模型效果越好」的设计,因此neg_mean_squared_error返回的是负的均方误差,你只需对结果取反即可得到常规的均方误差数值,示例如下:

# 转换为正的均方误差
mse_scores = -cv_results
# 计算5折交叉验证的平均均方误差
avg_mse = mse_scores.mean()

如果你希望learning_curve也输出均方误差相关的结果,可以在调用时指定scoring="neg_mean_squared_error",之后同样对tr_scs、test_scs取反即可得到平方误差单位的性能结果。


内容的提问来源于stack exchange,提问作者haneulkim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 11:18:04