我正在尝试使用python 3.7中的pylift软件包构建Uplift模型。每次我尝试进行网格搜索时,内核都会死亡并重新启动。我不知道是什么引起了这个问题。任何输入都会有所帮助。请在下面找到我的代码
import pylift
from pylift import TransformedOutcome
up = TransformedOutcome(df_fil, col_treatment='Treatment',col_outcome='Outcome',col_policy='prop_scores',
stratify=df_fil['Treatment'],sklearn_model = XGBClassifier)
param_grid = {#'estimator': XGBClassifier(),
'param_grid': {'max_depth': range(1,8,1)
'learning_rate':[x/100 for x in range(1,12,4)],
'colsample_bytree':[x/10 for x in range(3,10,1)],
'min_child_weight':range(1,6,1),
'scale_pos_weight':[x/10 for x in range(12,18,1)],
}}
up.grid_search(**param_grid,cv=2)
在运行方法grid_search时,内核每次都会死亡,并且在jupyet Notebook终端出现以下错误
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
我的数据有150万行和67列。我试图通过减小参数范围来减少grid_search中的拟合数,但是它给出了相同的错误。我确信这不是内存问题,因为我正在具有64 GB RAM的AWS linux服务器上运行它。过去一个星期,我一直为这个错误而疯狂。任何帮助将不胜感激。