tensorflow数据集缓存交叉验证

时间:2019-06-10 18:18:59

标签: python-3.x tensorflow tensorflow-datasets

我有一个非常昂贵的数据管道。我想使用tf.data.Dataset.cache将第一个纪元数据集缓存到磁盘。然后加快该过程。我这样做而不是将数据集保存到tfrecords中的原因是 1)我每次都在处理中更改许多参数,因此对它进行动态缓存更加方便 2)我正在进行交叉验证,所以我不知道要处理哪些文件

我有一个幼稚的解决方案-为训练文件的每一折创建一个管道,但是要缓存的空间很大(我正在做10折),相当于总共1TB。

还有其他方法可以在空间和时间上更有效地做到这一点吗?

1 个答案:

答案 0 :(得分:0)

回答我自己的问题,为此,我可以为每个文件创建一个管道,将每个管道缓存在磁盘上,将它们放入双端队列,然后使用tf.data.experimental.sample_from_datasets