我试图在Ubuntu服务器上通过tidymodels
运行一个xgboost
模型,但得到了以下错误:Resample01: preprocessor 1/1: Error: C stack usage 7977188 is too close to the limit
我已经尝试了谷歌搜索C堆栈使用错误的所有解决方案(大多数建议删除不必要的递归并设置ulimit -s unlimited
,但都没有帮助。我基本上是在遵循this guide来调优模型。我的数据集大约是2000行乘900列,并且我只使用了一个包含10个组的group_vfold_cv()
交叉验证,所以没什么特别的。服务器有30 of的内存,300 of的固态硬盘和4个核心。完全相同的代码可以在我的windows 10笔记本电脑上运行,它的内存要少得多,所以它一定与操作系统有关。
所有的包都是最新的,我试着从源码安装xgboost,没有任何帮助。
任何帮助都将不胜感激。
发布于 2021-09-22 17:41:58
看起来这个错误实际上是由于recipe()
函数使用了一个带有已知错误see here的递归函数fun_calls()
造成的。解决方案是使用update_role()
而不是公式来指定模型。
https://stackoverflow.com/questions/69288436
复制相似问题