gpt4 book ai didi

python - joblib.load 文件加载错误

转载 作者:行者123 更新时间:2023-11-28 19:25:23 40 4
gpt4 key购买 nike

我正在使用 Random Forest Regressor python 的 scikit-learn 模块来预测一些值。我使用 joblib.dump 来保存模型。有 24 个 joblib.dump 文件,每个文件重 45 兆字节(所有文件的总和 = 931mb)。我的问题是:

我想在一个程序中加载所有这 24 个文件以预测 24 个值 - 但我做不到。它给出了 MemoryError。我如何才能在一个程序中加载所有 24 个 joblib 文件而不会出现任何错误?

提前致谢...

最佳答案

选项很少,具体取决于内存不足的具体位置。

  • 由于您要根据相同的输入数据预测 24 个不同的值,因此您可以按顺序进行预测。因此,您一次只能在内存中保留一个 RFR。

例如:

predictions = []
for regressor_file in all_regressors:
regressor = joblib.load(regressor_file)
predictions.append(regressor.predict(X))
  • (可能不适用于您的情况,但这个问题很常见)。加载大量输入数据时,您可能会耗尽内存。要解决此问题 - 您可以拆分输入数据并对子批处理运行预测。当我们从本地运行预测转移到 EC2 时,这对我们很有帮助。尝试在较小的输入数据集上运行您的代码,以测试这是否有帮助。

  • 您可能想要优化 RFR 的参数。您可能会发现,使用较浅的树或较少数量的树(或两者)可以获得相同的预测能力。构建一个大到不必要的随机森林非常容易。当然,这是特定于问题的。我必须减少树的数量并使树变小才能使模型在生产中高效运行。就我而言,AUC 在优化之前/之后是相同的。教程中有时会省略模型调整的最后一步。

关于python - joblib.load 文件加载错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14557597/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com