如何将sklearn的GridSearchCV与不适合内存的数据一起使用?

问题描述 投票:1回答:1

我有一个太大而无法容纳在内存中的数据集,所以我必须分批训练模型。我已经将我的模型包装在GridSearchCV,RandomizedSearchCV或BayesSearchCV(来自scikit-optimize)中,并且看到我无法在我庞大的数据集的不同部分训练这些实例,并且期望每个人找到的最佳超参数都会同意。

我已经考虑将我的估算器包装在BatchVoter(我自己的设计)中,它批量管理从数据库读取并保留模型列表。将此传递给XSeachCV并更新参数空间字典,以便所有带有'estimator__'的键可以指示搜索设置子对象的参数,但仍然存在问题:搜索开始时调用.fit()方法,必须采取数据。

是否有一种聪明的方法来使用原生GridSearchCV的数据太大而无法传递给.fit()方法?

python scikit-learn bigdata grid-search
1个回答
1
投票

试试dask。它支持数据框架,数组和集合。它由调度程序和工作人员组成。它还有一个distributed调度程序,允许在几台PC上处理数据帧。

Here是关于如何并行化模型的描述。

Here是一个完整模块的链接,可以直接替换GridSearchCV

© www.soinside.com 2019 - 2024. All rights reserved.