¿Existe una implementación popular de los campos aleatorios condicionales en Python ?
¡Parece que no puedo encontrar ninguno que sea ampliamente utilizado y popular!
¿Existe una implementación popular de los campos aleatorios condicionales en Python ?
¡Parece que no puedo encontrar ninguno que sea ampliamente utilizado y popular!
Respuestas:
CRF ++ es una opción popular en general, y tiene enlaces de Python . CRFSuite también tiene enlaces documentados aquí , pero no parece haber visto un uso tan extendido como CRF ++. Al momento de escribir este artículo, los marcos de aprendizaje automático de nivel superior como scikit-learn carecen de soporte CRF (consulte esta solicitud de extracción ).
fuente
CRF ++ tiene más enlaces entrantes porque es una biblioteca más antigua.
CRFSuite es superior en mi opinión.
Si está buscando enlaces de Python, CRFSuite también es mejor porque puede entrenar un modelo en Python, mientras que en CRF ++ solo puede probar modelos existentes en Python. (Ese fue el factor decisivo para mí). CRFSuite también viene con un montón de código de ejemplo en Python, como NER, Chunking y etiquetado POS.
fuente
Estas son algunas otras envolturas / implementaciones:
exit()
, y he visto pérdidas de memoria durante el entrenamiento. Además, wapiti está limitado en un tipo de características que puede representar, pero CRFsuite también está limitado (de una manera diferente). Wapiti está incluido en un contenedor, no es necesario instalarlo por separado.Recomiendo usar seqlearn si puede, python-crfsuite si necesita algoritmos de entrenamiento CRFsuite y velocidad de entrenamiento, pyCRFsuite si necesita una integración CRFsuite más avanzada y listo para enfrentar algunos inconvenientes, python-wapiti si necesita algoritmos o características de entrenamiento Wapiti no está disponible en CRFsuite (como condicionar las observaciones individuales en las transiciones) y el crf de Timvieira si no hay forma de hacer que funcione un compilador C / C ++, pero hay un numpy preconstruido disponible.
fuente
Creo que lo que estás buscando es PyStruct .
PyStruct
viene con buena documentación y se desarrolla activamente en github .A continuación se muestra una tabla que compara
PyStruct
conCRFsuite
y otros paquetes, extraídos de PyStruct - predicción estructurado en Python :fuente