Hi there!
That’s a nice application of LSTMs. Now, for your question, I think it’s probably due to the fact that you use the softmax activation function in your output layer. This functions always returns a number between 0 and 1 (you can look up the graph). Generally, the output of a softmax activation can indeed be seen as a probability for the corresponding class in a multi-class problem.
I hope this sets you up looking in the right direction