Sklearn BaggingRegressor 无限循环/不停止运行的问题

当我使用BaggingRegressor来控制过拟合时,我遇到了程序循环运行,而且完全占用CPU的问题,打开任务管理器一看,发现还真是个并行程序。无意间居然牵涉到了并行,这是我敲完那行代码之后没有想到的。

使用os.system("pause"),让程序暂停后发现python还是给了一些提示:

ImportError: [joblib] Attempting to do parallel computing without protecting your import on a system that does not support forking. To use parallel-computing in a script, you must protect your main loop using "if __name__ == '__main__'". Please see the joblib documentation on Parallel for more information

其实我本来是另外一个Python文件运行导入这个BaggingRegressor的python文件的,看到这个提示发现没戏了,因为"if __name__ == '__main__'"不允许其他地方导入。

解决的方案也就是如上所述,在前面加上"if __name__ == '__main__'"就可以了,下面举了个例子

if __name__ == 'main':

    '''your code here...'''
    
    llr = linear_model.LogisticRegression(C = 1.0, penalty = 'l1', tol = 1e-6)

    bagging_llr = BaggingRegressor(llr, n_estimators = 20, max_samples = 0.8, max_features = 1.0, bootstrap = True, bootstrap_features = False, n_jobs = -1)
    
    bagging_llr.fit(X, y)
    
    '''your code here...'''

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值