我正在尝试训练多粒度的级联森林(最初来自this paper,在this repo中实现),并且仅预测一个样本。
由于将模型保存在内存中时出现MemoryError,因此我遵循了演示代码中编写的名为gc.set_keep_model_in_mem(False)
的内容。 docs中写的是
set_keep_model_in_mem(False)
。如果您的RAM不足,请将其设置为false。 (默认为True)。如果将其设置为False,则必须使用fit_transform(X_train,y_train,X_test = X_test,y_test = y_test)评估模型。
但是,如果我使用它,我将无法再调用gc.predict([X_test[0]])
并给出错误消息:
ValueError:模型(li = 0,ei = 0)不存在,也许您应该将keep_model_in_mem设置为True
有人可以帮我吗?非常感谢您的帮助。
答案 0 :(得分:0)
最好在具有大内存的PC中运行预测。运行时,gcForest会消耗大量内存。否则,请减少模型中树或节点的大小,这可能会导致更糟的结果。