El objetivo es por tanto calcular eficientemente
Probabilidad de una secuencia
de estados Supongamos una secuencia de estados
La probabilidad de esta secuencia es:
dada una secuencia de estados
La probabilidad de observar
cuando se da precisamente esta secuencia de estados
Por tanto, para obtener la probabilidad de una secuencia
de observables dado un modelo
, deberíamos calcular la probabilidad de
para cada una de las secuencias posibles
tal y como se muestra es impracticable; sólo para
observaciones sería necesario realizar del orden de
Para reducir esta complejidad se emplean estrategias de programación dinámica como los algoritmos forward y backward.
Se recomienda revisar la formalización habitual de un Modelo Oculto de Márkov para comprender cada uno de los elementos en la formulación de estos dos procedimientos.
es la probabilidad de observar
y estar en el instante de tiempo
{\displaystyle \alpha _{t+1}(j)={\biggl [}\displaystyle \sum _{i=1}^{N}{\alpha _{t}(i)a_{ij}}{\biggr ]}b_{j}(o_{t+1})}
{\displaystyle P(O|\mu )=\displaystyle \sum _{i=1}^{N}{\alpha _{T}(i)}}
El esquema muestra los estados y probabilidades necesarias para el cálculo de
hasta el final, cuando el estado en el instante de tiempo
{\displaystyle \beta _{t}(i)=\displaystyle \sum _{j=1}^{N}{a_{ij}\beta _{t+1}(j)b_{j}(o_{t+1})}}
El esquema muestra los estados y probabilidades necesarios para el cálculo de
Tanto el procedimiento hacia adelante como el algoritmo backward, requieren del orden de
operaciones; muy inferior a
es el número de estados y
es la longitud de la secuencia de observaciones) que son necesarias si se calcula
para todas las posibles secuencias
servirán - junto a los
- para contestar las otras dos preguntas fundamentales de los Modelos Ocultos de Márkov: