Может быть, это наивный вопрос.Я хочу попробовать небольшой эксперимент для исследования: обучите модель с дополнительной и пустой категорией из той, что у меня есть в обучении и валидации, и посмотрите, как прогноз для этой дополнительной категории снижается с количеством выборок и эпох.В частности, я добавил 5-ю фантомную категорию в фрейм данных панд.Я также использую ImageDataGenerator.
train_datagen = ImageDataGenerator(
rotation_range=0,
rescale=1./255,
shear_range=0.0,
zoom_range=0.2,
horizontal_flip=False,
width_shift_range=0.0,
height_shift_range=0.0
)
train_generator = train_datagen.flow_from_dataframe(
train_df,
"/mypath/",
x_col='filename',
y_col='category',
target_size=IMAGE_SIZE,
class_mode='categorical',
batch_size=batch_size
)
validation_datagen = ImageDataGenerator(rescale=1./255)
validation_generator = validation_datagen.flow_from_dataframe(
validate_df,
"/mypath/",
x_col='filename',
y_col='category',
target_size=IMAGE_SIZE,
class_mode='categorical',
batch_size=batch_size
)
history = model.fit_generator(
train_generator,
epochs=epochs,
validation_data=validation_generator,
validation_steps=total_validate//batch_size,
steps_per_epoch=total_train//batch_size,
callbacks=callbacks
)
Однако, когда я пытаюсь обучить CNN, я получил следующую ошибку:
Error when checking target: expected dense_2 to have shape (5,) but got array with shape (4,)
Кто-то может предложить обходной путь?