El Procesamiento del Lenguaje Natural (PNL) es la rama de la Inteligencia Artificial (IA) que se ocupa de entrenar una computadora para comprender, procesar y generar lenguaje. Los motores de búsqueda, los servicios de traducción automática y los asistentes de voz funcionan con esta tecnología.
Si bien el término se refería originalmente a la capacidad de lectura de un sistema, ahora se ha convertido en un coloquialismo para toda la lingüística computacional. Las subcategorías incluyen la generación de lenguaje natural (NLG), la capacidad de una computadora para crear comunicación propia, y la comprensión del lenguaje natural (NLU), la capacidad de comprender la jerga, los errores de pronunciación, las faltas de ortografía y otras variantes del lenguaje.
Cómo funciona el procesamiento del lenguaje natural
El PNL funciona mediante el aprendizaje automático (Machine Learning o ML). Los sistemas de aprendizaje automático almacenan palabras y las maneras en que éstas se unen. De esta manera, las frases, oraciones y, a veces, libros enteros se introducen en los motores de aprendizaje automático donde se procesan mediante reglas gramaticales, los hábitos lingüísticos de la vida real de las personas o ambos. Luego, la computadora usa estos datos para encontrar patrones y extrapolar lo que viene a continuación. Tomemos el software de traducción, por ejemplo: en francés, “Voy al parque” es “Je vais au parc”, por lo que el aprendizaje automático predice que “Voy a la tienda” también comenzará con “Je vais au. ” Todo lo que la computadora necesita después de eso es la palabra para “almacenar”.
Aplicaciones de PNL
La traducción automática es una poderosa aplicación de PNL, pero la búsqueda es la más utilizada. Cada vez que busca algo en Google o Bing, está introduciendo datos en el sistema. Cuando hace clic en un resultado de búsqueda, el sistema lo interpreta como una confirmación de que los resultados que ha encontrado son correctos y utiliza esta información para buscar mejor en el futuro.
Los chatbots funcionan de la misma manera: se integran con Slack, Microsoft Messenger y otros programas de chat donde leen el idioma que usas y luego se encienden cuando escribes una frase de activación. Los asistentes de voz como Siri y Alexa también se ponen en marcha cuando escuchan frases como “Hola, Alexa”. Es por eso que los críticos dicen que estos programas siempre están escuchando: si no lo estuvieran, nunca sabrían cuándo los necesita. A menos que encienda una aplicación manualmente, los programas de PNL deben operar en segundo plano, esperando esa frase.
Ejemplos de procesamiento de lenguaje natural
Los datos vienen en muchas formas, pero el mayor grupo de datos sin explotar consiste en texto. Las patentes, las especificaciones de productos, las publicaciones académicas, la investigación de mercado, las noticias, por no hablar de las redes sociales, tienen el texto como componente principal y el volumen de texto crece constantemente. Aplica la tecnología a la voz y la piscina se vuelve aún más grande. A continuación, se muestran tres ejemplos de cómo las organizaciones están poniendo en práctica la tecnología:
Accenture lo usa para analizar contratos: la herramienta Accenture Legal Intelligent Contract Exploration (ALICE) ayuda a la organización legal de la firma de servicios globales de 2,800 profesionales a realizar búsquedas de texto en sus más de un millón de contratos, incluidas búsquedas de cláusulas contractuales. ALICE utiliza “incrustación de palabras” para revisar los documentos del contrato párrafo por párrafo, buscando palabras clave para determinar si el párrafo se relaciona con un tipo de cláusula de contrato en particular.
Verizon procesa las solicitudes de los clientes: el grupo Business Service Assurance de Verizon utiliza la PNL y el aprendizaje profundo (Deep Learning) para automatizar el procesamiento de los comentarios de las solicitudes de los clientes. El grupo recibe más de 100,000 solicitudes entrantes por mes. Su trabajador digital habilitado para IA para garantía de servicio lee los tickets de reparación y responde automáticamente a las solicitudes más comunes, como informar sobre el estado actual del ticket o actualizaciones del progreso de la reparación. Los problemas más complejos se envían a ingenieros humanos.
Public Service Energy & Gas (PSE & G) ayuda a los clientes con el asistente virtual: el servicio público de Nueva Jersey utiliza tecnología de asistente virtual y otros servicios digitales para permitir a sus clientes administrar sus cuentas de electricidad o gas mediante comandos de voz. Fue construido utilizando el kit de habilidades de Alexa proporcionado por Amazon.
Software de procesamiento de lenguaje natural
Ya sea que esté creando un chatbot, un asistente de voz, una aplicación de texto predictivo u otra aplicación con PNL en su núcleo, necesitará herramientas que lo ayuden a hacerlo. Según Technology Evaluation Centers, firma asesora imparcial que ayuda a encontrar la mejor solución de software para las necesidades del usuario, el software más popular incluye:
Kit de herramientas de lenguaje natural (NLTK). NLTK es un marco de código abierto para crear programas Python que funcionen con datos de lenguaje humano. Fue desarrollado en el Departamento de Computación y Ciencias de la Información de la Universidad de Pennsylvania y proporciona interfaces a más de 50 corpus y recursos léxicos, un conjunto de bibliotecas de procesamiento de texto, envoltorios para bibliotecas de procesamiento de lenguaje natural y un foro de discusión. NLTK se ofrece bajo la licencia Apache 2.0.
SpaCy. SpaCy es una biblioteca de código abierto para el procesamiento avanzado del lenguaje natural diseñado explícitamente para uso de producción en lugar de investigación. SpaCy se creó teniendo en cuenta la ciencia de datos de alto nivel y permite una minería de datos profunda. Tiene licencia del MIT.
Gensim. Gensim es una biblioteca de Python de código abierto. La biblioteca independiente de la plataforma admite semántica estadística escalable, análisis de documentos de texto sin formato para la estructura semántica y la capacidad de recuperar documentos semánticamente similares. Está diseñado para manejar grandes cantidades de texto sin supervisión humana.
Amazon Comprehend. Este servicio de Amazon no requiere experiencia en aprendizaje automático. Su objetivo es ayudar a las organizaciones a encontrar información a partir del correo electrónico, las reseñas de los clientes, las redes sociales, los tickets de soporte y otros mensajes de texto. Utiliza análisis de sentimientos, extracción de parte del discurso y tokenización para analizar la intención detrás de las palabras.
Analizador de tonos IBM Watson. Esta solución basada en la nube está destinada a la escucha social, la integración de chatbot y la supervisión del servicio al cliente. Puede analizar la emoción y el tono en las publicaciones de los clientes y monitorear las llamadas de servicio al cliente y las conversaciones de chat.
Traducción de Google Cloud. Esta API usa NLP para examinar un texto fuente y determinar el idioma. Luego usa la traducción automática neuronal para traducir dinámicamente el texto a otro idioma. La API permite a los usuarios integrar la funcionalidad en sus propios programas.
Cursos de procesamiento del lenguaje natural
Hay muchos recursos disponibles para aprender a crear y mantener aplicaciones de PNL y algunos de ellos son gratuitos. Incluyen:
Introducción al procesamiento del lenguaje natural en Python de DataCamp. Este curso gratuito, que se ofrece en 15 videos y 51 ejercicios, cubre los conceptos básicos de la PNL con Python, incluido cómo identificar y separar palabras, cómo extraer temas en un texto y cómo construir su propio clasificador de noticias falsas.
Introducción al procesamiento del lenguaje natural (NLP) de Udemy. Este curso introductorio brinda experiencia práctica para trabajar y analizar texto con Python y el kit de herramientas de lenguaje natural. Consiste en tres horas de video bajo demanda, tres artículos y 16 recursos descargables. El curso cuesta 19.99 dólares e incluye un certificado de finalización.
Hands On Natural Language Processing (NLP) con Python de Udemy. Este curso es para personas con experiencia básica en programación en cualquier idioma, comprensión de conceptos de programación orientada a objetos, conocimiento de matemáticas básicas a intermedias y conocimiento de operaciones matriciales. Está completamente basado en proyectos e implica la construcción de un clasificador de texto para predecir la opinión de los tweets en tiempo real, y un resumen de artículos que puede buscar artículos y encontrar el resumen. El curso consta de 10.5 horas de video bajo demanda y ocho artículos. Cuesta 19.99 dólares e incluye un certificado de finalización.
Procesamiento del lenguaje natural (NLP) de edX. Este curso de seis semanas, ofrecido por Microsoft a través de edX, proporciona una descripción general del procesamiento del lenguaje natural y el uso de métodos clásicos de aprendizaje automático. Cubre la traducción automática estadística y los modelos de similitud semántica profunda (DSSM) y sus aplicaciones. También cubre las técnicas de aprendizaje por refuerzo profundo aplicadas en PNL y la inteligencia multimodal del lenguaje de la visión. Es un curso de nivel avanzado y quienes lo completen pueden obtener un Certificado verificado por 99 dólares.
Procesamiento del lenguaje natural de Coursera. Como parte de la especialización avanzada en aprendizaje automático de Coursera, este curso cubre las tareas de procesamiento del lenguaje natural, incluido el análisis de sentimientos, el resumen, el seguimiento del estado de los diálogos y más. Coursera dice que es un curso de nivel avanzado y estima que tomará cinco semanas de estudio de cuatro a cinco horas por semana para completarlo.
Procesamiento del lenguaje natural en TensorFlow de Coursera. Este curso es parte de TensorFlow en la especialización práctica de Coursera y cubre el uso de TensorFlow para construir sistemas de procesamiento de lenguaje natural que pueden procesar texto e ingresar oraciones en una red neuronal. Coursera dice que es un curso de nivel intermedio y estima que tomará cuatro semanas de estudio de cuatro a cinco horas por semana para completarlo.
Salarios de NLP
Estos son algunos de los puestos de trabajo más populares relacionados con la PNL y el salario promedio para cada puesto, según datos de PayScale en Estados Unidos:
Lingüista computacional: De 60 mil a 110 mil dólares.
Científico de datos: $76K-133K
Director de ciencia de datos: $122K- $ 216k
Científico de datos principal: $107K- $165K
Ingeniero de aprendizaje automático: $78K- $156K
Científico de datos sénior: $105K- $167K
Ingeniero de software: $78K- $144K
Terena Bell y Thor Olavsrud, CIO.com