计算tensorflow.data.Datset元素最快的方法是什么?

问题描述 投票:0回答:2

是否有比

更快的方法来计算 
tensorflow.data.Dataset

的所有元素
def count_elements(dataset: tf.data.Dataset):
    return dataset.reduce(0, lambda x, _ : x + 1).numpy()

“更快”意味着还要考虑内存使用情况,但执行时间至关重要。据我所知,没有内置方法可以实现此目的。

python tensorflow2.0 tensorflow-datasets
2个回答
1
投票

简短回答“否”。

对于内存数据集,有:

tf.data.experimental.cardinality(dataset)
,但是
tf.data.Dataset
本质上是延迟加载的,并且可以是无限的,因此不迭代它就无法知道
tf.data.Dataset
中有多少个元素。

来源:在 TensorFlow 2.0 中,如何查看数据集中的元素数量?


0
投票

tfds.benchmark(dataset) 对我来说比上述任何方法都快

© www.soinside.com 2019 - 2024. All rights reserved.