Resumen
Los modelos de Markov ocultos (HMM) son mucho más sencillos que las redes neuronales recurrentes (RNN), y se basan en fuertes suposiciones que pueden no ser siempre ciertas. Si las suposiciones son Entonces, es posible que el rendimiento de un HMM sea mejor, ya que es menos complicado que funcione.
Una RNN puede funcionar mejor si se tiene un conjunto de datos muy grande, ya que la complejidad adicional puede aprovechar mejor la información de los datos. Esto puede ser cierto incluso si las suposiciones de los HMM son ciertas en su caso.
Por último, no se limite a estos dos modelos para su tarea de secuencias, a veces las regresiones más simples (por ejemplo, ARIMA) pueden ganar, y a veces otros enfoques complicados como las redes neuronales convolucionales pueden ser los mejores. (Sí, las CNN pueden aplicarse a algunos tipos de datos de secuencias al igual que las RNN).
Como siempre, la mejor manera de saber qué modelo es el mejor es hacer los modelos y medir el rendimiento en un conjunto de pruebas realizado.
Supuestos fuertes de los HMM
Las transiciones de estado sólo dependen del estado actual, no de nada del pasado.
Esta suposición no se cumple en muchos de los ámbitos que conozco. Por ejemplo, supongamos que se trata de predecir para cada minuto del día si una persona fue despierto o dormido a partir de los datos del movimiento. La posibilidad de que alguien pase de dormido a despierto aumenta la más largo la persona ha estado en el dormido estado. En teoría, una RNN podría aprender esta relación y explotarla para obtener una mayor precisión predictiva.
Se puede intentar evitar esto, por ejemplo, incluyendo el estado anterior como característica, o definiendo estados compuestos, pero la complejidad añadida no siempre aumenta la precisión predictiva de un HMM, y definitivamente no ayuda a los tiempos de cálculo.
Debe definir previamente el número total de estados.
Volviendo al ejemplo del sueño, puede parecer que sólo hay dos estados que nos importan. Sin embargo, aunque sólo nos interese predecir despierto contra. dormido Nuestro modelo puede beneficiarse de calcular estados adicionales como conducir, ducharse, etc. (por ejemplo, ducharse suele venir justo antes de dormir). De nuevo, una RNN podría aprender teóricamente esa relación si se le mostraran suficientes ejemplos de ella.
Dificultades con las RNN
De lo anterior puede parecer que las RNN son siempre superiores. Sin embargo, debo señalar que las RNN pueden ser difíciles de hacer funcionar, especialmente cuando el conjunto de datos es pequeño o las secuencias son muy largas. Personalmente, he tenido problemas para conseguir que las RNN se entrenen con algunos de mis datos, y tengo la sospecha de que la mayoría de los métodos/directrices de las RNN publicadas están ajustadas a texto datos. Al intentar utilizar las RNN en datos no textuales, he tenido que realizar una búsqueda de hiperparámetros más amplia de lo que me gustaría para obtener buenos resultados en mis conjuntos de datos particulares.
En algunos casos, he comprobado que el mejor modelo para los datos secuenciales es el estilo UNet ( https://arxiv.org/pdf/1505.04597.pdf ) Modelo de red neuronal convolucional, ya que es más fácil y rápido de entrenar, y es capaz de tener en cuenta todo el contexto de la señal.