¿Qué es el procesamiento del lenguaje natural (PLN)?

El procesamiento del lenguaje natural (PLN) permite a los ordenadores interpretar el lenguaje humano.

Objetivos de aprendizaje

Después de leer este artículo podrás:

  • Define el procesamiento del lenguaje natural (PLN)
  • Entender cómo funciona el NLP
  • Contrasta el PNL con otros tipos de inteligencia artificial (IA)

Copiar enlace del artículo

¿Qué es el PNL (procesamiento del lenguaje natural)?

El procesamiento del lenguaje natural (PLN) es un método que los programas informáticos pueden utilizar para interpretar el lenguaje humano. El PNL es un tipo de inteligencia artificial (IA). Los modelos modernos de PNL se construyen principalmente mediante aprendizaje automático, y también se basan en el campo de la lingüística, el estudio del significado del lenguaje.

Todos los ordenadores pueden interpretar órdenes e instrucciones en lenguajes informáticos. Por ejemplo, un ordenador (en concreto, una aplicación de navegador) puede entender e interpretar código JavaScript como:


window.addEventListener("scroll", popup);

function popup() {
window.alert("Hola, mundo!");
}

Pero no puede comprender e interpretar textos en lenguaje natural como:


Si el usuario se desplaza, muestra una alerta que diga "¡Hola, mundo!"

Sin embargo, un programa informático con procesamiento de lenguaje natural puede ser capaz de entender la frase anterior, aunque no pueda ejecutar la orden.

A pesar de que los lenguajes de programación son la mejor forma de dar órdenes a los ordenadores, el procesamiento del lenguaje natural permite a los programas informáticos realizar una gran variedad de tareas con el lenguaje humano, tanto hablado como escrito. Por ejemplo, puede ayudar a procesar grandes colecciones de datos de grabaciones de voz y textos escritos, automatizar las interacciones con usuarios humanos o interpretar las consultas de los usuarios.

Otros usos del PNL incluyen:

  • Análisis de sentimientos: el PLN puede ayudar a interpretar montones de comentarios de usuarios, publicaciones en redes sociales o solicitudes de atención al cliente.
  • Asistentes virtuales: el PNL es crucial para comprender las peticiones de los usuarios de asistentes como Siri, Alexa o Cortana
  • Motores de búsqueda: el PNL ayuda a los motores de búsqueda a comprender mejor la intención de búsqueda tanto de las consultas simples, de una sola palabra, como de las consultas escritas como frases o preguntas, además de interpretar las faltas de ortografía u otros errores humanos en las consultas.
  • Traducción: el PNL puede ayudar a comprender y traducir contenidos de un idioma a otro
  • Moderación de contenidos: el PNL puede ayudar a marcar contenido potencialmente dañino o censurable interpretando el significado del texto generado por el usuario.

¿Cómo funciona el procesamiento del lenguaje natural (PLN)?

El PNL utiliza el aprendizaje automático para analizar estadísticamente el contenido generado por el ser humano y aprender a interpretarlo. Durante el proceso de formación, los modelos de PNL reciben ejemplos de palabras y frases en contexto, junto con sus interpretaciones. Por ejemplo, un modelo de PNL podría no entender cuando la palabra "naranja" significa el color en lugar de la fruta. Pero tras mostrarle miles de ejemplos - frases como "Me comí una naranja" o "Este coche viene en naranja" - el modelo puede empezar a entender la palabra, e interpretar correctamente la diferencia entre sus significados.

Dada la complejidad y las incoherencias del lenguaje humano, el PNL suele basarse en el aprendizaje profundo, que es un tipo más potente de aprendizaje automático. Los modelos de aprendizaje profundo pueden procesar datos brutos sin etiquetar, aunque necesitan grandes cantidades de datos para ser formados correctamente. El aprendizaje profundo también requiere una gran potencia de procesamiento.

¿Qué es el preprocesamiento PNL?

El preprocesamiento PLN es la preparación del texto en bruto para su análisis por un programa o modelo de aprendizaje automático. El preprocesamiento PLN es necesario para poner el texto en un formato que los modelos de aprendizaje profundo puedan analizar más fácilmente.

Hay varios métodos de preprocesamiento PNL que se utilizan conjuntamente. Los principales son:

  • Conversión a minúsculas: desde el punto de vista del significado de una palabra, hay poca diferencia entre mayúsculas y minúsculas. Por lo tanto, convertir todas las palabras a minúsculas es más eficaz, porque muchos programas informáticos distinguen entre mayúsculas y minúsculas y podrían tratar las versiones en mayúsculas de las palabras de forma diferente innecesariamente.
  • Reducción: reduce las palabras a su raíz o "tallo" eliminando terminaciones como "-ando" o "-ción" (por ejemplo, "terminando" y "terminación" se convierten en "terminar").
  • Lematización: esta técnica del PNL reduce las palabras a la forma primaria que podría encontrarse en un diccionario. Los sustantivos plurales o posesivos se convierten en singulares: "del vecino" "de los vecinos" y "vecinos" se convierten en "vecino", por ejemplo. Los verbos se convierten en su forma no conjugada: "fue" y "van" se convierten en "ir".
  • Tokenización: rompe el texto en trozos más pequeños que tienen significado. Suelen estar compuestas por frases, palabras sueltas o subpalabras (el prefijo "in-" es un ejemplo de subpalabra).
  • Eliminación de palabras vacías: muchas palabras son importantes para la gramática o para la claridad cuando la gente habla entre sí, pero no añaden mucho significado a una frase y no son necesarias para procesar el lenguaje en un programa informático. Estas palabras se denominan "stop words" en el contexto del PNL, y la eliminación de stop words las elimina del texto. Por ejemplo, en la frase "Fui a la universidad durante cuatro años," las palabras "a" y "durante" son esenciales para que la frase suene inteligible al oído humano, pero no necesarias para transmitir significado. La versión sin "stop words" podría ser: "Fui universidad cuatro años."

¿Cuál es la diferencia entre el PNL y los grandes modelos lingüísticos (LLM)?

Un gran modelo lingüístico (LLM ) es un tipo de modelo de aprendizaje automático que puede comprender texto generado por humanos y generar textos que suenen naturales. Los LLM, como el ampliamente utilizado ChatGPT, se forman con conjuntos de datos de texto muy grandes.

Existe un cierto solapamiento entre los términos PLN y LLM: ambos utilizan el aprendizaje automático, grandes conjuntos de datos y la formación para interpretar el lenguaje humano. De hecho, algunas fuentes definen el LLM como un tipo de PNL.

Sin embargo, los LLM difieren de los modelos de PNL en varios aspectos clave:

  • El PNL suele formación para una tarea específica, mientras que los LLM tienen una amplia gama de usos
  • El PNL proporciona ideas e interpretaciones, mientras que los LLM producen texto que es estadísticamente relevante, pero que puede no transmitir una comprensión del significado subyacente (aunque muchos LLM avanzados pueden dar fácilmente la apariencia de hacerlo)
  • Como tienen una gama de usos tan amplia, los LLM requieren muchos más datos y formación que los modelos de PNL

Por ejemplo, un modelo PLN sería más útil para el análisis de sentimientos, mientras que un LLM funcionaría bien para incorporarlo a un bot de chat que interactúe con los clientes. O bien, un modelo PLN podría ayudar a un motor de búsqueda a interpretar la consulta de un usuario y generar resultados de búsqueda relevantes, mientras que un LLM podría escribir su propia respuesta a la consulta basándose en el análisis estadístico del contenido relevante preexistente.

PNL vs. LLM vs. IA generativa

El PNL también es distinto de la IA generativa, aunque está relacionado con esta. La IA Generativa es un modelo de aprendizaje profundo que puede generar texto, audio, vídeo, imágenes o código. Los modelos de PNL, en cambio, a menudo no están diseñados para generar texto en absoluto. Los LLM, por su parte, también son un tipo de IA generativa en el sentido de que pueden producir texto en respuesta a consultas.

¿Cómo permite Cloudflare el desarrollo de modelos de PNL?

Cloudflare permite a los desarrolladores ejecutar aprendizaje profundo avanzado en GPU en todo el mundo, dándoles acceso a la potencia de cálculo que necesitan para formación modelos de IA, con una latencia mínima. Y Cloudflare R2 es un método de almacenamiento rentable para la gran cantidad de datos con los que debe formarse el PNL basada en el aprendizaje profundo. Más información sobre Cloudflare for AI.