Я пытаюсь визуализировать ошибки каждого слоя в CNN с помощью тензорной доски с Keras, чтобы увидеть, как они своевременно меняются на каждом слое. Как я могу получить ошибки для каждого слоя?
ошибки для каждого слоя в керасе
comment
Я видел свойство потерь в классе слоя и есть функцию get_losses_for. Могут ли они использоваться для получения желаемой ценности?
- person Joey Chia   schedule 26.04.2018
Ответы (1)
Потеря определяется только в выходном слое, чтобы измерить, насколько хорошо ваша модель соответствует данным. В keras есть функция History () для отслеживания соответствующих переменных в процессе обучения.
from keras.callbacks import History
history = History()
# define and compile your model
model.fit(..., callbacks=[history])
print(history.history)
Последняя команда показывает вам все отслеживаемые значения в процессе обучения. Вы можете получить доступ к отдельным переменным через метод get (). Чтобы получить данные о потере тренировки, вы можете получить к нему доступ через
history.history.get('loss')
person
DocDriven
schedule
25.04.2018
Благодарю за ваш ответ. Мне нужны значения потерь для каждого слоя в модели, потому что я хочу использовать изменения этих значений потерь для оценки сетей на этапе обучения.
- person Joey Chia; 25.04.2018
Как я уже говорил выше, потери не определены ни для какого другого слоя, кроме выходного. Вы имеете в виду ошибочные термины, которые передаются в обратном направлении в процессе обучения? Если нет, расскажите подробнее о том, какие ценности вас интересуют.
- person DocDriven; 25.04.2018
Извините за неправильное выражение, термины ошибки, которые вы упомянули, - это именно то, что я хочу. Не могли бы вы рассказать мне, как их получить?
- person Joey Chia; 25.04.2018