我试图制作一个CNN,一切都很好,直到我到达model.fit(...),当我在标题中得到了我以前从未见过的TypeError。我在ImageDataGenerator中将dtype转换为tf.float32。flow_from_目录似乎工作得很好,并且在验证和训练数据集之间有正确的图像数量,所以我不确定发生了什么。
我的代码在下面,不包括导入和随机变量,它们只是int或文件夹的文件路径。
from keras.preprocessing.image import ImageDataGenerator
img_height, img_width = 224
datagen = ImageDataGenerator(
rescale=1./255,
data_format='channels_last',
validation_split=0.1,
dtype=tf.float32,
)
train_generator = datagen.flow_from_directory(
filepath,
target_size = (img_height,img_width),
batch_size=batch_size
)
nonsense = train_generator[0][0] #<===Error is happening here
print(nonsense.dtype)`
字符串
我希望这能毫无问题地工作。但是,我不知道是否有什么潜在的东西我错过了我使用的tensorflow 2.10。
1条答案
按热度按时间mwg9r5ms1#
仅供参考,默认的
dtype
已经是tf.float32
,所以不需要更改它。但是如果你想显式地指定它,请使用字符串格式,如下所示:字符串
下面是一个完全可复制的示例:
型