Керас: потеря колеблется между инф и числом
Я работаю над моделью Keras с пользовательской функцией потерь, предоставляемой последним слоем сети плотности смеси (потеря пытается минимизировать отрицательную логарифмическую вероятность некоторых моделей Гаусса).
Что меня смущает, так это то, что потеря иногда попадает в эпоху, в которой она возвращает -inf как итоговую потерю. Тогда на следующей итерации потеря снова будет числом (например, -2.1). Потеря иногда отражается между отрицательной бесконечностью и числом в каждую другую эпоху.
Отрицательные потери, очевидно, следует ожидать с потерями NLL, но эти колебания меня смущают. Чем объясняется такое поведение внутри Кераса? Насколько я понимаю, потеря -inf вызвана где-то недостаточным числовым значением, но я не уверен, как модель может восстановиться после этого и восстановить числовую стабильность после этого.
Кто-нибудь знает, как это работает? Я был бы очень благодарен за любые предложения, которые другие могут предложить по этому вопросу.