【发布时间】:2019-11-15 03:38:58
【问题描述】:
我有一个形状为 (90000,50) 的训练数据集,我试图将其拟合到模型中(高斯过程回归)。这会因内存错误而出错。我确实了解计算,但是有没有办法使用 scikit 批量传递数据?我正在使用 GPR 算法的 scikit 实现。
【问题讨论】:
标签: python machine-learning keras scikit-learn training-data
我有一个形状为 (90000,50) 的训练数据集,我试图将其拟合到模型中(高斯过程回归)。这会因内存错误而出错。我确实了解计算,但是有没有办法使用 scikit 批量传递数据?我正在使用 GPR 算法的 scikit 实现。
【问题讨论】:
标签: python machine-learning keras scikit-learn training-data
Keras 有生成器,因为您可以创建检查点并从您在神经网络中中断的地方继续。但是,并非所有可训练算法都具有此属性。查看 Scikit-API 文档中的 incremental learning。
【讨论】:
partial_fit,则不能这样做。如果您有拟合高斯过程的迭代方式,您可以从GaussianProcessRegressor 派生来实现partial_fit。如果您不这样做,请尝试研究结合成全局高斯过程模型的本地高斯过程学习器。搜索 Rasmussen 和 Ghahramani 的“Infinite Mixtures of Gaussian Process Experts”一文。
scikit 的高斯过程实现(回归/分类)无法处理大数据集。它最多只能运行 15000 行数据。所以我决定改用不同的算法,因为这似乎是算法的问题。
【讨论】: