Каждую вторую эпоху Keras возвращает ноль во всех журналах.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Каждую вторую эпоху Keras возвращает ноль во всех журналах.

Сообщение Anonymous »

Я пытаюсь создать простой классификатор двоичных изображений, используя Keras и Python. Каждая вторая эпоха обучения возвращает ноль для точности, потерь, val_accuracy и val_loss. Остальные эпохи проходят нормально, и обучение проходит нормально. Я тренируюсь на 25000 уникальных изображениях с тремя наборами сверток и объединением. У меня есть разделение 90-10 для изображений для обучения/тестирования, и все изображения перемешиваются. В настоящее время я использую оптимизатор Adam и нормализованный ImageDataGenerator для своих меток и данных.
Вот ошибка:
Epoch 1/20
90/90 ━━━━━━━━━━━━━━━━━━━━ 170s 2s/step - accuracy: 0.9974 - loss: 0.4769 - val_accuracy: 0.7968 - val_loss: 0.9699
Epoch 2/20
90/90 ━━━━━━━━━━━━━━━━━━━━ 0s 1ms/step - accuracy: 0.0000e+00 - loss: 0.0000e+00 - val_accuracy: 0.0000e+00 - val_loss: 0.0000e+00
Epoch 3/20
90/90 ━━━━━━━━━━━━━━━━━━━━ 175s 2s/step - accuracy: 0.9988 - loss: 0.4260 - val_accuracy: 0.8052 - val_loss: 0.9283
Epoch 4/20
90/90 ━━━━━━━━━━━━━━━━━━━━ 0s 728us/step - accuracy: 0.0000e+00 - loss: 0.0000e+00 - val_accuracy: 0.0000e+00 - val_loss: 0.0000e+00
etc...

Вот структура моей модели:
model1 = keras.models.Sequential([
keras.layers.Conv2D(16,(3,3), activation='relu', input_shape=(150, 150, 3)),
keras.layers.MaxPooling2D(2,2),
keras.layers.BatchNormalization(),
keras.layers.Conv2D(32,(3,3), activation='relu'),
keras.layers.MaxPooling2D(2,2),
keras.layers.BatchNormalization(),
keras.layers.Conv2D(64,(3,3), activation='relu'),
keras.layers.MaxPooling2D(2,2),
keras.layers.BatchNormalization(),
keras.layers.Flatten(),
keras.layers.Dense(512, activation='relu', kernel_regularizer=regularizers.l2(0.001)),
keras.layers.Dropout(0.2),
keras.layers.Dense(1, activation='sigmoid')
])
model1.compile(optimizer=Adam(learning_rate=0.0002), loss='binary_crossentropy', metrics=['accuracy'])

train_CD = ImageDataGenerator(rescale=1.0/255.)
train_generator_CD = train_CD.flow_from_directory(
'./images/cat_dog/train_data/',
target_size = (150, 150),
batch_size = 250,
class_mode = 'binary')

test_CD = ImageDataGenerator(rescale=1.0/255.)
test_generator_CD = test_CD.flow_from_directory(
'./images/cat_dog/test_data/',
target_size = (150, 150),
batch_size = 250,
class_mode = 'binary')

history1=model1.fit(
train_generator_CD,
validation_data = test_generator_CD,
epochs = 20,
steps_per_epoch = 90,
validation_steps = 10,
callbacks=[myCallback()]
)


Подробнее здесь: https://stackoverflow.com/questions/776 ... n-all-logs
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»