我有一个粗大的形状数组(20000,600,768)。我需要存储它,以便稍后我可以将它加载回我的代码中。主要问题是当您将内存加载回时内存的使用情况。我只有16 RAM内存。
例如,我试过泡菜。当它加载时,我几乎没有记忆去做任何其他事情。尤其是为了训练模特。
我尝试用hdf5 (h5py)编写并加载。只是一小块(1000,600,768)。但它似乎“吞噬”了更多的记忆。
也试过csv..。只是不-不。写入数据需要花费太多的时间。
如果有人建议我如何存储我的数组,那么当我重新加载它时,它就不会占用那么多内存,我将不胜感激。
我存储的数据是文本的向量表示,我后来用它来训练我的模型。
发布于 2019-09-13 10:08:46
我认为你可以做很多事情。
首先,您可以将数据格式更改为以不同的方式存储:
其次,也是最重要的,--您需要更改算法。如果无法将所有数据放入内存中,则需要使用其他类型的方法,其中使用批数据而不是所有数据。
例如,对于机器学习,有很多方法可以使用批量数据对模型进行增量更新。
第三,有一些方法可以使降低训练集的维数。例如,使用PCA、特征选择等方法
https://stackoverflow.com/questions/57921092
复制相似问题