我为“机器学习”任务写了一个软件。
为此,我需要将大量数据加载到程序的RAM中(用于所需的“fit”函数)。
实际上,在口头运行中,'load_Data‘函数应该返回大约12,000到110,000大小的float64类型的2个’ndarray‘(来自'numpy’库)。
我在运行过程中遇到内存错误。
我在一个较小的数据集(2,000 x 110,000阵列)上测试了该程序,它确实工作正常。
我想过两种解决方案:
使用内存更大的计算机(现在我使用的是8 GB内存)在“.Use”方法中拟合10次,每次都是在所有数据集的另一部分上。
所以,我想问一下:
解决方案#2是一个好的解决方案吗?
还有更多的解决方案吗?
非常感谢。
发布于 2018-08-19 02:21:44
当然,第一种解决方案非常好,但相当昂贵。但是,一旦您拥有了数百of的数据集,您将如何处理呢?对于大多数消费者来说,购买那么多的RAM是令人望而却步的。
事实上,批处理(正如您所暗示的)是在非常大的数据集上进行训练的最常见方法。大多数机器学习工具包允许您批量提供数据。因为你没有暗示你使用的是哪一个,所以我将推迟到例如the Keras documentation关于如何设置。
编辑对于scikit-learn
,您可以在here中查找支持批处理的估计器列表。
https://stackoverflow.com/questions/51911416
复制相似问题