I have a sequence of observations e.g. ["Click", "Scroll", "Hover", "Zoom", "Select"]
. I need to predict the next value of this observation sequence but not the next hidden state.
I know that there are three fundamental problems for HMMs:
- a) Given the model parameters and observed data, we can estimate the optimal sequence of hidden states.
- b) Given the model parameters and observed data, we can calculate the likelihood of the data.
- c) Given just the observed data, we can estimate the model parameters.
So, for solutions to my kind of problem:
- I thought by referencing to b) that if I make conditional sequences of data each of them ending with one of the possible values that could stand for the next observation and calculating the likelihood of each of them given the model, then can this be considered as prediction?
To be more specific, in my example (if I know that the possible observations can only be Click/Scroll/Hover/Zoom/Select) I will simulate the following sequences
["Click", "Scroll", "Hover", "Zoom", "Select", "Scroll"]
["Click", "Scroll", "Hover", "Zoom", "Select", "Click"]
["Click", "Scroll", "Hover", "Zoom", "Select", "Select"]
["Click", "Scroll", "Hover", "Zoom", "Select", "Hover"]
["Click", "Scroll", "Hover", "Zoom", "Select", "Zoom"]
and the sequence that gives higher probability is "the predicted", so eventually I also have the predicted next observation, which will be the last observation of the sequence that gives higher likelihod. Is this correct?
Another way as it is referred in this link would be to predict the most likely hidden-state-sequence based on a) and then through the emission distribution of the last hidden state to calculate the mean of this distribution? The above link was never verified and I am wondering if anyone could verify it.
Other way would be to get the sum of the likelihoods of all states each of them multiplied with the mean of the state's distribution. Is it correct?
Thank you in advance for any feedback you can give me.