У меня есть модель нейронной сети, это последний слой, полностью связанный с 9 выходными нейронами.
Чтобы правильно обучить мою сеть, я использую softmax_cross_entropy_with_logits.
Он тренируется нормально, но когда я хочу оценить свою модель, я также хочу получить вероятности.
Итак, я беру оценочный образец и подаю его в сеть.
После этого я применяю SoftMax к выходу и получить
[[ 0. 0. 0. 0. 0. 1. 0. 0. 0.]]
Tensorflow: почему выходы softmax [1, 0, 0 ..., 0]
Здесь ненормализованные probabilites также:
[[ -2710.10620117 -2914.37866211 -5045.04443359 -4361.91601562
-459.57000732 8843.65820312 -1871.62756348 5447.12451172
-10947.22949219]]
Я также получаю probility 1 и остальные нули. Может ли кто-нибудь помочь справиться с этой проблемой?
EDIT: Входные изображения имеют форму 64 * 160.
Все функции активации - это relu.
Максимальное количество пулов 2x2.
В файле conv_plus_max_pool_layer (x_image, 5, 1, 96) 5 - размер ядра.
Вот сетевой макет:
hidden_block_1 = conv_plus_max_pool_layer(x_image, 5, 1, 96)
hidden_block_2 = conv_plus_max_pool_layer(hidden_block_1, 5, 96, 256)
hidden_block_3 = conv_plus_max_pool_layer(hidden_block_2, 3, 256, 384)
hidden_block_4 = conv_plus_max_pool_layer(hidden_block_3, 3, 384, 512)
fc1 = dropout_plus_fc(4 * 10 * 512, 512, hidden_block_4, keep_prob_drop1)
output = dropout_plus_fc(512, model_net10_train.class_num, fc1, keep_prob_drop2)
Спасибо за ваш ответ! Добавлен сетевой макет и более подробная информация. Не могли бы вы предложить дополнительные предложения? –
Ну, мое лучшее предложение было бы начать следовать курсу, например, курс Ударси по глубокому обучению или курс Каденце для творческих приложений глубокого обучения. Таким образом, вы все узнаете, получая удовольствие! – rmeertens
Я сделаю это, но прямо сейчас не могли бы вы указать мне правильное направление? –