Procesamiento del lenguaje natural

¿Qué es el procesamiento del lenguaje natural?

(Me temo que este capítulo va a ser un poco abstracto, espero que se entienda, de lo contrario, pueden pasar al siguiente...)

Cuando hablamos del Procesamiento del Lenguaje Natural (NLP, en inglés), nos referimos a un conjunto de técnicas que pretenden tratar los idiomas mediante una modelización matemática de los mismos. Cada idioma posee patrones estructurales en su gramática, sintaxis y semántica. 

El procesamiento del lenguaje natural intenta detallarlos para que esa estructura pueda expresarse en forma de unidades lingüísticas, lógica que las relaciona, frecuencias de aparición, etc.

De esta forma, surgen técnicas estadísticas y probabilísticas para determinar la probabilidad de que ocurra una secuencia dada de palabras en una oración específica de un idioma concreto, ayudando así a computarizarlo en forma de un modelo algorítmico.

Estas técnicas de procesamiento y modelado fueron el punto de partida de toda una carrera para llegar a lo que genéricamente llamamos: Modelo de Lenguaje (LM).

Entonces, los LM parametrizan las características del lenguaje y las reglas por las que se rige la construcción de oraciones.

Aplicando estas reglas, intentará predecir de forma probabilística, quiero decir, no "adivinar" esotéricamente hablando, sino asignar una probabilidad determinada a qué palabra es más probable que continúe en una oración.

Por ejemplo, tanto en español como en inglés, la palabra más frecuente que precede a un sustantivo es un artículo, y disminuyendo en orden de frecuencia, podemos decir que a los sustantivos también los preceden los adjetivos. De la misma forma, podemos decir que los sustantivos son seguidos por verbos en primer lugar y luego preposiciones, etc.

Pero no siempre es así. Por lo que cada tipo de palabra tendrá asociada una determinada probabilidad de aparecer delante o detrás de otra, pero además... ¡uf! El contexto. Quiero decir, el mundo específico: las excepciones, el texto especializado, los modismos geográficos y temporales, o ¿metáforas? ¿ironías?, Etc. etc.

La cosa no es tan simple.

Un solo ejemplo simple para aclarar el punto. El contexto importa en un idioma. Quiero decir, si nos enfocamos en el género literario "poesía", en español, por ejemplo, es más frecuente encontrarse después del sustantivo con un adjetivo que lo describa, más que con un verbo.

La idea que quiero transmitir en resumen es que desde hace 60 años, la ciencia trabaja en parametrizar y modelizar los idiomas utilizando las reglas morfológicas de cómo componen sus oraciones.

Y, como ven o suponen, no es una tarea fácil... pero nos vamos acercando poco a poco.

Quiero decir, no se llegó a ChatGPT de un día para otro, y deberíamos empezar por reconocerle el mérito.

Sin ánimo de aburrir, la ciencia ha discutido largo y tendido por la mejor manera de procesar el lenguaje natural. ¿Quiere decir que pretenden descubrir cómo hace el cerebro para hacerlo? ¡No! Quieren descubrir una forma computacional de hacerlo, dado que cada vez tenemos computadoras con mejores rendimientos y características.

Lo que hace 60 años era temerario de suponer, ahora está cada vez más cerca.

Nunca será como lo hace el cerebro humano. Será una forma de hacerlo que emulará la comprensión, pero que no será comprensión de la forma en que lo hacemos los humanos.

El miedo de muchos radica en que si hablamos de simular "la comprensión" y la simulación es lo suficientemente sofisticada como para que no notemos la diferencia... bueno, ya llegaremos a ese punto.

Al principio y durante un tiempo, solo reinaron los modelos puramente estadísticos como el "Word n-gram", que se basa en que la probabilidad de la siguiente palabra en una secuencia dada depende del grupo de palabras anteriores que la preceden.

Este grupo de palabras puede variar en cantidad y por eso lo de "n-gram". (si fueran dos palabras, sería: bigrama; si fueran tres palabras, sería: trigrama y por eso lo de "n-gram")

Posteriormente aparecieron las redes neuronales, con distintas variedades entre ellas.

Esquemáticamente se basan en unidades de información relacionadas e interconectadas en forma de red, donde una unidad solo puede pasar información a cualquier unidad a la que esté conectada, pero solo a esas. Entre las distintas redes, puede variar el patrón de interconexión, se pueden montar en diferentes capas, se puede definir un umbral de activación que determine cuándo una unidad pasa información a la siguiente. (Me parece que explicar esto ahora con mas profundidad ayudará a confundir más que a aclarar)

Pero es importante agregar que las redes neuronales evolucionaron hasta lo que conocemos como LLM (Large Language Model o Modelo de Lenguaje Grande), donde "grande" es el adjetivo del "modelo de lenguaje". Quiero decir, no es "grande el lenguaje", sino "grande" el "modelo de lenguaje".

Un LLM es un modelo de lenguaje construido sobre una red neuronal que tiene millones de parámetros que definen su comportamiento. A eso hace referencia la palabra "grande".

Por ejemplo, ChatGPT de OpenAI (la empresa que lo creó) tenía unos pocos millones de parámetros... ¡muchísimos! Pero ChatGPT-3 sobrepasó los 175.000 millones de parámetros. ¿Ven el terrible incremento? Y si quieren asustarse... de ChatGPT4 (la última versión a noviembre de 2023), algunas fuentes de la empresa sugieren que es 10 veces más grande que la versión 3.

Estas bestiales cantidades de parámetros afectan no solo al funcionamiento de la red neuronal de cara al usuario final, o sea, nosotros, sino que también afecta y compromete a los diseñadores a un entrenamiento complejo de toda la red.

En resumen, ChatGPT es un Modelo de Lenguaje Grande, basado en una red neuronal especialmente parametrizada y entrenada para procesar lenguaje natural. Espero que esta definición ahora sea un poco más entendible, ya que les sonarán los términos que la componen.

¡Ahh!

Repasando... puse "entrenamiento complejo" y "entrenada", pero no expliqué en ningún lugar qué es el "entrenamiento". Vale. Pues en el próximo capítulo, entonces.


Bạn đang đọc truyện trên: AzTruyen.Top