У меня есть этот набор данных со следующими заданными формами:
- Train: X: (175250, 30, 30, 6) Y: (175250, 30, 30)
- Проверка: X: (29200, 30, 30, 6) Y: (29200, 30, 30)
- Тест: X: (29200, 30, 30, 6) Y: (29200, 30, 30)
--> с 20 % положительных и 80 % отрицательных примеров поровну в каждом наборе.
Я запускал несколько серий, но для лучшей комбинации фильтров получился
график для BCE с хорошей точностью:

Сюжет для пользовательского функции, Dice_Loss от Dice_Coeff:

И некоторые изображения, созданные на основе лучшей модели, обученной с помощью тестовых изображений:

Проблема в том, что когда я переключаюсь на потери в кубиках и коэффициент, хороших прогнозов, как мы видим на графике изображения, не получается, и теперь их нет в прогнозе изображения, как мы видим.

Почему он так плохо справляется с проигрышем в кости? Какую еще функцию вы порекомендуете?
Моя функция проигрыша и коэффициента:
def dice_coeff(y_true, y_pred, smooth=1):
intersection = K.sum(K.abs(y_true * y_pred), axis=-1)
return (2. * intersection + smooth) / (K.sum(K.square(y_true),-1) + K.sum(K.square(y_pred),-1) + smooth)
def dice_loss(y_true, y_pred):
return 1-dice_coeff(y_true, y_pred)
Подробнее здесь: https://stackoverflow.com/questions/606 ... gmentation
Мобильная версия