Me estoy mojando los pies en las estadísticas, así que lamento si esta pregunta no tiene sentido. He utilizado modelos de Markov para predecir estados ocultos (casinos injustos, tiradas de dados, etc.) y redes neuronales para estudiar los clics de los usuarios en un motor de búsqueda. Ambos tenían estados ocultos que estábamos tratando de resolver usando observaciones.
Según tengo entendido, ambos predicen estados ocultos, así que me pregunto cuándo se usarían los modelos de Markov en las redes neuronales. ¿Son solo enfoques diferentes para problemas similares?
(Estoy interesado en aprender pero también tengo otra motivación, tengo un problema que estoy tratando de resolver usando modelos ocultos de Markov, pero me está volviendo loco, así que estaba interesado en ver si puedo cambiar a usar otra cosa).
fuente
Respuestas:
Lo que está oculto y lo que se observa.
Lo que está oculto en un modelo oculto de Markov es lo mismo que lo que está oculto en un modelo de mezcla discreta, así que para mayor claridad, olvídate de la dinámica del estado oculto y quédate con un modelo de mezcla finita como ejemplo. El "estado" en este modelo es la identidad del componente que causó cada observación. En esta clase de modelo, tales causas nunca se observan, por lo que 'causa oculta' se traduce estadísticamente en la afirmación de que los datos observados tienen dependencias marginales que se eliminan cuando se conoce el componente fuente. Y se estima que los componentes fuente son los que hacen que esta relación estadística sea verdadera.
Lo que está oculto en una red neuronal multicapa de avance con unidades medias sigmoideas son los estados de esas unidades, no las salidas que son el objetivo de la inferencia. Cuando la salida de la red es una clasificación, es decir, una distribución de probabilidad sobre posibles categorías de salida, estos valores de unidades ocultas definen un espacio dentro del cual las categorías son separables. El truco para aprender un modelo de este tipo es crear un espacio oculto (ajustando el mapeo de las unidades de entrada) dentro del cual el problema es lineal. En consecuencia, los límites de decisión no lineales son posibles desde el sistema en su conjunto.
Generativo versus discriminativo
El modelo de mezcla (y HMM) es un modelo del proceso de generación de datos, a veces llamado probabilidad o "modelo directo". Cuando se combina con algunas suposiciones sobre las probabilidades anteriores de cada estado, se puede inferir una distribución sobre los posibles valores del estado oculto utilizando el teorema de Bayes (un enfoque generativo). Tenga en cuenta que, aunque se llama un "previo", tanto el previo como los parámetros de probabilidad generalmente se aprenden de los datos.
En contraste con el modelo de mezcla (y HMM), la red neuronal aprende directamente una distribución posterior sobre las categorías de salida (un enfoque discriminativo). Esto es posible porque los valores de salida se observaron durante la estimación. Y como se observaron, no es necesario construir una distribución posterior a partir de un modelo anterior y específico para la probabilidad, como una mezcla. El posterior se aprende directamente de los datos, que son más eficientes y menos dependientes del modelo.
Mezclar y combinar
Para hacer las cosas más confusas, estos enfoques se pueden mezclar, por ejemplo, cuando el estado del modelo de mezcla (o HMM) a veces se observa realmente. Cuando eso es cierto, y en algunas otras circunstancias no relevantes aquí, es posible entrenar de manera discriminatoria en un modelo generativo. De manera similar, es posible reemplazar el mapeo del modelo de mezcla de un HMM con un modelo hacia adelante más flexible, por ejemplo, una red neuronal.
Las preguntas
Por lo tanto, no es del todo cierto que ambos modelos predicen el estado oculto. Los HMM se pueden usar para predecir el estado oculto, aunque solo del tipo que espera el modelo directo. Las redes neuronales se pueden usar para predecir un estado aún no observado , por ejemplo, estados futuros para los que hay predictores disponibles. Este tipo de estado no está oculto en principio, simplemente no se ha observado todavía.
¿Cuándo usarías uno en lugar del otro? Bueno, las redes neuronales hacen modelos de series de tiempo bastante incómodos en mi experiencia. También suponen que ha observado resultados. Los HMM no lo hacen, pero realmente no tienes ningún control sobre cuál es el estado oculto. Sin embargo, son modelos de series de tiempo adecuados.
fuente
Similarly it is possible to replace the mixture model mapping of an HMM with a more flexible forward model, e.g., a neural network.
¿te refieres a reemplazar las probabilidades de emisión p (Observado | Oculto) con un avance NN? Me he encontrado con esto en algunos lugares, pero ninguno da una explicación; solo mencionan que lo han implementado. Supongo que reemplazan el paso MLE para las emisiones de aprendizaje, pero no puedo entender cómo. ¿Conoces algún código o ejemplo explicativo? Cualquier puntero de bienvenida, gracias.Los modelos ocultos de Markov se pueden usar para generar un lenguaje, es decir, enumerar elementos de una familia de cadenas. Por ejemplo, si tiene un HMM que modela un conjunto de secuencias, podría generar miembros de esta familia, enumerando las secuencias que se incluirían en el grupo de secuencias que estamos modelando.
Redes neuronales, tome una entrada de un espacio de alta dimensión y simplemente mapee a un espacio de menor dimensión (la forma en que las redes neuronales mapean esta entrada se basa en el entrenamiento, su topología y otros factores). Por ejemplo, puede tomar una imagen de 64 bits de un número y asignarla a un valor verdadero / falso que describa si este número es 1 o 0.
Si bien ambos métodos pueden (o al menos pueden intentar) discriminar si un elemento es miembro de una clase o no, Neural Networks no puede generar un lenguaje como se describió anteriormente.
Hay alternativas a los modelos ocultos de Markov disponibles, por ejemplo, podría usar una red bayesiana más general, una topología diferente o una gramática estocástica sin contexto (SCFG) si cree que el problema radica en la falta de poder de los HMM para modele su problema, es decir, si necesita un algoritmo capaz de discriminar entre hipótesis más complejas y / o describir el comportamiento de datos que son mucho más complejos.
fuente
La mejor respuesta a esta pregunta de lo que he encontrado es la siguiente: ¿Es el aprendizaje profundo una cadena de Markov disfrazada ? Esto es exactamente lo que entendí, pero como ya había una discusión en otra parte de Internet, estoy poniendo el enlace aquí.
Podemos usar una secuencia de caracteres como entrada en lugar de un solo carácter. De esta manera, podemos capturar mejor el estado (dependiendo del contexto).
fuente