繁体   English   中英

使用 Python 基于块训练大型数据集 [暂停]

[英]Training large dataset based on chunks using Python [on hold]

我有一个包含 1300 万条记录和 4 列的训练数据集。 我想在该数据集上训练回归 model 但我们知道我们不能一次训练 1300 万条记录,因为机器无法处理它(它给出了 memory 泄漏错误)。 所以我的问题是如何分块训练数据集并进行预测。

我遇到了具有部分拟合方法的 SGDRegressor,但不知道如何使用它。

现在,我在 5K 记录样本上使用Randomforest Regressor来处理 gridsearch CV,它运行良好,但进一步增加了样本,导致我出现“内存错误”。 我什至尝试了 Google Colab,它最终出现了相同的 memory 错误。

我正在寻找一个如何用块训练数据并预测包含 200k 记录的测试数据集的示例。

只需加载 5K 特征块并为每个块调用 SGDRegressor 的 partial_fit 方法。 文档所述,您可能需要对每个功能多次执行此操作:

在内部,该方法使用 max_iter = 1。因此,不能保证调用一次后达到成本 function 的最小值。 客观收敛、提前停止等事项应由用户自行处理。

这意味着您需要自己实施训练的验证部分,以确保良好的收敛性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM