我使用 image_dataset_from_directory() 创建我的训练(529003 帧)、验证(29388 帧)和测试(28875 帧)数据:train_dataset = image_dataset_from_directory( directory=TRAIN_DIR, labels="inferred", label_mode="categorical", class_names=["0", "10", "5"], batch_size=32, image_size=SIZE, seed=SEED, subset=None, interpolation="bilinear", follow_links=False,)#Shape of the data(TensorSpec(shape=(None, 224, 224, 3), dtype=tf.float32, name=None), TensorSpec(shape=(None, 3), dtype=tf.float32, name=None))我使用的模型需要 5D 张量 (32,5,224,224,3) 形式的数据,我使用 MobileNet 进行迁移学习,然后使用 LSTM 进行视频分类。我尝试过使用:train_dataset = train_dataset.batch(5).batch(32)但是数据集变成了 6D 并且标签的维度也增加了(TensorSpec(shape=(None, None, None, 224, 224, 3), dtype=tf.float32, name=None), TensorSpec(shape=(None, None, None, 3), dtype=tf.float32, name=None))
1 回答
UYOU
TA贡献1878条经验 获得超4个赞
我找到了制作一个自定义生成器所需的解决方案,该生成器从视频输入生成 5D 张量,该生成器将序列长度视为 5D 张量的第五个元素。我使用 Keras 的 image_dataset_from_directory() 生成 4D 张量。
添加回答
举报
0/150
提交
取消