Eu implementei os algoritmos Viterbi e Forward , mas, estranhamente, não consigo entender como o algoritmo Backward funciona. Intuitivamente, sinto que preciso fazer a mesma coisa que no Forward apenas para trás, usando os valores calculados durante a propagação do Forward .
Minha intuição está correta?
Eu li muitos slides e estou cansado de notação matemática neste momento. Isso não ajuda. Eu preciso de algo que em inglês simples explique a diferença entre os algoritmos Backward e Forward .
Você pode fornecer uma breve explicação sobre como é feito o algoritmo Backward ?
Suponha o seguinte pequeno HMM e os resultados do algoritmo Forward para a sequência "BB" abaixo:
START -> 1
H: 0.5 * 0.8 = 0.4
L: 0.5 * 0.6 = 0.3
1 -> 2
H: 0.4 * 0.2 * 0.8 + 0.3 * 0.6 * 0.8 = 0.208
L: 0.4 * 0.8 * 0.6 + 0.3 * 0.4 * 0.6 = 0.264
2 -> END
END: 0.208 * 0.3 + 0.264 * 0.7 = 0.2472