在python中使用.cache()进行数据准备
当使用在python中使用.cache()进行数据准备,python,tensorflow,tensorflow-datasets,Python,Tensorflow,Tensorflow Datasets,当使用tensorflow\u数据集时,有人能解释这行中.cache()的用途吗 train_batches = train_examples.cache().shuffle(num_examples // 4).map(format_image).batch(32).prefetch(1) 顾名思义,它将样本缓存在内存中(如果提供了文件名,则缓存在磁盘上)。例如,如果train\u examples包括昂贵的预处理,则不需要为每个历元重复预处理,但会增加内存消耗 请注意,由于顺序的原因,在.
tensorflow\u数据集时,有人能解释这行中.cache()
的用途吗
train_batches = train_examples.cache().shuffle(num_examples // 4).map(format_image).batch(32).prefetch(1)
顾名思义,它将样本缓存在内存中(如果提供了文件名,则缓存在磁盘上)。例如,如果train\u examples
包括昂贵的预处理,则不需要为每个历元重复预处理,但会增加内存消耗
请注意,由于顺序的原因,在.cache()
之后调用的所有方法仍然在每个历元中执行。根据具体情况,在.cache()
之前调用.map()
可能会有所帮助。但是,洗牌和批处理通常应最后调用
有关详细信息,请查看。顾名思义,它将样本缓存在内存中(如果提供文件名,则缓存在磁盘上)。例如,如果train\u examples
包括昂贵的预处理,则不需要为每个历元重复预处理,但会增加内存消耗
请注意,由于顺序的原因,在.cache()
之后调用的所有方法仍然在每个历元中执行。根据具体情况,在.cache()
之前调用.map()
可能会有所帮助。但是,洗牌和批处理通常应最后调用
有关详细信息,请查看。在这种情况下,洗牌将只执行一次。人们应该小心缓存。另外,如果没有给出文件名,对于大型数据集,计算机可能会很快耗尽ram。您能解释一下关于文件名的更多信息吗,因为我收到一条消息,说内存不足?。如何避免it@MYASS这在网上有很好的文档记录,我添加了一个链接。在这种情况下,洗牌将只执行一次。人们应该小心缓存。另外,如果没有给出文件名,对于大型数据集,计算机可能会很快耗尽ram。您能解释一下关于文件名的更多信息吗,因为我收到一条消息,说内存不足?。如何避免it@MYASS这在网上有很好的记录,我添加了一个链接。