我尝试使用split函数拆分Cats_vs_dogs数据集,但无法检查它是否有效。当我在train_info和val_info上调用num_example时,我得到的号码是23262。为什么?
dataset, info = tfds.load('cats_vs_dogs',
split='train',
shuffle_files=True,
as_supervised=True,
with_info=True
)
ds_train, train_info = tfds.load(
'cats_vs_dogs',
split='train[:80%]',
shuffle_files=True,
as_supervised=True,
with_info=True
)
ds_val, val_info= tfds.load(
'cats_vs_dogs',
split='train[-20%:]',
shuffle_files=True,
as_supervised=True,
with_info=True
)
print(train_info.splits['train'].num_examples)
print(train_info.splits['train'].num_shards)
我从train_info,info和val_info中获得了23262个示例!
答案 0 :(得分:1)
所以要从每个拆分中获得示例的数量,我们必须要求 train_info.splits['train[:80%]'].num_examples 和 val_info.splits['train[-20%:]'].num_examples
更适合拆分数据集,使用 tf.keras.preprocessing.image_dataset_from_directory 对我来说效果更好。