Я пытаюсь реализовать мультиклассовую сегментацию в Keras:
- входное изображение в оттенках серого (т. е. 1 канал)
- наземное правдивое изображение имеет 3 канала, каждый пиксель представляет собой горячий вектор длиной 3
- прогнозирование является стандартным, обученным U-Net с
categorical_crossentropy
выводом 3 каналов (softmax-ed)
Что не так с этой настройкой? У потери тренировки есть странное поведение:
- в моих удачных случаях он ведет себя так, как ожидалось (уменьшается)
- 90% времени он застревает на уровне ~ 0,9
Мою реализацию можно найти здесь
Я не думаю, что с кодом что-то не так: если моя основная правда 1-канальная (то есть 0 везде и где-то 1) и использую binary_crossentropy
+ sigmoid
в качестве финальной активации, я не вижу странного поведения.