.predict возвращает двоичные результаты, а не проценты - PullRequest
0 голосов
/ 08 июня 2018

Здравствуйте, я скомпилировал свою модель следующим образом

model.compile(optimizer='rmsprop', loss='categorical_crossentropy', metrics=['accuracy'])

и просто запускаю

print(model.predict(test_tensor))

, который возвращает [[0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0.]]

Последними уровнями является активация softmax, поэтому не следует этого делать.

РЕДАКТИРОВАТЬ: я также пробовал предикат_proba и не сработал

1 Ответ

0 голосов
/ 08 июня 2018

Теоретически вы правы, это будет бесконечно ближе к 1, но помните, что мы используем числа с плавающей запятой фиксированных битов для их представления.Следовательно, после того, как значение достигает определенного эпсилона 1, оно округляется.Это происходит и для других записей.Таким образом, вы получаете прогноз, который на 100% уверен.

Почему ваша модель предсказывает это?Может быть, этот класс перепредставлен, поэтому он становится очень уверенным.Вы тренируетесь в течение долгого времени, поэтому веса насыщаются, особенно если у вас нет регуляризации.

...