我正在进行图像分类,并且试图提高准确性,因此我试图生成图像,但是,我遇到了一些文件路径错误,请帮助我该怎么做。
这是我的代码:
train_datagen = ImageDataGenerator(
rescale=1./255,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True)
test_datagen = ImageDataGenerator(rescale=1./255)
train_generator = train_datagen.flow_from_directory(
'C:\\Users\\NanduCn\\jupter1\\train-scene classification',
target_size=(64, 64),
batch_size=32,
class_mode='categorical')
validation_generator = test_datagen.flow_from_directory(
'C:\\Users\\NanduCn\\jupter1\\train-scene classification',
target_size=(64, 64),
batch_size=32,
class_mode='categorical')
model.fit_generator(
train_generator,
steps_per_epoch=2000,
epochs=50,
validation_data=validation_generator,
validation_steps=800)
我有6类图像,但是我在图像生成方面有1类,这里是我的文件train-scene classification is folder in train is images file and train.csv, and test.csv
。
Found 24335 images belonging to 1 classes.
Found 24335 images belonging to 1 classes.
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-57-faf37afc0119> in <module>()
24 epochs=50,
25 validation_data=0.25,
---> 26 validation_steps=800)
~\Anaconda3\lib\site-packages\keras\legacy\interfaces.py in wrapper(*args, **kwargs)
89 warnings.warn('Update your `' + object_name + '` call to the ' +
90 'Keras 2 API: ' + signature, stacklevel=2)
---> 91 return func(*args, **kwargs)
92 wrapper._original_function = func
93 return wrapper
~\Anaconda3\lib\site-packages\keras\engine\training.py in fit_generator(self, generator, steps_per_epoch, epochs, verbose, callbacks, validation_data, validation_steps, class_weight, max_queue_size, workers, use_multiprocessing, shuffle, initial_epoch)
1416 use_multiprocessing=use_multiprocessing,
1417 shuffle=shuffle,
-> 1418 initial_epoch=initial_epoch)
1419
1420 @interfaces.legacy_generator_methods_support
~\Anaconda3\lib\site-packages\keras\engine\training_generator.py in fit_generator(model, generator, steps_per_epoch, epochs, verbose, callbacks, validation_data, validation_steps, class_weight, max_queue_size, workers, use_multiprocessing, shuffle, initial_epoch)
131 else:
132 # Prepare data for validation
--> 133 if len(validation_data) == 2:
134 val_x, val_y = validation_data
135 val_sample_weight = None
TypeError: object of type 'float' has no len()
答案 0 :(得分:0)
从您提供的堆栈跟踪中可以看到validation_data=0.25
。
由于validation_data
不是类列表对象,因此它没有__len__
方法,因此len(validation_data)
会产生错误。
这不是“某些文件路径错误”,而是需要确保validation_data
确实是您认为的样子(某种数据目标值对)。请检查一下。