当并行作业陷入Scikit-Learn时,诊断正在发生的事情的正确方法是什么?
具体来说,我有几个工作似乎完成(htop显示没有CPU活动),但python停止响应。按Ctrl+c
不会退出(虽然它注册了KeyboardInterrupt,它不会终止python进程),并且该进程必须从shell中终止。总内存使用量接近机器的容量,但我没有发现存在MemoryError的明确错误。
在Ubuntu / Debian的0.14和RandomForestRegressor
下,cross_validation.cross_val_score
以及master
都发生了这种情况。
我怀疑这是一个内存问题,因为在具有更多内存的计算机上,作业似乎没有问题就完成了。
答案 0 :(得分:0)
我无法明确找到此问题的原因,但当我增加可用内存量时,它就停止了。因此,似乎有理由得出结论,其中一个子进程遇到MemoryError
并且刚刚死亡。