Saltar al contenido

Permítanos mostrarle cómo funciona GPT: uso de Jane Austen

28 de abril de 2023

El núcleo de un programa de IA como ChatGPT es algo llamado modelo de lenguaje grande: un algoritmo que imita la forma del lenguaje escrito.

Si bien el funcionamiento interno de estos algoritmos es notoriamente opaco, la idea básica detrás de ellos es sorprendentemente simple. Son entrenados revisando montañas de texto de Internet, adivinando repetidamente las siguientes letras y luego calificándose contra las letras reales.

Para mostrarle cómo es este proceso, entrenamos seis pequeños modelos de lenguaje comenzando desde cero. Hemos escogido uno capacitado en las obras completas de Jane Austen, pero puede elegir un camino diferente al seleccionando una opción a continuación. (Y puedes cambiar de opinión más tarde).

Antes del entrenamiento: galimatías

Al principio, BabyGPT produce un texto como este:

1/10

«Debes decidir por ti mismo», dijo Elizabeth.

Los modelos de lenguaje más grandes se entrenan en más de un terabyte de texto de Internet, que contiene cientos de miles de millones de palabras. Su entrenamiento cuesta millones de dólares e involucra cálculos que toman semanas o incluso meses en cientos de computadoras especializadas.

BabyGPT es del tamaño de una hormiga en comparación. Lo entrenamos durante aproximadamente una hora en una computadora portátil con solo unos pocos megabytes de texto, lo suficientemente pequeño como para adjuntarlo a un correo electrónico.

A diferencia de los modelos más grandes, que comienzan su entrenamiento con un amplio vocabulario, BabyGPT aún no conoce ninguna palabra. Hace sus conjeturas una letra a la vez, lo que hace que sea un poco más fácil para nosotros ver lo que está aprendiendo.

Inicialmente, sus conjeturas son completamente aleatorias e incluyen muchos caracteres especiales: ‘?kZhc,TK996’) sería una gran contraseña, pero está muy lejos de cualquier cosa que se parezca a Jane Austen o Shakespeare. BabyGPT aún no ha aprendido qué letras se usan normalmente en inglés, o incluso que palabras existen.

Así es como suelen comenzar los modelos de lenguaje: adivinan al azar y producen galimatías. Pero aprenden de sus errores y, con el tiempo, sus conjeturas mejoran. Durante muchas, muchas rondas de entrenamiento, los modelos de lenguaje pueden aprender a escribir. Aprenden patrones estadísticos que juntan palabras en oraciones y párrafos.

Después de 250 rondas: letras en inglés

Después 250 rondas de entrenamiento – alrededor de 30 segundos de procesamiento en una computadora portátil moderna – BabyGPT ha aprendido su ABC y está comenzando a balbucear:

1/10

«Debes decidir por ti mismo», dijo Elizabeth.

En particular, nuestro modelo ha aprendido qué letras se usan con más frecuencia en el texto. Verás mucho la letra «e» porque es la letra más común en inglés.

Si observa detenidamente, encontrará que también ha aprendido algunas palabras pequeñas: yo, para, el, usted, etc.

Tiene un vocabulario diminuto, pero eso no le impide inventar palabras como alingedimpe, ratlabus y mandiered.

Obviamente, estas conjeturas no son geniales. Pero, y esta es la clave de cómo aprende un modelo de lenguaje, BabyGPT lleva un puntaje de cuán malas son sus conjeturas.

Recomendado:  ¿GPT-4 realmente entiende lo que estamos diciendo?

En cada ronda de entrenamiento, revisa el texto original, unas pocas palabras a la vez, y compara sus conjeturas para la siguiente letra con lo que realmente viene a continuación. Luego calcula una puntuación, conocida como «pérdida”, que mide la diferencia entre sus predicciones y el texto real. Una pérdida de cero significaría que sus conjeturas siempre coincidieron correctamente con la siguiente letra. Cuanto menor sea la pérdida, más cerca estarán sus conjeturas del texto.

Después de 500 rondas: Palabras cortas

En cada ronda de entrenamiento, BabyGPT intenta mejorar sus conjeturas reduciendo esta pérdida. Después 500 rondas – o alrededor de un minuto en una computadora portátil – puede deletrear algunas palabras pequeñas:

1/10

«Debes decidir por ti mismo», dijo Elizabeth.

También está comenzando a aprender algo de gramática básica, como dónde colocar puntos y comas. Pero comete muchos errores. Nadie va a confundir esta salida con algo escrito por un ser humano.

Después de 5000 rondas: Palabras más grandes

Diez minutos en, El vocabulario de BabyGPT ha crecido:

1/10

«Debes decidir por ti mismo», dijo Elizabeth.

Las oraciones no tienen sentido, pero se acercan más al estilo del texto. BabyGPT ahora comete menos errores ortográficos. Todavía inventa algunas palabras más largas, pero con menos frecuencia que antes. También está empezando a aprender algunos nombres que aparecen con frecuencia en el texto.

Su gramática también está mejorando. Por ejemplo, ha aprendido que un punto suele ir seguido de un espacio y una letra mayúscula. Incluso ocasionalmente abre una cotización (aunque a menudo se olvida de cerrarla).

Detrás de escena, BabyGPT es una red neuronal: un tipo de función matemática extremadamente complicada que involucra millones de números que convierte una entrada (en este caso, una secuencia de letras) en una salida (su predicción para la siguiente letra).

Cada ronda de entrenamiento, un algoritmo ajusta estos números para tratar de mejorar sus conjeturas, usando una técnica matemática conocida como retropropagación. El proceso de ajustar estos números internos para mejorar las predicciones es lo que significa que una red neuronal «aprende».

Lo que en realidad genera esta red neuronal no son letras sino probabilidades. (Estas probabilidades son la razón por la que obtiene una respuesta diferente cada vez que genera una nueva respuesta).

Por ejemplo, cuando se le dan las letras escalerapredecirá que la siguiente letra es norte, r o tal vez dcon probabilidades que dependen de la frecuencia con la que haya encontrado cada palabra en su entrenamiento.

pero si le damos abajoes mucho más probable predecir r. Sus predicciones dependen del contexto.

Después de 30.000 rondas: oraciones completas

Una hora en su entrenamiento, BabyGPT está aprendiendo a hablar con oraciones completas. Eso no es tan malo, considerando que hace solo una hora, ¡ni siquiera sabía que existían las palabras!

Recomendado:  Cómo instalar y usar Auto-GPT: una herramienta de IA autónoma

1/10

«Debes decidir por ti mismo», dijo Elizabeth.

Las palabras todavía no tienen sentido, pero definitivamente mirar más como inglés.

Las oraciones que genera esta red neuronal rara vez aparecen en el texto original. Por lo general, no copia y pega oraciones palabra por palabra; en cambio, BabyGPT los une, letra por letra, según patrones estadísticos que ha aprendido de los datos. (Los modelos de lenguaje típico unen oraciones con unas pocas letras a la vez, pero la idea es la misma).

A medida que los modelos de lenguaje crecen, los patrones que aprenden pueden volverse cada vez más complejos. Pueden aprender la forma de un soneto o una quintilla, o cómo codificar en varios lenguajes de programación.

Gráfico de líneas que muestra la «pérdida» del modelo seleccionado a lo largo del tiempo. Cada modelo comienza con una gran pérdida que produce caracteres incomprensibles. Durante los siguientes cientos de rondas de entrenamiento, la pérdida disminuye precipitadamente y el modelo comienza a producir letras en inglés y algunas palabras pequeñas. Luego, la pérdida disminuye gradualmente y el modelo produce palabras más grandes después de 5000 rondas de entrenamiento. En este punto, hay rendimientos decrecientes y la curva es bastante plana. A las 30.000 rondas, el modelo está haciendo oraciones completas.

Los límites del aprendizaje de BabyGPT

Con un texto limitado para trabajar, BabyGPT no se beneficia mucho de una formación adicional. Los modelos de lenguaje más grandes usan más datos y poder de cómputo para imitar el lenguaje de manera más convincente.

Las estimaciones de pérdidas se suavizan ligeramente.

BabyGPT todavía tiene un largo camino por recorrer antes de que sus oraciones sean coherentes o útiles. No puede responder una pregunta o depurar su código. Es sobre todo divertido ver cómo mejoran sus conjeturas.

Pero también es instructivo. En solo una hora de entrenamiento en una computadora portátil, un modelo de lenguaje puede pasar de generar caracteres aleatorios a una aproximación muy cruda del lenguaje.

Los modelos de lenguaje son una especie de imitador universal: imitan cualquier cosa en la que hayan sido entrenados. Con suficientes datos y rondas de entrenamiento, esta imitación puede volverse bastante extraña, como nos han demostrado ChatGPT y sus pares.

¿Qué es incluso un GPT?

Los modelos entrenados en este artículo usan un algoritmo llamado nanoGPT, desarrollado por Andrej Karpathy. El Sr. Karpathy es un destacado investigador de IA que se unió recientemente a OpenAI, la empresa detrás de ChatGPT.

Al igual que ChatGPT, nanoGPT es un modelo GPT, un término de IA que significa transformador preentrenado generativo:

Generativo porque genera palabras.

Pre-entrenado porque está entrenado en un montón de texto. Este paso se llama entrenamiento previo porque muchos modelos de lenguaje (como el que está detrás de ChatGPT) pasan por importantes etapas adicionales de entrenamiento conocidas como ajuste fino para hacerlos menos tóxicos y más fáciles de interactuar.

Recomendado:  La representación del sucesor, los modelos $ gamma $ y la predicción del horizonte infinito: el blog de investigación de inteligencia artificial de Berkeley

Transformadores son un avance relativamente reciente en cómo se conectan las redes neuronales. Fueron presentados en un artículo de 2017 por investigadores de Google y se utilizan en muchos de los últimos avances de IA, desde la generación de texto hasta la creación de imágenes.

Los transformadores mejoraron la generación anterior de redes neuronales, conocidas como redes neuronales recurrentes, al incluir pasos que procesan las palabras de una oración en paralelo, en lugar de una a la vez. Esto los hizo mucho más rápidos.

más es diferente

Además de las etapas de ajuste fino adicionales, la principal diferencia entre nanoGPT y el modelo de lenguaje subyacente a chatGPT es el tamaño.

Por ejemplo, GPT-3 se entrenó en hasta un millón de veces más palabras que los modelos de este artículo. Escalar hasta ese tamaño es una gran tarea técnica, pero los principios subyacentes siguen siendo los mismos.

A medida que los modelos de lenguaje aumentan de tamaño, se sabe que desarrollan nuevas habilidades sorprendentes, como la capacidad de responder preguntas, resumir textos, explicar chistes, seguir un patrón y corregir errores en el código informático.

Algunos investigadores han denominado a estas «habilidades emergentes» porque surgen inesperadamente a un cierto tamaño y no están programadas a mano. El investigador de IA Sam Bowman ha comparado el entrenamiento de un modelo de lenguaje grande con «comprar una caja misteriosa», porque es difícil predecir qué habilidades adquirirá durante su entrenamiento y cuándo surgirán estas habilidades.

También pueden surgir comportamientos indeseables. Los modelos de idiomas grandes pueden volverse muy impredecibles, como lo demuestran las primeras interacciones de Microsoft Bing AI con mi colega Kevin Roose.

También son propensos a inventar hechos y razonar incorrectamente. Los investigadores aún no entienden cómo estos modelos generan lenguaje y luchan por controlar su comportamiento.

Casi cuatro meses después de que ChatGPT de OpenAI se hiciera público, Google lanzó un chatbot de IA llamado Bard, a pesar de las objeciones de seguridad de algunos de sus empleados, según un informe de Bloomberg.

“Estos modelos se están desarrollando en una carrera armamentista entre empresas de tecnología, sin ninguna transparencia”, dijo Peter Bloem, un experto en IA que estudia modelos de lenguaje.

IA abierta no revela cualquier detalle sobre los datos en los que se entrena su enorme modelo GPT-4, citando preocupaciones sobre la competencia y la seguridad. No saber qué hay en los datos hace que sea difícil saber si estas tecnologías son seguras y qué tipo de sesgos están integrados en ellas.

Pero si bien el Sr. Bloem está preocupado por la falta de regulación de la IA, también está emocionado de que las computadoras finalmente estén comenzando a «comprender lo que queremos que hagan», algo que, dice, los investigadores no habían estado cerca de lograr en más de 70 años de intentarlo.