如何适应 Scikit-Learn 中的连续批次?

How to fit successive batches in Scikit-Learn?

我有一个大型数据集 (>1 TB),我希望使用 GradientBoostingRegressor of Scikit-Learn 进行训练。

由于数据的大小远远超出了我的 RAM 容量,我正在考虑将数据分成块,然后一个接一个地 'fit()'。

我知道将 'warm_start' 属性设置为 True 可以在 fit() 之后保持权重。但是,似乎我还需要为每次连续调用 fit() 增加估算器的数量。

是否可以先 fit() 所有数据块,然后再将估计量增加一个?

我的问题的最佳解决方案是什么,即。拟合超大数据集?

您可能想尝试 SGD 估算器中的 partial_fit 方法。它不是 GBM,但它工作得非常好,并且对于您拥有的数据大小,您可能会通过线性模型和适当的交互获得良好的结果。