Aatish Bhatia el 27 de abril de 2023 Aatish Bhatia pasó varias semanas, leyendo docenas de artículos científicos sobre inteligencia artificial y enseñando pequeños modelos de idiomas en su computadora. Antes de venir a The Times, enseñó cursos sobre arte e ingeniería.
El programa de inteligencia artificial, como CHATGPT, se basa en el modelo de lenguaje grande, llamado: un algoritmo que imita la forma de un lenguaje escrito.
Aunque el trabajo interno de estos algoritmos, como saben, es opaco, la idea principal que los subyace es sorprendentemente simple. Se entrenan al ver las montañas del texto en Internet, adivinando repetidamente las siguientes dos letras y la posterior comparación con el texto real.
Para mostrar cómo se ve este proceso, enseñamos seis pequeños modelos de idiomas, comenzando desde cero. Elegimos uno de ellos, entrenados en las obras completas de Jane Austin, pero puede elegir otra forma eligiendo la opción a continuación.(Y puede cambiar su decisión más adelante).
Jane Austen
Shakespeare
Documentos de federalistas
Móvil
Star Way: próxima generación
Harry Potter
En este artículo veremos cómo la inteligencia artificial, que llamamos cariñosamente babygpt, está tratando de aprender el idioma, leyendo solo las obras completas de Jane Austin. Solo ve casi 800 mil palabras de este texto, y nada más.
Pero primero, necesitamos darle algo para trabajar. Le pediremos a nuestro modelo que automáticamente el texto, la carta de la carta, a partir de la próxima oración: «Debes decidir por ti mismo», dijo Elizabeth.
Antes del entrenamiento: Tarabarshchina
Al principio, BabyGPT da el siguiente texto:
«Debes decidir por ti mismo», dijo Elizabeth.
Generar otra respuesta
Los modelos de idiomas más grandes están capacitados en más que terabytes del texto de Internet que contiene cientos de miles de millones de palabras. Su capacitación cuesta millones de dólares e incluye cálculos que ocupan semanas e incluso meses en cientos de computadoras especializadas.
Babygpt en comparación con ellos es una hormiga. Lo entrenamos durante una hora en una computadora portátil en varios megabytes del texto, lo suficientemente pequeño como para ponerlo en un correo electrónico.
A diferencia de los modelos más grandes que comienzan a entrenar con un vocabulario grande, BabyGPT aún no conoce una sola palabra. Hace sus suposiciones una carta, lo que nos permite ver lo que está estudiando.
Inicialmente, sus suposiciones son completamente aleatorias e incluyen muchos símbolos especiales: ‘? KZHC, TK996’) puede ser una gran contraseña, pero esto está lejos de lo que se parece la Jane Austin o Shakespeare. BabyGPT aún no sabe qué letras se usan generalmente en inglés y que existen palabras en general.
Así es como los modelos de idiomas generalmente comienzan a funcionar: hacen suposiciones aleatorias y dan un esposo. Pero aprenden de sus errores, y con el tiempo, sus suposiciones están mejorando. Para muchos, muchas rondas de capacitación, los modelos de idiomas pueden aprender a escribir. Estudian patrones estadísticos que le permiten combinar palabras en oraciones y párrafos.
Después de 250 rondas: letras inglesas
Después de 250 rondas de entrenamiento, aproximadamente 30 segundos de procesamiento en una computadora portátil moderna, Babygpt aprendió su alfabeto y comenzó a balbucear:
«Debes decidir por ti mismo», dijo Elizabeth.
Generar otra respuesta
En particular, nuestro modelo aprendió qué letras son más comunes en el texto. Verá muchas letras «E» porque es la letra más común en inglés.
Si miras de cerca, puedes ver que el modelo también aprendió varias palabras pequeñas: yo, a, el, tú, etc.
Tiene un pequeño vocabulario, pero esto no le impide inventar palabras como Alingedimpe, Ratlabus y Mandered.
Obviamente, estos supuestos no son muy buenos. Pero, y este es el punto clave para enseñar un modelo de idioma: BabyGPT cuenta cuán malas son sus suposiciones.
En cada ronda de entrenamiento, el modelo muestra el texto de origen algunas palabras a la vez y compara sus suposiciones sobre la siguiente letra con lo que está sucediendo en la realidad. Luego se calcula una evaluación, conocida como «pérdida», que mide la diferencia entre predicciones y texto real. Pérdida cero significa que sus supuestos siempre corresponden correctamente a la siguiente letra. Cuanto más pequeña sea la pérdida, más cerca del texto las letras adivinadas.
Después de 500 rondas: pequeñas palabras
En cada ronda de entrenamiento, BabyGPT está tratando de mejorar sus suposiciones, reduciendo esta pérdida. Después de 500 rondas, o aproximadamente un minuto en una computadora portátil, puede escribir varias palabras pequeñas:
«Debes decidir por ti mismo», dijo Elizabeth.
Generar otra respuesta
También comienza a estudiar los conceptos básicos de la gramática, por ejemplo, para organizar puntos y comas. Pero al mismo tiempo, comete muchos errores. Nadie confundirá esta conclusión con lo que es escrito por una persona.
Después de 5, 000 disparos: más palabras
Después de 10 minutos de trabajo, el vocabulario de BabyGpt se expandió:
«Debes decidir por ti mismo», dijo Elizabeth.
Generar otra respuesta
Las oraciones no tienen sentido, pero se vuelven más cercanos al texto. Babygpt ahora comete menos errores de ortografía. Todavía se le ocurre algunas palabras largas, pero con menos frecuencia que antes. También comienza a descubrir algunos nombres que a menudo se encuentran en el texto.
La gramática también mejora. Por ejemplo, aprendió que después de un punto, a menudo se colocan una brecha y una carta de título. Incluso a veces abre comillas (aunque a menudo se olvida de cerrarlas).
Detrás de las escenas del BabyGPT hay una red neuronal: una función matemática extremadamente compleja que consta de millones de números que convierte la señal de entrada (en este caso, la secuencia de letras) en la salida (predicción de la siguiente letra).
Cada ciclo de aprendizaje del algoritmo corrige estos números, tratando de mejorar sus suposiciones utilizando una técnica matemática conocida como la distribución opuesta (backpropagation). El proceso de configurar estos números internos para mejorar los pronósticos y significa que la red neuronal «estudia».
De hecho, esta red neuronal no genera letras, sino probabilidades.(Es gracias a estas probabilidades que obtenga diferentes respuestas cada vez que genere una nueva respuesta).
Por ejemplo, si le da las cartas del Stai, él predecirá que la próxima carta será n, r o, posiblemente, d, con probabilidad, dependiendo de la frecuencia con la que se reuniera cada palabra en el proceso de aprendizaje.
Pero si le das la carta Downstai, entonces es mucho más probable que predice R. Sus predicciones dependen del contexto.
Después de 30, 000 rondas: ofertas completas
Después de una hora de estudio, BabyGPT aprendió a hablar con oraciones completas.¡Esto no es tan malo si consideras que hace solo una hora ni siquiera sabía sobre la existencia de palabras!
«Debes decidir por ti mismo», dijo Elizabeth.
Generar otra respuesta
Las palabras todavía no tienen sentido, pero definitivamente son más como inglés.
Las oraciones generadas por esta red neuronal rara vez se encuentran en el texto original. Por lo general, no copia y no inserta la oración literalmente, pero cose su carta por la carta basada en las leyes estadísticas obtenidas de los datos.(Los modelos de idiomas típicos cosen las oraciones varias letras a la vez, pero la idea es la misma).
A medida que crecen los modelos lingüísticos, las leyes que estudian pueden volverse cada vez más complicadas. Pueden estudiar la forma de un soneto o flámbar, así como los códigos en varios lenguajes de programación.
Un gráfico de líneas que muestra la «pérdida» del modelo seleccionado a lo largo del tiempo. Inicialmente, cada modelo de alta pérdida escupe símbolos galimatías. Durante los siguientes cientos de rondas de entrenamiento, la pérdida cae bruscamente y el modelo comienza a producir letras en inglés y algunas palabras pequeñas. Luego, la pérdida disminuye gradualmente y, después de 5000 rondas de entrenamiento, el modelo produce palabras más grandes. En este punto, el retroceso se reduce y la curva se vuelve bastante plana. Por 30. 000 ciclos, el modelo crea oraciones completas.
Límites de aprendizaje de BabyGPT
Con el espacio de texto limitado, la capacitación adicional de BabyGPT es de poco beneficio. Los modelos de lenguaje más grandes usan más datos y poder de procesamiento 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 ofertas sean coherentes o útiles. No puede responder a la pregunta o depurar su código. Es sobre todo divertido ver cómo mejoran sus suposiciones.
Pero también es educativo. Con solo una hora de capacitación en una computadora portátil, un modelo de idioma puede pasar de generar caracteres aleatorios a una aproximación muy aproximada de un idioma.
Los modelos de lenguaje son una especie de imitadores universales: imitan todo lo que se les ha enseñado. Con suficientes datos y rondas de entrenamiento, esta imitación puede volverse francamente asombrosa, como lo han demostrado ChatGPT y sus pares.
¿Qué es GPT?
Los modelos entrenados en este artículo utilizan el algoritmo nanoGPT desarrollado por Andrey Karpaty. El Sr. Karpathy es un reconocido investigador de IA que se unió recientemente a la empresa OpenAI que creó ChatGPT.
Al igual que ChatGPT, nanoGPT es un modelo GPT, un término de IA para un transformador generativo preentrenado:
Generativo – porque genera palabras.
Pre-entrenado – porque está entrenado en un montón de textos. Esta etapa se denomina preentrenamiento porque muchos modelos de lenguaje (como el modelo ChatGPT) pasan por importantes pasos de entrenamiento adicionales, conocidos como ajuste fino, para hacerlos menos tóxicos y más fáciles de interactuar.
Los transformadores son un avance relativamente reciente en la forma en que se diseñan las redes neuronales. Fueron introducidos en 2017 por investigadores de Google y se utilizan en muchos de los últimos avances en inteligencia artificial, desde la generación de texto hasta la generación de imágenes.
Los transformadores mejoraron la generación anterior de redes neuronales, conocidas como redes neuronales recurrentes, al incluir etapas en las que las palabras de una oración no se procesan una a la vez, sino en paralelo. Esto hizo posible aumentar la velocidad de su trabajo.
más es diferente
Además de las etapas adicionales de la configuración fina, la principal diferencia entre nanogpt y el modelo de idioma subyacente a ChatGPT está en tamaño.
Por ejemplo, el modelo GPT-3 estudió en el número de palabras, un millón de veces el número de palabras en los modelos considerados en este artículo. La escala a tales tamaños es una gran tarea técnica, pero los principios básicos permanecen sin cambios.
Se sabe que a medida que crece el volumen de los modelos de lenguaje, tienen nuevas habilidades sorprendentes, como la capacidad de responder preguntas, resumir el texto, explicar bromas, continuar el modelo y corregir errores en el código de la computadora.
Algunos investigadores llaman a estas habilidades «emergentes», ya que surgen inesperadamente con un cierto tamaño del modelo y no se programan manualmente. Investigador en el campo de A. I. Sam Bowman calificó la capacitación de un modelo de idioma grande «Comprar una caja con secretos», ya que es difícil predecir qué habilidades adquirirá en el proceso de aprendizaje y cuándo aparecen estas habilidades.
En este caso, también pueden aparecer características indeseables del comportamiento. Los modelos de idiomas grandes pueden volverse extremadamente impredecibles, como lo demuestra la interacción temprana de Microsoft Bing A. I. Con mi colega Kevin Ruz.
También son propensos a inventar hechos y razonamiento incorrecto. Los investigadores aún no entienden cómo estos modelos generan lenguaje e intentan controlar su comportamiento.
Según la Agencia Bloomberg, casi cuatro meses después de la publicación del modelo CHATGPT de Operai, Google lanzó un chatbot llamado Bard, a pesar de las objeciones de algunos de sus oficiales de seguridad.
«Estos modelos se desarrollan en las condiciones de la carrera armamentista entre las compañías tecnológicas, sin ninguna transparencia», dijo Peter Bloom, un experto en el campo de la IA, que estudia modelos de idiomas.
Operai no revela ningún detalle sobre los datos sobre los cuales su enorme modelo GPT-4 está estudiando, citando consideraciones de competencia y seguridad. Sin saber qué está contenido en los datos, es difícil decir si estas tecnologías son seguras y qué prejuicios se establecen en ellos.
Sin embargo, a pesar del hecho de que el Sr. Bloom está preocupado por la falta de regulación de la IA, también está contento de que las computadoras finalmente comiencen a «comprender lo que queremos de ellos», lo que, según él, los investigadores no podrían lograr más que Más de 70 años de intentos.
Los modelos de idiomas presentados en este artículo fueron capacitados con Nanogpt, un paquete de programa de código abierto creado por Andrei Karpati. Cada modelo fue entrenado para 30, 000 iteraciones, lo que tomó menos de una hora en el MacBook Pro M1. Hemos realizado pequeños cambios en el código para acelerar el entrenamiento de este equipo y la cantidad de datos. La configuración del modelo se seleccionó como un compromiso entre el tamaño de la red neuronal y la velocidad de su entrenamiento.
Las redes neuronales están sujetas a un problema conocido como ajuste excesivo. Una de las formas de resolverlo es «estudiar en la prueba», es decir, capacitar en los mismos datos sobre los que se evalúan. Para evitar este problema, enseñamos modelos de idiomas en este artículo sobre el 90% del texto, pero también los evaluamos por lo bien que pueden predecir el 10% restante. Las actualizaciones de los modelos se conservaron solo para mejorar estas evaluaciones. Esta es la práctica estándar del aprendizaje automático, conocida como validación, que le permite asegurarse de que los modelos asimilen las características generales de los datos y no los memoricen.
Además, durante cada ronda de entrenamiento, eliminamos temporalmente el 10% seleccionado al azar de las «neuronas». Esta técnica se conoce como «abandono», que también ayuda a prevenir la redención de redes neuronales con datos.