Hey,
I train a model with log_softmax activation in the last layer,
then while evaluating the model, I should only print the model(x) to get the real probs, right?
so if it’s that why Keras only takes softmax instead of log softmax and it totally works?
2 Likes
PyTorch uses log_softmax
instead of first applying softmax
and later log
for numerical stability as described in the LogSumExp trick.
If you want to print the probabilities, you could just use torch.exp
on the output.
3 Likes
thank you for the reply
so it means that if i use log_softmax, then i should call exp on the output - exp(out)
otherwise the argmax will return incorrect output for classifying the data ?
1 Like
If you just want the argmax you can keep the log_softmax and use argmax after that, but if you want the correct softmax probabilities you should use exp(out)
4 Likes
thank you for your answer
1 Like