python - XGBoost 回归器中的 "reg_alpha"参数。使用高值是不是不好?

标签 python xgboost

我正在使用网格搜索执行超参数调整,我意识到我变得过度拟合了......我尝试了很多方法来减少它,改变了 "gamma", "subsample", "max_depth"参数来减少它,但我仍然过度拟合......
然后,我将“reg_alpha”参数值增加到 > 30 ....他们我的模型大大减少了过度拟合。我知道这个参数指的是L1 regularization关于权重的术语,也许这就是解决我的问题的原因。
我只想知道使用 reg_alpha 的高值是否有任何问题像这样?
我很感激你的帮助:D

最佳答案

reg_alpha 惩罚增加成本函数的特征。这意味着它会找到不会提高准确性的特征。但这使得预测线更平滑。
在某些问题上,我还增加了 reg_alpha > 30,因为它减少了过拟合和测试错误。
但是如果它是一个回归问题,它的预测将接近测试集的平均值,并且它可能无法很好地捕捉异常。
所以我可以说你可以增加它,只要你的测试准确度没有开始下降。
最后,当增加 reg_alpha 时,保持 max_depth 较小可能是一个好习惯。

关于python - XGBoost 回归器中的 "reg_alpha"参数。使用高值是不是不好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63368841/

相关文章:

python - 在 python 中从文件中检索字典键时出错

python - 将 python 操作转换为 numpy

xgboost - XGBoost 中多类分类的损失函数是什么?

scala - Spark 中的 XGBoost 模型 --> 缺失值处理

python - xgboost、extratreeclassifier 和 randomforrestclasiffier 之间有什么区别?

python - 在 PyCharm 中以退出代码 137 结束进程

python - python中以路径为参数删除特定文件夹

python - 如何用iterparse来写?

python - 来自其他 python 脚本的 PyInvoke 执行任务

scala - DMLC 在 Spark-1.6.1 上的 XGBoost-4j