【发布时间】:2020-09-05 13:14:56
【问题描述】:
你好我正在用TensorFlow和Keras训练一个模型,数据集是从https://www.microsoft.com/en-us/download/confirmation.aspx?id=54765下载的
这是一个 zip 文件夹,我在以下目录中拆分:
.
├── test
│ ├── Cat
│ └── Dog
└── train
├── Cat
└── Dog
Test.cat和test.dog每个文件夹1000张jpg照片,train.cat和traing.dog每个文件夹11500张jpg照片。
加载是用这段代码做的:
batch_size = 16
# Data augmentation and preprocess
train_datagen = ImageDataGenerator(rescale=1./255,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True,
validation_split=0.20) # set validation split
# Train dataset
train_generator = train_datagen.flow_from_directory(
'PetImages/train',
target_size=(244, 244),
batch_size=batch_size,
class_mode='binary',
subset='training') # set as training data
# Validation dataset
validation_generator = train_datagen.flow_from_directory(
'PetImages/train',
target_size=(244, 244),
batch_size=batch_size,
class_mode='binary',
subset='validation') # set as validation data
test_datagen = ImageDataGenerator(rescale=1./255)
# Test dataset
test_datagen = test_datagen.flow_from_directory(
'PetImages/test')
模型正在使用以下代码进行训练:
history = model.fit(train_generator,
validation_data=validation_generator,
epochs=5)
我得到以下输入:
Epoch 1/5
1150/1150 [==============================] - ETA: 0s - loss: 0.0505 - accuracy: 0.9906
但是当时代处于这一点时,我收到以下错误:
UnidentifiedImageError: 无法识别图像文件 <_io.bytesio>
我该如何解决这个问题才能完成训练?
谢谢
【问题讨论】:
-
这很可能是因为您的数据集包含生成器无法读取的文件。如果有任何扩展名错误或文件损坏的图像,请尝试检查您的数据集。
-
有没有什么功能可以检查这个,每个文件夹都有很多图片。谢谢
-
代码有效吗?
标签: python tensorflow keras