首页 > 解决方案 > 如何在不再次构建数据集的情况下读取 tensorflow 数据集缓存

问题描述

我创建了一个tf.data.Dataset具有相当复杂转换的数据集 ( ),并将其缓存到一个文件中。我的问题是如何在不重新重建数据集对象的情况下再次读取该数据集的内容。例如:

import tensorflow as tf
tf.enable_eager_execution()
db = tf.data.Dataset.range(10)
db = db.cache('/tmp/range')
for v in db:
    print(v)
# /tmp/range.data-00000-of-00001  /tmp/range.index files are created

# later, you could restore the dataset from a method like this:
new_db = tf.data.Dataset.from_cache('/tmp/range')

这个想法是在另一个上下文中构建数据集并使用它,而无需构建我之前拥有的复杂输入管道。

标签: pythontensorflow

解决方案


我很确定如果您完成了一个时期的数据集读取,下次您开始新的训练时,即使您对管道进行了更改,它仍会从该缓存文件中读取。


推荐阅读