我试图通过Ubuntu服务器上的tidymodels
运行xgboost
模型,但我得到以下错误:Resample01: preprocessor 1/1: Error: C stack usage 7977188 is too close to the limit
我已经尝试了从谷歌C堆栈使用错误建议的所有解决方案(其中大多数都说要删除不必要的递归并设置ulimit -s unlimited
,但没有任何帮助。我基本上按照这个指南来调优模型。我的数据集大约是2000行乘900列,我只是使用group_vfold_cv()
交叉验证10组,所以没有什么疯狂的。服务器有30gb的ram, 300gb的ssd和4核。同样的代码在我的windows 10笔记本电脑上运行,但内存少得多,所以它一定和操作系统有关。
所有的包都是最新的,我试过从源代码安装xgboost,没有任何帮助。
任何帮助都将是非常感激的。
似乎错误实际上是由于recipe()
函数使用递归函数fun_calls()
与已知错误见这里。解决方案是使用update_role()
而不是公式来指定模型。