Bueno, estoy de acuerdo con Meir Maor.
Elasticsearch es un motor de búsqueda. Una muy buena. Puede encontrar documentos siempre que los haya incluido en su índice y que sean lo suficientemente similares a una consulta. También puede responder búsquedas exactas, por ejemplo, “encontrar todas las partes existentes cuyo part_id = 407”. Es la base de la pila ELK, ahora llamada pila Elastic, que permite la recopilación, el almacenamiento y la consulta / visualización inteligente de archivos de registro. Y eso es todo: esta es la funcionalidad básica de Elasticsearch. También puede ser parte de una aplicación más grande. Se asienta bien dentro del campo de recuperación de información.
El procesamiento del lenguaje natural (en adelante PNL), OTOH, es un campo separado, aunque similar, con una gran cantidad de técnicas utilizadas para manejar varios niveles de representación de información lingüística, desde caracteres, hasta palabras, frases, oraciones, párrafos, documentos y corpus. Se refiere a campos como morfología, sintaxis, semántica y pragmática.
- ¿Cuál es la tasa de error de trama (FER) en las tareas de reconocimiento de voz?
- ¿Qué es una explicación intuitiva de DBSCAN?
- ¿Cuáles son ejemplos cuando es útil generar muestras a partir de un modelo probabilístico?
- ¿Cuál es el trabajo de investigación sobre aprendizaje automático más emocionante que Yoshua Bengio leyó en 2015?
- Cómo hacer un bot que pueda ser entrenado para jugar juegos simples usando Python
¿Puede la PNL reemplazar a Elasticsearch? No. No están enfocados en resolver el mismo problema.
¿Elasticsearch utiliza PNL? Claro, para la tokenización, a veces se derivan y se detienen las palabras. Puede usar algo más, por ejemplo, al indexar sinónimos o frases. ¿Es esta la PNL más profunda? No.
¿Se puede agregar una interfaz de PNL sobre Elasticsearch? Puede, con diversos grados de éxito, y ver: Todo lo que necesita saber sobre la búsqueda en lenguaje natural (Sí, esto no es Elasticsearch, pero el principio es similar).
En resumen, me gusta comenzar con el problema que estoy tratando de resolver. Luego, trato de encontrar la herramienta más simple para resolverlo. Puede ser Elasticsearch. Puede ser un módulo de una biblioteca NLP. Puede ser otra cosa.