Como nota al margen: Te pediría amablemente que mantengas esta lista (incompleta) para que los usuarios interesados tengan un recurso fácilmente accesible. El estado actual aún requiere que las personas investiguen muchos documentos y/o informes técnicos largos para encontrar respuestas relacionadas con CRFs y HMMs.
Además de las otras respuestas ya buenas, quiero señalar las características distintivas que considero más notables:
- Los HMMs son modelos generativos que intentan modelar la distribución conjunta P(y,x). Por lo tanto, estos modelos intentan modelar la distribución de los datos P(x) que a su vez pueden imponer características altamente dependientes. Estas dependencias a veces son no deseadas (por ejemplo, en el etiquetado de POS de NLP) y muy a menudo difíciles de modelar/calcula.
- Los CRFs son modelos discriminativos que modelan P(y|x). Como tal, no requieren modelar explícitamente P(x) y dependiendo de la tarea, pueden por lo tanto ofrecer un mejor rendimiento, en parte porque necesitan menos parámetros para ser aprendidos, por ejemplo, en configuraciones donde no se desea generar muestras. Los modelos discriminativos suelen ser más adecuados cuando se utilizan características complejas y superpuestas (ya que a menudo es difícil modelar su distribución).
- Si tienes características superpuestas/ complejas (como en el etiquetado de POS) es posible que quieras considerar los CRFs ya que pueden modelarlas con sus funciones de características (ten en cuenta que normalmente tendrás que ingeniar estas funciones de características).
- En general, los CRFs son más potentes que los HMMs debido a su aplicación de funciones de características. Por ejemplo, puedes modelar funciones como 1($y_t$=NN, $x_t$=Smith, $cap(x_{t-1})$=true) mientras que en los HMMs (de orden primero) se utiliza la suposición de Markov, imponiendo una dependencia solo al elemento anterior. Por lo tanto, considero a los CRFs como una generalización de los HMMs.
- También nota la diferencia entre CRFs lineales y generales. Los CRFs lineales, al igual que los HMMs, solo imponen dependencias en el elemento anterior mientras que con los CRFs generales puedes imponer dependencias a elementos arbitrarios (por ejemplo, el primer elemento se accede al final de una secuencia).
- En la práctica, verás los CRFs lineales con más frecuencia que los CRFs generales ya que suelen permitir una inferencia más sencilla. En general, la inferencia en CRF a menudo es intratable, dejándote con la única opción tratable de la inferencia aproximada).
- La inferencia en CRFs lineales se realiza con el algoritmo de Viterbi al igual que en los HMMs.
- Tanto los HMMs como los CRFs lineales suelen entrenarse con técnicas de Máxima Verosimilitud como el descenso de gradiente, métodos cuasi newtonianos o en el caso de los HMMs con técnicas de Maximización de Expectativas (algoritmo de Baum-Welch). Si los problemas de optimización son convexos, todos estos métodos ofrecen el conjunto de parámetros óptimo.
- Según [1], el problema de optimización para aprender los parámetros del CRF lineal es convexo si todos los nodos tienen distribuciones de familia exponencial y se observan durante el entrenamiento.
[1] Sutton, Charles; McCallum, Andrew (2010), "Una Introducción a los Campos Aleatorios Condicionales"
4 votos
Los lectores de este comentario quizás no les guste esta respuesta, pero si realmente necesitan saber la respuesta, la mejor manera de entender es leer los documentos ustedes mismos y formar su propia opinión. Esto lleva mucho tiempo, pero es la única forma de saber realmente qué está sucediendo y poder decir si otras personas les dicen la verdad.
0 votos
¿A qué papel te refieres? Por favor comparte.