¿Qué es el procesamiento de lenguaje natural?
El procesamiento de lenguaje natural es una forma de machine learning que les permite a las personas comunicarse con la inteligencia artificial (IA) utilizando lenguaje humano.
default
{}
default
{}
primary
default
{}
secondary
Resumen sobre procesamiento de lenguaje natural
Resumen y definición de NLP
El procesamiento de lenguaje natural (NLP) es una rama fascinante de la IA que permite que personas y máquinas se comuniquen entre sí en lenguaje cotidiano. La forma en que usted le da indicaciones de voz a Siri u obtiene traducciones en Google son ejemplos del NLP en acción, porque ambos muestran que comprenden el software y responden al lenguaje humano.
¿Cómo se relaciona el NLP con la IA?
La mayoría de las personas no son programadoras ni expertas usuarias de software, que es una de las razones por las cuales el procesamiento de lenguaje natural es tan útil. El software puede tener una curva de aprendizaje pronunciada, y el NLP le permite incluso usar software complejo sin convertirse en experto. De hecho, el NLP le permite describirle simplemente a una IA lo que desea de la misma manera que podría explicárselo a un amigo.
El término "IA" abarca una amplia gama de tecnologías, pero la rama del NLP se centra en los desafíos del lenguaje humano. Para ser verdaderamente útiles, las soluciones de NLP tienen que hacer algo más que captar las palabras que usted dice. Los sistemas de NLP tienen que comprender el contexto y la intención detrás de sus palabras. Para hacerlo posible, los desarrolladores de NLP utilizan otras tecnologías de IA tales como machine learning y deep learning.
¿Por qué es importante el procesamiento de lenguaje natural?
El procesamiento de lenguaje natural le permite utilizar tecnología que, de lo contrario, podría ser difícil utilizar. También permite a las computadoras comprender texto y habla de una manera que no podían antes del NLP. Estos son algunos de los beneficios del NLP:
El NLP ayuda a las personas a ser más productivas
En el trabajo, el procesamiento de lenguaje natural puede aumentar su eficiencia permitiéndole utilizar la automatización para tareas repetitivas o que requieren mucho tiempo. Por ejemplo, un departamento de servicio al cliente puede utilizar chatbots potenciados por NLP para manejar consultas rutinarias de los clientes. O bien un departamento de contabilidad puede utilizar sistemas habilitados para NLP a fin de extraer información clave desde facturas y recibos y utilizarla para rellenar una base de datos u hoja de cálculo.
Como beneficios adicionales, automatizar la entrada y procesamiento de datos reduce las posibilidades de error humano y acelera los flujos de trabajo. Cuando un sistema puede comprender el lenguaje humano lo suficientemente bien como para encargarse de las tareas básicas, aumenta la productividad permitiendo que los usuarios se enfoquen en tareas de mayor valor.
El NLP ayuda a mejorar las experiencias de cliente
Si usted intenta comunicarse con una empresa por teléfono, pero no puede evitar una confusa cadena telefónica, está experimentando un sistema interactivo de respuesta por voz mal entrenado. Pero un chatbot de NLP bien entrenado puede brindar a los clientes una experiencia más intuitiva. Un sitio de e-commerce con un sistema habilitado para NLP, por ejemplo, puede analizar por cuáles productos ha estado navegando un cliente en el sitio. Comprendiendo qué productos son de interés para un cliente, el sistema puede sugerir aquellos que probablemente él desee.
Los chatbots de servicio al cliente potenciados por NLP mejoran las experiencias respondiendo preguntas o resolviendo problemas rápidamente. Estos chatbots se pueden diseñar para que tengan un historial completo de las interacciones de un cliente y reconocer los problemas que ha tenido en el pasado.
El NLP crea nueva información estratégica
Probablemente alguna vez haya enviado un correo electrónico a una empresa para hacer una pregunta, ofrecer asesoramiento o registrar una queja, y parece que nadie siquiera lo leyó. Y bien podría ser el caso, ya que pocas empresas tienen el tiempo para leer cada feedback que reciben de los clientes. Pero la IA habilitada para NLP sí tiene el tiempo. Puede tamizar enormes datasets tales como conversaciones con clientes en sitios web. Luego puede proporcionar a las empresas un resumen confiable de esas charlas para que la empresa pueda corregir el problema.
¿Cómo funciona el procesamiento de lenguaje natural?
Así es como el NLP hace posible las conversaciones entre humanos y máquinas. Los siguientes pasos se aplican al lenguaje en forma de texto. El NLP para lenguaje hablado es un tanto diferente pero sigue los mismos principios generales.
Usemos una oración de muestra para mostrar cómo funciona el proceso:
“Yo quiero demostrar cómo funciona el procesamiento de lenguaje natural”.
El algoritmo empieza con el preprocesamiento de texto.
Preprocesamiento de texto
El preprocesamiento de texto se refiere a simplificar el que crean las personas a fin de facilitar que los algoritmos de NLP procesen el lenguaje humano.
- Tokenización
La tokenización es el proceso de descomponer en tokens las palabras y puntuación de una oración. La tokenización es importante porque para los algoritmos de NLP es más eficiente procesar tokens que texto al realizar tareas tales como indexación y búsqueda. La oración de muestra tiene diez palabras: “Yo quiero demostrar cómo funciona el procesamiento de lenguaje natural”. También tiene un punto final, así que se obtienen diez tokens contando las palabras y uno contando el punto final, es decir un total de once tokens.
- Conversión a minúsculas
La conversión a minúsculas es el proceso de pasar todos los tokens a minúsculas para simplificar el dataset. En la oración de muestra, uno de los tokens es “Yo”. Para evitar ambigüedades y aumentar la eficiencia, el paso de conversión a minúsculas pasa a "yo" ese token que estaba en mayúsculas. Las reglas para la conversión a minúsculas se vuelven más complicadas en otras partes del proceso.
- Remoción de palabras vacías
Otra forma de simplificar el texto para el procesamiento de lenguaje natural es eliminar las palabras que no tienen un significado sustancial, llamadas "palabras vacías". En la oración de muestra, las palabras "yo" y "cómo" habitualmente se designarían como palabras vacías. Cuando un algoritmo las elimina, le quedan siete tokens, que son "quiero", "demostrar", "funciona" "procesamiento", "lenguaje", "natural" y ".".
- Derivación y lematización
Incluso con siete tokens restantes, hay espacio para una mayor simplificación. Un método, la lematización, es reducir una palabra a su base o forma raíz. El token “demostrar” es una palabra que se basa en la raíz “demonstr” al igual que “natural” se construye a partir de “natur”, así que el modelo reemplaza los tokens originales con las raíces “demonstr” y “natur”.
Una palabra puede tener diferentes significados en diferentes contextos, y la lematización es el proceso de determinar el significado correcto en un contexto particular. La oración de muestra incluye “quiero”, que puede significar “deseo" o “amo”. En este caso, la lematización asignaría el contexto donde “quiero” significa “deseo”.
Representación de texto
El siguiente paso es la representación de texto, que implica convertir palabras en un formato numérico que una máquina pueda procesar. Además de los números, el texto se puede convertir en vectores o incrustaciones, que son formatos más complejos que proporcionan información como, por ejemplo, el contexto.
- Bolsa de palabras (BoW)
Las computadoras son excelentes para contar, y la medición de BoW cuenta cuántas veces aparece una palabra en un documento. Si, por ejemplo, en un documento aparecen con frecuencia las palabras "equipo", "juego" y "puntos", el contexto más probable es que tenga que ver con deportes. La oración de muestra solo tiene una única instancia por cada palabra. La representación de BoW mostraría que cada palabra solo ocurre una vez:
{“yo”: 1; “quiero”: 1; “demostrar”: 1; “cómo”: 1; “trabaja”: 1; “procesamiento”: 1; “lenguaje”: 1; “natural”: 1}
- TF-IDF (frecuencia de término-frecuencia inversa en documento)
El método TF-IDF utiliza una fórmula basada en la frecuencia con la cual aparece una palabra en un dataset global compuesto por muchos documentos., a fin de determinar la importancia de una palabra. Cuantas más veces aparece una palabra, menor es su ponderación TF-IDF, y menos importante es en un documento dado. Palabras tales como “el” y “a” aparecen con bastante frecuencia, así que son menos importantes. Usted representaría la ponderación de la oración de muestra en una forma como esta, mostrando que las palabras comunes tienen una ponderación más baja y las palabras poco comunes tienen una ponderación más alta:
{“yo”: 0.1; “quiero”: 0.1; “demostrar”: 0.3; “cómo”: 0.1; “funciona”: 0.2; “procesamiento”: 0.2; “lenguaje”: 0.5; “natural”: 0.1}
Análisis de texto
El análisis de texto es el punto donde un algoritmo de NLP extrae el significado del texto. Es la manera en que un algoritmo puede producir respuestas adecuadas a la consulta de un usuario.
- Reconocimiento de entidad con nombre (NER)
Tras realizar un análisis cuantitativo, los algoritmos de NLP buscan luego palabras que son reconocibles como nombres de algo. La palabra "amazonas" se refiere a una figura mítica, pero la palabra "Amazonas" se refiere a una geografía específica, y un algoritmo de NLP necesita una forma de reconocer la diferencia. La oración de muestra, “Yo quiero demostrar cómo funciona el procesamiento de lenguaje natural”, incluye las palabras “procesamiento de lenguaje natural” que las personas podrían reconocer como nombres para una tecnología de IA. Esto se representa de la siguiente manera:
Resultado NER: [(“procesamiento de lenguaje natural”, “Tecnología”)]
- Análisis de sentimiento
Algunos datasets, p. ej., un catálogo de piezas para cortadoras de césped, pueden no tener un tono emocional significativo. Pero la reseña de una película puede tener un fuerte tono emocional. Si un dataset tiene cierto tono, el análisis de sentimiento es el paso que lo captura dentro del procesamiento de lenguaje natural. En la oración de muestra, el análisis de sentimiento podría verse así:
Resultado de sentimiento: Positivo
Análisis sintáctico
Cada oración tiene una estructura gramatical. El análisis sintáctico es el proceso de analizar esa estructura para encontrar sustantivos, verbos, sujetos, etc. Esto es importante porque los diferentes idiomas utilizan una sintaxis diferente, así que el análisis sintáctico es vital para la traducción automática. En la oración de muestra, el análisis sintáctico puede generar este resultado:
Esquema de sintaxis: (RAÍZ (S (NP (PRP yo)) (VP (VBP quiero) (S (VP (VBG demostrar) (SBAR (WHADVP (WRB cómo)) (VP (VBZ funciona) (NNP Procesamiento)) (NNP Lenguaje) (S (NP (NNP Natural)))))))))
Dependiendo del algoritmo específico, normalmente habrá pasos adicionales. El resultado es una conversación donde la máquina parece entender sus palabras e intención y le responde en lenguaje natural.
¿Qué ejemplos hay de tareas de procesamiento de lenguaje natural?
Controlar un dron con comandos de voz
Incluso la tecnología más potente tiene un valor limitado si usted no sabe cómo usarla. El procesamiento de lenguaje natural hace que la tecnología sea más accesible. Reduce la necesidad de tener conocimientos técnicos especializados para obtener los beneficios del hardware o software avanzado. Los usuarios pueden interactuar con sistemas habilitados para NLP a través de una conversación natural en lugar de depender de comandos complejos, codificación o controles físicos.
Por ejemplo, una aplicación a control remoto para drones pequeños puede permitirle decirle a un dron que haga algo, como por ejemplo, dar una vuelta en el aire, sin la necesidad de aprender los intrincados controles que de otra manera debería usar. La capacidad de utilizar comandos de voz simples permite que más personas utilicen la tecnología.
Obtener mejor información estratégica para la gestión de marca
Las personas expresan sus pensamientos y preferencias todos los días, y las empresas tienen acceso a gran parte de esos datos. Las empresas ya utilizan datos tales como las ventas de productos para comprender algunos aspectos del comportamiento de los clientes. Con las soluciones para procesamiento de lenguaje natural, las computadoras también pueden convertir en información accionable las conversaciones en redes sociales y las reseñas on-line de los clientes.
La información estratégica del NLP es de un tipo diferente a la de las analíticas de venta tradicionales. Las empresas utilizan cifras de ventas para obtener información estratégica operativa, tal como las proyecciones o la gestión de recursos, pero el análisis basado en NLP puede ser más potente en la gestión de marca o la mejora de experiencias del cliente.
Prevenir la sobrecarga de información
Si usted tiene una dirección de correo electrónico que utiliza para su trabajo, la sobrecarga de información puede parecer inevitable. El trabajador promedio recibe más de 120 correos electrónicos al día, así que no es sorprendente que alrededor del 60% de ellos simplemente ignoren los correos internos de la empresa. Pero si su aplicación de correo electrónico tiene capacidades de NLP, puede ayudar a evitar la sobrecarga de información. Puede filtrar, categorizar y priorizar correos electrónicos para que los más importantes reciban la atención que necesitan.
Del mismo modo, los sistemas de NLP incorporados dentro del software de colaboración pueden transcribir y resumir reuniones. Incluso pueden reconocer y capturar los puntos clave de una reunión e informar los elementos de acción asignados. Este tipo de automatización habilitada para NLP ayuda a ahorrarle tiempo al individuo y aumenta la eficiencia general de la organización.
Casos de uso de procesamiento de lenguaje natural
El NLP está transformando las industrias. Las aplicaciones de NLP optimizan la eficiencia del empleado, mejoran las experiencias de cliente y habilitan una toma de decisiones estratégica, abarcando una amplia gama de sectores. A continuación se muestran algunos casos de uso notables para el NLP en diferentes industrias.
Análisis de defectos: identifica defectos habituales mediante el análisis de notas de técnicos, quejas de clientes y reclamos de garantía
Comunicación con los proveedores: permite el aprovisionamiento oportuno de materiales mediante el análisis de los correos electrónicos y documentos del proveedor
Detección de fraudes: identifica anomalías que indican fraude a través del monitoreo y análisis de patrones de transacciones
Aceleración comercial: automatiza la ejecución comercial en base a análisis de datos en tiempo real
Documentación clínica: transcribe y gestiona notas clínicas
Análisis de datos de pacientes: fundamenta diagnósticos mediante identificación de patrones en la historia clínica del paciente
Análisis de contratos y verificación de compliance: automatiza la revisión de documentos para el cumplimiento regulatorio y de otra índole
Automatización del descubrimiento legal: aísla rápidamente la información pertinente de grandes cantidades de documentos
Automatización de procesamiento de reclamos: extrae y valida información de los formularios de reclamos e informes médicos enviados
Evaluación de riesgos: mejora de la precisión de la evaluación de riesgos mediante la extracción de datos automatizada desde historias clínicas y cuestionarios de estilo de vida
Análisis de registros de mantenimiento: analiza las notas del personal de mantenimiento para prever y evitar fallas en el equipamiento
Interpretación de datos geológicos: extrae y resume datos desde fuentes tales como informes geológicos, registros de perforación y documentos de investigación
Optimización de la lista de propiedades: genera descripciones atractivas basadas en las características de la propiedad
Calificación de leads: analiza correos electrónicos y consultas on-line para priorizarlos según la preparación para la compra
Optimización de inventario: prevee la demanda a través del análisis de datos de ventas
Recomendaciones de productos personalizadas: crea experiencias de compra más personalizadas a través del análisis del historial de compras
Enfoques del procesamiento de lenguaje natural
La mayoría de los enfoques para el procesamiento de lenguaje natural se ajustan a una de dos categorías generales. Adoptan un enfoque basado en reglas o uno basado en machine learning.
NLP basado en reglas
Este enfoque busca identificar un conjunto de reglas lingüísticas que pueda seguir una computadora para comprender y generar lenguaje humano de manera confiable. Como resultado, está fuertemente orientado hacia los aspectos de la lingüística computacional. Los enfoques basados en reglas pueden ser muy efectivos si utilizan datos donde el lenguaje está controlado y es predecible, p. ej., documentos legales o manuales técnicos.
NLP basado en machine learning
Un enfoque de NLP basado en machine learning para utiliza una variedad de métodos estadísticos y enfoques algorítmicos. En lugar de crear las reglas de antemano, el objetivo es permitir que una computadora aprenda a comunicarse en base a un dataset masivo. La idea es que una vez que una computadora haya procesado suficientes ejemplos de lenguaje humano, identificará los patrones que hacen que este sea correcto. Si usted tiene suficientes datasets, los enfoques basados en machine learning para NLP pueden ser bastante flexibles y notablemente eficaces.
Una breve historia del procesamiento de lenguaje natural
El procesamiento de lenguaje natural como rama de la IA comenzó a desarrollarse en la década de 1940. En las décadas de 1980 y 1990, las soluciones de computación se volvieron más poderosas y el machine learning comenzó a madurar. Más recientemente, el auge del deep learning, las redes neuronales y las distintas formas de IA generativa han transformado completamente el procesamiento de lenguaje natural.
Eventos en la evolución del NLP
- Los 1940 | Aparecen los primeros desarrollos del PNL, incluyendo el Memorándum Weaver sobre traducción automática
- Los 1950 | Se presenta la “gramática universal”; se propone la prueba de Turing; surge el deep learning
- Los 1960 | Surgen chatbots como ELIZA y teorías lingüísticas que apuntalan la evolución del PNL
- Los 1970 | Surgen la teoría de la gramática de casos y las redes semánticas; los sistemas basados en reglas maduran y proliferan los chatbots
- Los 1980 | Se desarrollan los primeros algoritmos de machine learning; las tecnologías de reconocimiento de voz evoluciona; la lingüística computacional se expande y surge la teoría RNN
- Los 1990 | Surgen modelos estadísticos y LSTM y la traducción automática gana fuerza
- Los 2000 | El machine learning evoluciona rápido y se desarrollan modelos de lenguaje neuronal; hay acceso a grandes cantidades de datos hablados y textuales
- Los 2010 | Un aumento significativo en la disponibilidad de datos y computadoras permite que el deep learning evolucione rápido
- Los 2020 | Los modelos de lenguaje grandes, los modelos de lenguaje preentrenados y los transformadores ganan protagonismo
Resumen tecnológico del procesamiento de lenguaje natural
"Procesamiento de lenguaje natural" es un término general que abarca una gama de tecnologías y técnicas que hacen posible que las máquinas comprendan y produzcan lenguaje humano. Cada tecnología que habilita el NLP cae dentro de una de esas dos capacidades.
Subcategorías del NLP
El procesamiento de lenguaje natural abarca una gama de tecnologías y técnicas. Pero el propósito principal del NLP es hacer posible que las máquinas entiendan y produzcan lenguaje humano. Estas dos capacidades son los componentes principales del procesamiento de lenguaje natural.
- Comprensión de lenguaje natural (NLU): la comprensión de lenguaje natural se centra en la comprensión e interpretación del lenguaje humano. Para ello, los sistemas de NLU deben ser capaces de analizar la sintaxis y la semántica, y comprender cómo el contexto afecta al significado en el lenguaje humano. Esto puede tomar formas tales como comprender preguntas habladas o realizar tareas en base a directivas habladas.
- Generación de lenguaje natural (NLG): la generación de lenguaje natural se centra en la producción de texto o habla similar a los humanos. Para ello, los sistemas de NLG deben ser capaces de convertir datos no estructurados en un lenguaje de sonido natural. Ello puede implicar resumir información o incluso mantener conversaciones.
El rol del machine learning en el NLP
¿Qué podría hacer una computadora si pudiera enseñarse a sí misma nuevas habilidades? Eso es el machine learning. El machine learning ocurre cuando las computadoras aprenden a realizar tareas por sí mismas sin instrucciones específicas.
La forma del machine learning en el NLP es crear modelos que habiliten tanto la comprensión como la generación de lenguaje natural. Utiliza técnicas que incluyen el aprendizaje supervisado, el cual se refiere a los modelos de entrenamiento basado en datos que tienen etiquetas, y el aprendizaje no supervisado, que son los modelos de entrenamiento basado en datos que no tienen etiquetas.
El rol del deep learning en el NLP
El deep learning es una forma específica de machine learning. Utiliza redes neuronales que tienen múltiples capas, razón por la cual la palabra “deep” está en el nombre. La palabra "learning" se refiere al uso de algoritmos que identifican y luego modelan patrones complejos en datasets. El deep learning es importante en el NLP porque lo ha mejorado para ciertas tareas. Ellas incluyen traducir de un idioma otro, analizar la sentimiento en un dataset y generar texto.
Por qué las redes neuronales mejoran el NLP
Las redes neuronales se basan en la idea de usar el cerebro humano como modelo para procesar datos. Las redes neuronales permiten que los sistemas de NLP sean altamente precisos tanto en la comprensión como en la generación de lenguaje humano. Las redes neuronales pueden tener diversas arquitecturas y son clave para habilitar aplicaciones como un asistente virtual, chatbot o análisis de texto automatizado.
Producto de SAP
Descubra qué puede hacer el NLP por su negocio
Conozca a Joule: el copiloto de IA de SAP que puede ayudar a resolver desafíos de negocio complejos de manera más rápida, inteligente y con mejores resultados. Solo dé la indicación.
Lingüística computacional y NLP
La lingüística computacional es el campo de estudio que combina informática y lingüística para centrarse en el procesamiento de lenguaje natural. Crea una base teórica para permitir que las computadoras comprendan el lenguaje humano.
- Sintaxis
Estudia la estructura de las oraciones y las reglas que hacen que las oraciones se adapten a la normas gramaticales o no.
Sintaxis en español: “El gato se sienta en la alfombra”.
Sintaxis en español incorrecta: “Gato el sienta la se alfombra en”.
- Semántica
Estudia el significado del lenguaje, incluyendo el modo en que palabras y frases representan objetos, acciones e ideas.
Oración: “El gato está sobre la alfombra”.
Interpretación semántica: el significado es que hay un gato físicamente ubicado encima de una alfombra.
- Pragmática
Estudia la forma en que el contexto influye en la interpretación del lenguaje.
Oración: “¿Puedes pasarme la sal?”
Interpretación pragmática: aunque pregunta sobre una posibilidad, el contexto muestra que se debe entender como un pedido educado para que alguien pase la sal.
La lingüística computacional es importante porque conecta los puntos entre teoría lingüística y aplicaciones reales del NLP.
Preguntas frecuentes
Los 4 subcampos principales son:
1. Comprensión de lenguaje natural (NLU), centrado en habilitar computadoras que entiendan el significado e intención que hay detrás del lenguaje
2. La generación de lenguaje natural (NLG) habilita texto legible por humanos a partir de datos estructurados
3. El reconocimiento de voz convierte el lenguaje hablado en texto
4. La síntesis de voz convierte el texto escrito en lenguaje hablado