Потери керасов увеличиваются с каждой эпохой - PullRequest
0 голосов
/ 02 апреля 2019

Я использую Keras для глубокого обучения.У меня 1860 образцов для 3 классов.Потеря увеличивается во время обучения.Я уже удалил выпадения.

Модель

model = models.Sequential()
model.add(layers.Conv2D(128, (3, 3), input_shape=(480, 640, 3), use_bias=False))
model.add(layers.BatchNormalization())
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(128, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(256, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(256, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(256, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(512, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Flatten())
model.add(layers.Dense(512, activation='relu'))
model.add(layers.Dense(3, activation='softmax'))

Генератор

model.compile(loss='categorical_crossentropy',
 optimizer=optimizers.sgd(),
 metrics=['acc'])

validation_dir = r'C:\Users\user\Desktop\validation_data'

train_data_generator = ImageDataGenerator(
 rescale=1. / 255,
 horizontal_flip=True)

validation_data_generator = ImageDataGenerator(rescale=1. / 255)

train_generator = train_data_generator.flow_from_directory(
 train_dir,
 target_size=(480, 640),
 batch_size=20,
 class_mode='categorical')

validation_generator = validation_data_generator.flow_from_directory(
 validation_dir,
 target_size=(480, 640),
 batch_size=30,
 class_mode='categorical')

checkpointer = ModelCheckpoint(
 filepath=checkpoint_path,
 verbose=1,
 save_best_only=True)

model.fit_generator(
 train_generator,
 steps_per_epoch=93,
 epochs=35,
 validation_data=validation_generator,
 validation_steps=6,
 callbacks=[checkpointer])

Потеря увеличивается, и обучение требуеточень долгоЯ не уверен, что мои ширина и высота слишком велики.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...