Recreación del Homo ergaster en el Museo de la Evolucion de Burgos. Fuente: Wikimedia Commons
Extracto del artículo publicado en el nº 118 de la Revista Ábaco
Leon Paul Schaub Torre
Doctor Industrial en Informática Especializado en procesamiento de lenguaje natural (PLN) e Inteligencia Artificial (IA)
Universidad París-Saclay. Fundación CTICMaría Miró Maestre
Doctoranda en Informática
Universidad de Alicante
Aprender un idioma, dominarlo, abstraer en forma de reglas y de excepciones su funcionamiento, ser capaz, incluso décadas después, de integrar o expulsar expresiones de su uso (ELVIRA GONZÁLEZ, 2012), aplicar ese aprendizaje a un idioma desconocido, y enseñarlo (ELLIS, 2010) son características innatas en la mayoría de los seres humanos (DULAY and BURT, 1974). Sin embargo, con los progresos conjuntos de la modelización de las lenguas1 por sistemas estocásticos y de la potencia computacional, se ha revelado al mundo, en los últimos meses, la capacidad de las máquinas de entender y producir frases que se asemejan a las del humano. Es interesante listar ejemplos de sus hazañas:
- Resolver problemas matemáticos de diferentes niveles de complejidad (COBBE et al., 2021)
- Entender o generar bromas (BENAZZOUZ and BOUDOUR, 2021)
- Dar consejos pertinentes (VILLAN and SANTOS, 2023)
- Generar imágenes coherentes con consignas (LI et al., 2023)
Uno de los elementos en los que se apoyan estos sistemas para realizar las tareas es el contexto lingüístico, considerado como una de las bases del nivel pragmático del lenguaje que motiva la interpretación de cualquier mensaje (VERSCHUEREN, 2008). No obstante, la interpretación del contexto que rodea un texto no está exenta de dificultades, y es que dicho contexto depende de los referentes culturales y los factores sociales que ayudan a estructurar cada lengua. Sin embargo, en el caso de los sistemas computacionales, este contexto queda reducido a la frecuencia de las palabras, también conocido como «co-texto» desde una perspectiva lingüística (FINKBEINER, MEIBAUER and SCHUMACHER, 2012).
Esta reducción del contexto a la combinación de palabras sirve, entre otros aspectos, para que los sistemas computacionales aprendan expresiones y estructuras de un idioma. Gracias al aprendizaje de estas combinaciones, es posible que los sistemas generen oraciones con un trasfondo semántico similar al de los humanos, y los resultados que muestran muchos de los sistemas actuales son una prueba de ello, como son GPT, BERT o BARD (ZHAO et al., 2023), entre otros. Sin embargo, esta concepción del aprendizaje automático a partir de algoritmos, sumado a la difícil explicabilidad de los procesos que llevan a cabo esos sistemas cuando aprenden un idioma (DANILEVSKY et al., 2020), distan mucho de los procesos cognitivos y lingüísticos que los humanos llevamos a cabo a la hora de aprender una lengua.
El lenguaje se compone no solo de los diferentes niveles de desarrollo lingüístico -fonético, sintáctico, morfológico, semántico y pragmático-, sino que implica también el aprendizaje de habilidades relacionadas con la organización de conceptos, la representación y reinterpretación de la realidad (Mora Umaña, 2018). Mientras que los humanos construimos nuestro lenguaje a partir no sólo de los niveles lingüísticos, sino de nuestro conocimiento del mundo y vivencias personales, los sistemas computacionales actuales son concebidos para interpretar estructuras lingüísticas con procesos cognitivos más complejos como reconocer una broma (FARUQI and SHRIVASTAVA, 2018), hablar en tono irónico (BARBIERI et al., 2015) o usar neologismos coloquiales, como en las redes sociales (SIMPSON et al., 2018). Sí que podemos comparar -salvando las distanciasel aprendizaje de una segunda lengua por parte de los humanos y las máquinas en lo que se refiere a la deducción, la inferencia (MURILLO-REYES, 2020) y la comparación de estructuras gramaticales de unas lenguas y otras. Por un lado, un humano es capaz de comparar las estructuras lingüísticas del inglés y el español, para encontrar equivalentes y así aprender por medio de la intuición y el contexto de uso de ambas expresiones. Por otro lado, existen diferentes herramientas computacionales que usan el inglés como «lengua pivote» (AHMADNIA et al., 2017) entre otro par de lenguas para detectar el equivalente lingüístico apropiado en la lengua destino, tal y como ocurre con los actuales traductores automáticos cuando se quiere traducir un texto en un par de lenguas diferentes del inglés.
El procesamiento del lenguaje natural (PLN), o lingüística computacional, es el campo de investigación que se ocupa de crear esas herramientas. Es una ciencia joven (1950) y contemporánea del nacimiento de la informática. Su objetivo es la formalización del lenguaje natural y de crear herramientas de ergonomía cognitiva. En setenta años, el PLN pasó de la tecnología de los diccionarios y ontologías simbólicos a la de los métodos probabilísticos y estadísticos, más capaces de modelizar la incertidumbre en la producción de idioma presente en cada individuo (MARIANI, FRANCOPOULO and PAROUBEK, 2019). En las últimas décadas, la aparición de las redes neuronales ha permitido que las máquinas lleguen a un nivel de análisis textual cercano al del humano.
Aun así, a nivel de generación de lengua ex nihilo, los progresos han sido limitados hasta 2018. Ese mismo año, (VASWANI et al., 2017) publicaron un artículo2 presentando una nueva red neuronal. Explicaban que, para mejorar las herramientas, era necesario cambiar de paradigma y enseñar a la máquina no solo a resolver tareas, sino también a crearlas. Esa nueva arquitectura permite aprender dos cosas, un problema y un modelo de lenguaje masivo3 (LLM)4 para resolverlo. Esa arquitectura se conoce como Transformador, una red capaz de ingerir una gran cantidad de datos y de modelizar varios idiomas, cuya máxima expresión se observa en ChatGPT. Los transformadores son la base de lo que hoy conocemos como la IA generativa.
En este artículo, veremos en una primera parte cómo funcionan los transformadores, sus límites y casos de uso, y en una segunda parte los problemas, tanto éticos como legales, que suponen.
De 2018 a 2023, la era de los LLMs
En 2017 ya usábamos sus herramientas: Google translate, el corrector de Word, el diccionario de Iphone, etc. Para realizar esas aplicaciones se probaron varios métodos y se desarrollaron respectivamente un traductor automático (KLIMOVA et al., 2022), un alineador y rectificador (BRAVO-CANDEL et al., 2021) y por fin un modelo de predicción de la siguiente palabra (GANAI and KHURSHEED, 2019). Cada aplicación tenía su método de PLN. Sin embargo todo cambió en 2018, cuando las primeras investigaciones consiguen desarrollar transformadores que baten uno tras otro el estado del arte de PLN (WOLF et al. 2020).
Definición y explicación
Muchas aplicaciones de IA generativa como ChatGPT, la herramienta más conocida dentro de este campo, usan los transformadores. Existen otras basadas en esta tecnología:
- Dall-e y Dall-e 25, un generador de imágenes en función de textos (RAMESH et al., 2022)
- Midjourney6 y Stable diffusion7, rivales de Dall-e • Google Translate8
Pero, ¿qué es el transformador?
El nombre se le asignó a este modelo al transformar una secuencia en otra. Eso significa que en la entrada de la máquina hay una secuencia, y en la salida también. El modelo de secuencia a secuencia está adaptado a tareas que impliquen la conversión de un texto en otro texto: traducción, resumen, diálogo.
El transformador tiene dos partes. El codificador, que codifica frases y palabras en números según su contexto y su vocabulario predeterminado. Y el descodificador, que busca la mejor manera de modificar los números para que la salida sea otra vez frases y palabras que correspondan al resultado esperado.
Es un modelo predictivo, que funciona en base al aprendizaje de similitudes entre secuencias. La diferencia con los anteriores modelos reside en la cantidad de datos necesarios para su aprendizaje, y el mecanismo de atención propia que simula, como ninguno antes, la producción cognitiva de la lengua.
Funcionamiento y aprendizaje
Los intentos de modelización de la lengua no son nuevos. Teniendo en cuenta que un ordenador manipula ceros y unos, es obligatorio para todo ingeniero lingüista convertir los textos en binarios. Consiste en dos etapas: representar un vocabulario extenso de una lengua de manera interpretable por una máquina, y codificar cualquier texto con esa representación. Una vez la representación esté hecha, y la lengua modelizada, el objetivo es aplicarla a una tarea, bien de clasificación (análisis de sentimiento) o de secuencia a secuencia (traducción). Esa representación se llama vectorización (SHANKAR and PARSANA, 2022). Cada valor del vector representa una palabra, considerada a menudo como la unidad de base. Existen otras unidades como el n-gramo, el lema, el morfema (LECLUZE et al., 2013)… Estos son los métodos de vectorización tradicionales en PLN:
- El saco de palabras: el vector más simple de palabras. Cada palabra del vocabulario es binaria, según un orden cualquiera (alfabético, aparición de la palabra en la construcción del diccionario, etc.). Por ejemplo, si el vocabulario se crea a partir de la frase “Hola, soy estudiante”, será representado así:
hola 1 0 0
soy 0 1 0
estudiante 0 0 1
ventajas: simple, binario, universal, cercano del lenguaje máquina.
inconvenientes: ningún contexto lingüístico, palabras tratadas como elementos independientes, cada vector siendo de la talla del vocabulario llega a pesar muchísimo.
- El FT-FID (TF-IDF9): Frecuencia de un Término en un documento comparado con su Frecuencia Inversa en todos los Documentos. Es un vector más completo que el primero porque considera la especificidad de cada palabra: cuanto más frecuente es una palabra en un documento solo, y ausente de los demás, más alto será su FT-FID.
ventajas: permite transmitir a la máquina la importancia relativa de cada palabra, pesa menos que un saco de palabras.
inconvenientes: sigue sin ningún contexto, no hay semántica, es cálculo de frecuencias.
- El encaje léxico (word embedding) (GORDILLO TENORIO et al., 2023): gracias a una combinación de algoritmos probabilistas, es una técnica de vectorización de la lengua que tiene en cuenta el contexto. Según la manera en la que se usa una palabra, el encaje léxico permite a la máquina aprender las relaciones semánticas, como sinónimos, antónimos, hiperónimos, etc.
ventajas: capta las relaciones semánticas entre las palabras y la interdependencia entre ellas, pesa menos que los precedentes porque es un diccionario biyectivo.
inconvenientes: es un diccionario biyectivo: no se adapta a la polisemia o a palabras nuevas.
En 2018, los transformadores consiguieron lidiar con los inconvenientes mencionados. El modelo de lenguaje, para cualquier transformador, corresponde a la parte codificador mencionada en 2.a.
Bien es verdad que desde 2015 y gracias a los procesadores gráficos (RODRíGUEZ SEGRELLES, 2017) se ha podido incrementar la velocidad de entrenamiento de modelos de lengua10, sin embargo, les costaba modelizar las dependencias a larga distancia11. Hasta aquí, los modelos de lenguaje aprendían la morfología, la sintaxis, y la semántica de las frases, pero les quedaba un nivel de dominio del idioma: la pragmática. Es decir, no sólo aprender las palabras y sus relaciones entre ellas, sino también saber elegir en todo momento el significado contextual de cada una y la lógica de toda la frase. Para resolver ese problema, el mecanismo de atención propio del transformador permite a la red neuronal saber, para cada frase, cuáles son las palabras más importantes. No en función de su frecuencia como el FT-FID, sino de dos tareas que el transformador crea para él mismo:
- El modelo de lenguaje enmascarado
El transformador lee millones de frases y, en cada una de
ellas, esconde palabras aleatoriamente. Se entrena durante horas hasta ser capaz de revelarlas, sólo con el resto de la frase y las que ya leyó. Eso le permite aprender el contexto posterior y anterior de cualquier palabra. Este modelo se conoce como bidireccional. - La predicción de la siguiente frase
El transformador lee millones de frases y escoge pares alea-
toriamente, teniendo que responder a la pregunta: ¿la segunda sigue la primera o no tienen que ver?
El aprender estas dos tareas de manera conjunta permite al transformador modelizar no sólo un vocabulario, sino también el uso de una palabra en varios contextos, y la probabilidad que una palabra nueva pueda ser sinónima de una ya conocida. Genera un espacio gigantesco, modelizado con vectores, en el que cada palabra llega a tener muchos vectores diferentes según el
contexto de su aparición. Se les llamaron modelos de lengua masivos, LLMs.
La segunda parte, más conocida como IA generativa, corresponde al descodificador del transformador. No se trata de representar palabras en vectores cargados de sentido y de contexto, sino de crear una nueva secuencia en función del vector ya codificado. Funciona en tres etapas:
- Usando su capacidad para desenmascarar y predecir la siguiente frase, el descodificador o generador, predice el vector más probable consecutivo a los que ya tiene en memoria.
- Ese vector es descodificado en palabras gracias al modelo de lenguaje.
- Vuelve a empezar la fase 1 pero con el nuevo vector como parte del contexto para generar el siguiente.
Se llama un modelo auto-regresivo que usa la salida precedente como entrada para la siguiente.
El transformador es un modelo doble, con un codificador bidireccional y un descodificador auto-regresivo. Un mecanismo inspirado en la teoría cognitiva de la memoria en la que hay un sistema de retención de la información y otro de recuperación (RUCHKIN et al., 2003).
Un LLM y una IA generativa. La intuición detrás es que, teniendo en cuenta lo compleja y pesada que es semejante arquitectura, se puede usar solo una parte u otra. Es por eso por lo que nacieron en 2018 dos familias de transformadores, los BERT y los GPT.
Bidirectional Encoder Representation Transformer (DEVLIN et al., 2018), es un codificador especializado en producir LLMs pre-entrenados. Su fuerza viene de su capacidad para “entender” la lengua. Por eso, se ha convertido en referencia para las tareas predictivas como el reconocimiento de entidades, el análisis de opiniones, la detección de SPAMs, etc. Sin embargo, no tiene tanta capacidad generativa, debido a que no incorpora el mecanismo de auto-regresión.
Al contrario, Generative Pretrained Transformer (RADFORD and NARASIMHAN, 2018), más conocido como GPT, es la generativa. No tiene tanta potencia predictiva puesto que se preocupa de generar la siguiente palabra más probable sabiendo todas las que preceden. Es por eso que es mejor en los chatbots, el resumen automático, etc.
Ahora que hemos explicado qué son los transformadores y cómo funcionan, es importante mencionar cómo ajustar esos modelos pre-entrenados, o IA generativas, para que hagan lo deseado.
Dada la cantidad masiva de datos necesarios para crear un LLM o una IA generativa12, y la potencia computacional necesaria (sin hablar de la consiguiente factura de la luz), es imposible crear un LLM propio. Por eso, lo que más impresiona de los transformadores es su capacidad para transferir su modelo, y los conocimientos aprendidos, a un nuevo escenario, una nueva tarea. Como si de repente, tras veinticinco años trabajando en las telecomunicaciones, una persona se hace carnicero, y con éxito, los transformadores son excelentes en el aprendizaje por transferencia. En concreto, si se ha entrenado un modelo LLM y una generativa solo con informes médicos, serían capaces, en poco tiempo y con pocos ejemplos, de integrar en su modelo documentos de un campo que no tiene nada que ver, como el financiero y contestar a preguntas sobre él. Esa capacidad de adaptación lingüística a un dominio nuevo es sin duda la mayor revolución introducida en el PLN en la última década. Y el mayor acercamiento a la capacidad humana de producir lenguaje.
Casos de uso
Tal y como adelantamos en la sección 2b., una de las revoluciones que ha supuesto los transformadores ha sido su capacidad de adaptación a diferentes tareas de PLN sin importar las diferencias terminológicas y lingüísticas que caracterizan a cada una de esas tareas. Con ello, la capacidad de estas herramientas de producir textos que se asemejan cada vez más a la complejidad del lenguaje humano se ha visto reflejado en diversos casos de uso, que se presentan en los siguientes apartados.
I ChatGPT
Esta herramienta creada por OpenAI a partir del modelo GPT es la aplicación desarrollada en el ámbito de PLN que ha trascendido más allá del mundo de la investigación a la sociedad. ChatGPT ha conseguido, gracias a las actualizaciones periódicas del modelo GPT desde su versión 3.5 (2022) hasta la actual 4 (2023) (Wu et al., 2023), abordar cada vez más tareas de PLN que comenzaron con la simple respuesta a preguntas de ámbitos muy concretos hasta integrar la generación de imágenes.
II Traducción
Desde los métodos basados en reglas (RBMT) durante los 90 hasta los modelos de redes neuronales que se emplean en la actualidad, la traducción automática lidera uno de los campos con mayor producción científica dentro del PLN. Tal ha sido la evolución de esta rama que las herramientas dedicadas a esta tarea muestran la posibilidad de traducir de forma simultánea varios idiomas ya no solo predominantes (WANG et al., 2022), sino que cada vez se promueve más la creación de sistemas de traducción automática que incluyan lenguas con pocos recursos, para así asegurar un mayor beneficio por parte de la sociedad.
III Análisis de sentimiento
La revolución de las redes sociales y la Web 2.0 supuso para el PLN la posibilidad de entrar en contacto con otro tipo de manifestaciones del lenguaje alejadas de lo normativo y más compartimentadas en los géneros textuales tradicionales, dando paso al estudio del habla coloquial por parte de los usuarios de dichas aplicaciones dedicadas a la interacción social. Gracias a este análisis y procesamiento lingüístico, realizado a partir de técnicas como el etiquetado morfológico de palabras, el PLN ha conseguido a través de las estrategias de aprendizaje automático comprobar las tendencias y opiniones de los usuarios respecto a productos, situaciones o incluso personas (YAAKUB, LATIFFI and ZAABAR, 2019). Además, el análisis de sentimiento, que divide sus etiquetas en enunciados positivos, negativos o neutrales, ha dado paso a otras tareas de igual naturaleza como es la detección de emociones.
IV Reconocimiento automático de voz (ASR)
La tarea del ASR está considerada como una de las principales en el seno de la comunicación humano-máquina (ALHARBI et al., 2021). Y es que, desde los inicios de la investigación en ASR en los años 1970, estas herramientas han logrado, a partir de la conversión de voz en texto, pasar de responder de forma simple a preguntas determinadas a llegar a contar chistes o reproducir música con una petición simple.
V Categorización
Los algoritmos empleados para la clasificación de texto según categorías se han extendido a todas las disciplinas del conocimiento (DHAR et al., 2021). A partir de la combinación de algoritmos de aprendizaje y la extracción de características de los textos empleados como objeto de investigación, la categorización de textos nos permite clasificar las noticias según su temática, las series de una plataforma de streaming para buscar la que deseemos, o separar aquellos correos de los que queremos que se etiqueten como importantes.
El artículo completo está disponible en el número 118 de la Revista Ábaco.
Pincha en el botón inferior para adquirir la revista.