¿Qué es el proceso de procesamiento del lenguaje natural?

Una canalización es solo una forma de diseñar un programa donde la salida de un módulo se alimenta a la entrada del siguiente. Por ejemplo, los shells de Linux presentan una canalización donde la salida de un comando se puede alimentar al siguiente utilizando el carácter de canalización, o |.

Por lo tanto, la canalización no es una técnica que solo aparece en PNL.

¿Por qué utiliza tuberías en PNL?

  • Debido a que es una tarea complicada, puede dividirse en subtareas que pueden ser resueltas independientemente por diferentes especialistas.
  • Debido a que cada subtarea se puede lograr utilizando diferentes algoritmos, y es posible que desee cambiar el algoritmo por otro sin afectar el resto de la tubería.

¿Hay solo una tubería?

Sin embargo, las tuberías no son las mismas para cada proyecto. El proyecto puede inventar su propio sistema de tuberías o no utilizar ninguna. En lugar de una tubería, el proyecto puede usar algún otro diseño, como una arquitectura monolítica donde todo se combina en un gran programa.

Sin embargo, por lo que he visto, las tuberías casi siempre se usan en PNL.

¿Cuál es la limitación de las tuberías?

El problema con las tuberías es que la separación pura de los pasos en la tubería impide la retroalimentación. A veces necesita comentarios de un paso posterior a un paso anterior para corregir errores o ambigüedades en un paso anterior. Por lo tanto, el diseño de la tubería pura se modifica para permitir volver sobre los pasos y revisar la salida anterior, lo que puede ser difícil.

Referencias científicas

Si entiendo su pregunta correctamente, la respuesta sería que la canalización es una técnica en lugar de un descubrimiento, por lo que no debería buscar referencias científicas. Solo busque algunos proyectos que implementen PNL utilizando tuberías y vea cómo lo hacen.

Una tubería en PNL es una cadena de módulos independientes, cada uno de los cuales toma como entrada la salida del módulo anterior.

Por ejemplo, si desea extraer roles semánticos de una oración, puede seguir la siguiente tubería:

texto sin formato -> tokenización -> lematización -> etiquetado pos -> análisis de dependencia -> etiquetado de roles

ADEMÁS:

  • fácil y rápido de construir
  • puedes usar módulos existentes
  • fácil de evaluar y ver qué módulo necesita ser mejorado o reemplazado
  • se puede usar como una línea de base sólida cuando intentas implementar un módulo unificador

CONTRAS :

  • cuanto más módulo tenga, más errores se acumularán.
  • debe ser extremadamente preciso en cada formato de entrada / salida.
  • es menos elegante que una formalización única (al menos para mí)

Si desea implementar uno rápidamente, tiene todos los ladrillos disponibles en NLTK (python).

Espero poder ayudar … 🙂

Aquí hay un gran artículo sobre PNL con algunos ejemplos de gr8. Espero que esto aclare sus conceptos Procesamiento del lenguaje natural: una introducción

More Interesting

¿Qué lenguajes de programación son mejores para procesar el sonido y darlo como entrada a una red neuronal artificial?

¿Qué valor cree que tiene la selección de funciones en el aprendizaje automático? ¿Cuál crees que mejora más la precisión, la selección de características o la ingeniería de características?

¿Cuáles son las sinergias entre los estudios en Operaciones y Gestión de la Información y Ciencias de la Computación?

¿Qué es la programación probabilística?

¿Cómo se puede utilizar la inteligencia artificial y el aprendizaje automático en el comercio y la inversión?

¿Por qué funciona la función de costo de regresión logística?

¿Qué papel juega la intuición en las matemáticas y puede la IA reemplazar completamente a un matemático?

¿Hay algún ejemplo de código de agrupación de documentos utilizando PCA o Autoencoder o algún otro algoritmo de agrupación?

¿Cuánta experiencia ML necesita uno para las competiciones ML de Kaggle?

¿Prediciendo compras (en comercio electrónico) a través de modelos estadísticos o de aprendizaje automático?

¿Cuál es la relación entre covarianza cero e independencia? ¿Cuáles son ejemplos en la ciencia de variables que no son independientes pero tienen cero covarianza?

¿Con qué frecuencia debe verificar el conjunto de validación durante el entrenamiento de la red neuronal en función de los ejemplos de entrenamiento (cada N ejemplos de entrenamiento)?

¿Cómo debo aprender el aprendizaje automático? ¿Puede proporcionar una hoja de ruta específica desde un principiante hasta un experto?

¿Quiénes son algunos investigadores notables del aprendizaje automático?

¿Cuál es la diferencia entre SVM y ANN?