【发布时间】:2019-01-12 19:53:36
【问题描述】:
我有大约 13 个 NumPy 数组作为文件存储在磁盘上,大约需要 24 GB。每个文件用于单个主题,由两个数组组成:一个包含输入数据(二维矩阵列表,行表示连续时间),另一个包含数据标签。
我的最终目标是将所有数据提供给我用 Keras 编写的深度学习网络,以对新数据进行分类。但是我不知道如何在内存不足的情况下执行此操作。
我已阅读有关 Keras 的数据生成器的信息,但找不到适合我的情况的方法。
我也查过 HDF5 和 h5py,但我不知道如何在不耗尽内存的情况下将所有数据添加到单个数组(HDF5 中的数据集)。
【问题讨论】:
-
数据是图片还是其他?标签是什么?是简单的分类任务还是别的什么?
-
@Djib2011 这是脑电图数据,列是不同的电极,而行代表大脑信号通过时间。所以基本上它是时间序列数据。至于任务,是分类任务。
-
我相信你知道,regular 方法是将所有内容加载到一个大的 numpy 数组中并从中训练模型。由于数据的大小使这成为不可能,因此您不得不使用生成器将数据馈送到网络中。但是,我不知道有任何简单的方法可以这样做;我的建议涉及创建您自己的自定义生成器,不幸的是,这需要大量的编码和调试。如果您有兴趣,我可以写一个答案,为您提供一些关于如何做到这一点的指示......也许有人有更好的主意。
-
@Djib2011 如果你能写一个答案,我将不胜感激。
-
@Djib2011 非常感谢 :)