Увеличение данных приводит к потере NaN
У меня есть набор данных изображений, и я реализую методы дополнения данных поверх него. После реализации первого (используя np.fliplr
) модель работает нормально. Однако, когда я пытаюсь реализовать контрастное растяжение в моих данных, моя потеря становится NaN
сразу. Я попытался решить ее, изменив скорость обучения / размер партии и многое другое, но безуспешно.
Вот части моего кода:
# Contrast stretching function
from skimage import exposure, color
def contrast_stretching(img):
p2, p98 = np.percentile(img, (2, 98))
img_rescale = exposure.rescale_intensity(img, in_range=(p2, p98))
return img_rescale
# Implement my function over the data
x_train = np.append(x_train, [contrast_stretching(x) for x in x_train], axis=0)
y_train = np.append(y_train, [contrast_stretching(x) for x in y_train], axis=0)
# Training...
early_stopping = EarlyStopping(patience=10, verbose=1)
model_checkpoint = ModelCheckpoint("D:/...", save_best_only=True, verbose=1)
reduce_lr = ReduceLROnPlateau(factor=0.1, patience=5, min_lr=0.00001, verbose=1)
epochs = 5
batch_size = 32
history = model.fit(x_train, y_train,
validation_data=[x_valid, y_valid],
epochs=epochs,
batch_size=batch_size,
callbacks=[early_stopping, model_checkpoint, reduce_lr])
И пример моего нежелательного вывода:
ETA: 1:05 - потеря: nan - среднее_iou: 0.382 - ETA: 1:06 - потеря: nan - среднее_iou: 0.382 - ETA: 1:04 - потеря: nan - среднее_iou: 0.382 - ETA: 1:04 - потеря: nan - mean_iou: 0.382 - ETA: 1:03 - потеря: nan - mean_iou: 0.382 - ETA: 1:03 - потеря: nan - mean_iou: 0.382 - ETA: 1:03 - потеря: nan
Любая помощь будет оценена!