gpt4 book ai didi

python - 从 tf.data.Dataset 应用过滤器后获取数据集的大小

转载 作者:行者123 更新时间:2023-12-05 03:52:05 24 4
gpt4 key购买 nike

我想知道如何在应用过滤器后获取数据集的大小或长度。使用 tf.data.experimental.cardinality 给出 -2,这不是我要找的!!我想知道我的数据集中有多少过滤样本,以便能够使用 take() 和 skip() 将其拆分为训练和验证数据集。

例子:

    dataset = tf.data.Dataset.from_tensor_slices([1, 2, 3, 4, 5])
dataset = dataset.filter(lambda x: x < 4)
size = tf.data.experimental.cardinality(dataset).numpy()
#size here is equal to -2 but I want to get the real size which is 3

我的数据集包含图像及其标签,这只是一个说明性示例

最佳答案

查看文档发现基数为 -2 表明 Tensorflow 无法确定数据集的基数。您可以在 here 中找到它.对于您的示例,您可以这样做

dataset = dataset.as_numpy_iterator()
dataset = list(dataset)
print(len(dataset))

关于python - 从 tf.data.Dataset 应用过滤器后获取数据集的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62359599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com