Потеря кросс-энтропии для одного горячего кодирования

CE-loss суммирует потери по всем выходным узлам.

Sum_i [- target_i * log (output_i)].

Производная CE-потерь: - target_i / output_i.

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

Я также заметил особенность производной для output = 0. Как это обрабатывается во время обратного распространения ошибки?

Я не вижу, как веса корректируются, чтобы соответствовать цели = 0. Может тебе виднее :)


person tamtam_    schedule 17.11.2018    source источник
comment
Ваша формула неполная, см. этот вопрос и этот вопрос.   -  person cheersmate    schedule 17.11.2018


Ответы (1)


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

person Aleksa Janković    schedule 17.11.2018