Modelos de IA generativa, explicados

Publicado: 2024-04-15

Cuando piensas en modelos de IA generativa, probablemente piensas en los modelos de lenguajes grandes (LLM) que han causado tanto revuelo en los últimos años. Sin embargo, la propia IA generativa se remonta a muchas décadas atrás, y los LLM son solo la última evolución. Y junto con los LLM, se utilizan muchos tipos diferentes de modelos de IA generativa para diferentes herramientas y casos de uso de IA generativa, como los modelos de difusión que se utilizan para la generación de imágenes.

En este artículo, explicaremos qué son los modelos de IA generativa, cómo se desarrollan y brindaremos una inmersión más profunda en algunos de los modelos de IA generativa más comunes en la actualidad, lo suficiente como para brindarle una comprensión conceptual de estos modelos que impresionará a su amigos y colegas, sin necesidad de realizar un curso universitario sobre aprendizaje automático (ML).

¿Qué es un modelo de IA generativa?

Los modelos de IA generativa son un subconjunto de sistemas de inteligencia artificial que se especializan en crear contenido nuevo y original que refleja las características de sus datos de entrenamiento. Al aprender de patrones y relaciones en los datos, estos modelos pueden generar resultados como texto, imágenes, sonidos o videos que se asemejan al estilo, tono y matices de su material original. Esta capacidad coloca a la IA generativa en el centro de la innovación, permitiendo aplicaciones creativas y dinámicas en diversos campos al interpretar y transformar datos de entrada en creaciones novedosas.

Trabaja de forma más inteligente con Grammarly
El compañero de redacción de IA para cualquiera que tenga trabajo que hacer

Cómo funcionan los modelos de IA generativa

Los modelos de IA generativa funcionan aprovechando una forma sofisticada de algoritmo de aprendizaje automático conocida como red neuronal. Una red neuronal comprende múltiples capas de nodos interconectados, cada uno representado por un fragmento de código informático. Estos nodos realizan tareas individuales menores, pero contribuyen colectivamente a tomar decisiones complejas, reflejando la funcionalidad de las neuronas en el cerebro humano.

A modo de ejemplo, consideremos una red neuronal encargada de distinguir entre imágenes de tartas y pasteles. La red analiza la imagen a nivel granular, dividiéndola en píxeles. En un nivel muy básico, habrá diferentes nodos en la red dedicados a comprender diferentes píxeles y grupos de píxeles. Tal vez algunos observen si hay capas en el postre, mientras que otros determinarán si hay glaseado o corteza. Cada uno de los nodos almacena información sobre las características de cómo se ve el pastel versus el pastel, y cada vez que entra en juego una nueva imagen, se procesa a través de todos y cada uno de los nodos para generar una predicción final.

En el contexto de la IA generativa, este principio se extiende más allá del simple reconocimiento hasta la creación de contenido nuevo y original. En lugar de simplemente identificar características, los modelos generativos utilizan redes neuronales para comprender los patrones y estructuras subyacentes de los datos con los que se entrenan. Este proceso implica interacciones y ajustes complejos dentro de la red neuronal, guiados por algoritmos diseñados para optimizar la creatividad y la precisión del resultado generado.

¿Cómo se desarrollan los modelos de IA generativa?

El desarrollo de modelos de IA generativa implica una serie de pasos complejos e interrelacionados, que normalmente llevan a cabo equipos de investigadores e ingenieros. Estos modelos, como GPT (transformador generativo preentrenado) de OpenAI y otras arquitecturas similares, están diseñados para generar contenido nuevo que imite la distribución de los datos en los que fueron entrenados.

Aquí hay un desglose paso a paso de ese proceso:

1 recopilación de datos

Los científicos e ingenieros de datos primero determinan los objetivos y requisitos de su proyecto, lo que los guía para recopilar un conjunto de datos amplio y apropiado. A menudo utilizan conjuntos de datos públicos, que ofrecen grandes cantidades de texto o imágenes para sus necesidades. Por ejemplo, el entrenamiento de ChatGPT (GPT-3.5) implicó procesar 570 GB de datos, equivalente a 300 mil millones de palabras de fuentes públicas de Internet, incluido casi todo el contenido de Wikipedia.

2 selección de modelo

Elegir la arquitectura del modelo adecuado es un paso fundamental en el desarrollo de sistemas de IA generativa. La decisión se guía por la naturaleza de la tarea en cuestión, el tipo de datos disponibles, la calidad deseada del resultado y las limitaciones computacionales. Más adelante en este artículo se analizarán con más detalle arquitecturas específicas, incluidas VAE, GAN y modelos de difusión y basados ​​en transformadores. En esta etapa, es importante comprender que los nuevos modelos a menudo parten de un marco arquitectónico preexistente. Este enfoque aprovecha estructuras probadas como base, lo que permite mejoras e innovaciones adaptadas a los requisitos únicos del proyecto en cuestión.

3 entrenamiento modelo

El modelo elegido se entrena utilizando el conjunto de datos recopilados en el primer paso. El entrenamiento de modelos de IA generativa a menudo requiere una gran cantidad de potencia informática, utilizando hardware especial como GPU (unidades de procesamiento de gráficos) y TPU (unidades de procesamiento tensorial). Si bien el enfoque de capacitación varía según la arquitectura del modelo, todos los modelos pasan por un proceso llamado ajuste de hiperparámetros. Aquí es donde los científicos de datos ajustan ciertas configuraciones de rendimiento para lograr los mejores resultados.

4 Evaluación y ajuste

Finalmente, el rendimiento del modelo se evalúa o prueba en el mundo real. La evaluación de modelos de IA generativa es diferente de la evaluación de modelos de ML tradicionales porque la IA generativa crea un resultado completamente nuevo y la calidad de este resultado tiende a ser subjetiva. Las métricas difieren según lo que crea el modelo, y las técnicas de evaluación para la IA generativa generalmente incluyen el uso de evaluadores humanos y pueden emplear la estrategia de que los modelos de IA generativa se evalúen entre sí. Los aprendizajes de la etapa de evaluación generalmente se aplican nuevamente para ajustar el modelo o incluso volver a entrenarlo. Una vez validado el rendimiento del modelo, está listo para la producción.

Tipos de modelos de IA generativa

Aprovechando nuestro conocimiento fundamental de los modelos de IA generativa y las redes neuronales que los impulsan, ahora estamos preparados para sumergirnos en tipos específicos de arquitecturas de modelos que han surgido desde principios de la década de 2010. Exploraremos las fortalezas y debilidades únicas de cada modelo, así como sus aplicaciones prácticas.

Aquí hay una breve descripción general de los modelos que discutiremos:

  • Los codificadores automáticos variacionales (VAE)son expertos en aprender distribuciones de datos complejas y, a menudo, se utilizan para tareas como generación y edición de imágenes.
  • Las redes generativas adversarias (GAN)son conocidas por su capacidad para crear imágenes muy realistas y se han vuelto populares en una variedad de aplicaciones creativas.
  • Los modelos de difusiónson una clase más nueva de modelos que generan muestras de alta calidad mediante un proceso de agregar y luego eliminar ruido gradualmente.
  • Los modelos de lenguajedestacan por comprender y generar el lenguaje humano, lo que los hace útiles para aplicaciones como chatbots y finalización de texto.
  • Los modelos basados ​​en transformadoresse diseñaron inicialmente para tareas de procesamiento del lenguaje natural (PNL), pero se adaptaron para su uso en modelos generativos debido a su poderosa capacidad para manejar datos secuenciales.

Profundicemos en cada una de estas arquitecturas para comprender cómo funcionan y dónde se pueden aplicar mejor.

Codificadores automáticos variacionales (VAE)

Los codificadores automáticos variacionales fueron inventados por Max Welling y Diederik P. Kingma en 2013. Se basan en el hecho de que una red neuronal puede codificar los conceptos de alto nivel que el modelo aprende durante el paso de entrenamiento. A esto a veces se le denomina “compresión” o “proyección” de los datos sin procesar.

Si un modelo mira la imagen de un pastel, por ejemplo, podría convertirla en una codificación que contenga todas las características de la imagen: chispas, color de glaseado, capas esponjosas, etc. Esta codificación parece un conjunto de números que tiene sentido el modelo pero no a los humanos. Puede ser descodificado por otra red neuronal para intentar recrear la imagen original, aunque tendrá algunos huecos porque la codificación es una compresión. Este tipo de modelo, en el que las piezas del codificador y el decodificador trabajan juntas, se denomina codificador automático.

Los codificadores automáticos variacionales le dan un giro a la idea del codificador automático para generar nuevos resultados. Al generar sus codificaciones, un VAE utiliza probabilidades en lugar de números discretos. Después de todo, ¿la crema batida cuenta como glaseado? A veces sí; a veces no.

Resulta que si entrenas una red neuronal para crear estas codificaciones probabilísticas y entrenas otra red neuronal para decodificarlas, puedes obtener resultados bastante interesantes. El decodificador puede muestrear puntos en el “espacio” de codificación variacional y crear resultados completamente nuevos que seguirán pareciendo realistas porque han conservado las relaciones probabilísticas de los datos de entrenamiento.

Ventajas y desventajas

Los codificadores automáticos variacionales utilizan el aprendizaje no supervisado, lo que significa que el modelo aprende por sí solo a partir de datos sin procesar sin necesidad de que los humanos etiqueten diferentes características o resultados. Estos modelos tienen especial éxito a la hora de crear contenidos que se desvían ligeramente del original. Debido a cómo trabajan con codificaciones, también se les pueden dar instrucciones específicas basadas en las características de los datos de entrenamiento: "Muéstrame un postre que represente el punto medio perfecto entre pastel y tarta". Dicho esto, los VAE optimizan los resultados probables, por lo que es poco probable que destaquen en la creación de contenido muy original o innovador.

Una queja común sobre los VAE es que pueden producir imágenes ruidosas (es decir, borrosas) debido al hecho de que la codificación y decodificación implica compresión, lo que introduce pérdida de información.

Casos de uso

Los codificadores automáticos variacionales funcionan con todo tipo de datos, aunque se utilizan principalmente para generar imágenes, audio y texto. Una aplicación interesante es la detección de anomalías: en un conjunto de datos, los VAE pueden encontrar los puntos de datos que más se desvían de la norma, porque esos puntos tendrán el mayor error de reconstrucción, lo que significa que serán los más alejados de las probabilidades que el VAE ha codificado.

Redes generativas adversarias (GAN)

Las redes generativas adversarias fueron desarrolladas por Ian Goodfellow en 2014. Si bien las redes neuronales habían podido generar imágenes antes de eso, los resultados tendían a ser borrosos y poco convincentes. La pregunta central (y la idea) detrás de las GAN es la siguiente: ¿Qué sucede si enfrentas dos redes neuronales entre sí? A uno, llamado generador, se le enseña a generar contenido nuevo, mientras que a otro, llamado discriminador, se le entrena para conocer la diferencia entre contenido real y falso.

El generador crea imágenes candidatas y se las muestra al discriminador. En función de la retroalimentación, el generador actualiza sus predicciones en consecuencia, mejorando cada vez más su capacidad de "engañar" al discriminador. Una vez que puede engañar al discriminador el 50% de las veces (tan bueno como lanzar una moneda al aire entre lo real y lo falso), el ciclo de entrenamiento de retroalimentación se detiene. La parte generadora de GAN está entonces lista para su evaluación y producción.

Desde 2014, se han desarrollado cientos de variaciones de GAN para diferentes casos de uso y para equilibrar las ventajas y desventajas inherentes de las GAN.

Ventajas y desventajas

Las redes generativas de confrontación, junto con los VAE, inicialmente generaron mucho revuelo en torno al potencial de la IA generativa. Utilizan aprendizaje no supervisado, por lo que el modelo mejora por sí solo sin que los investigadores tengan que decirle si sus resultados son buenos o malos. Las redes generativas adversarias también logran aprender muy rápidamente; En comparación con otras soluciones existentes cuando se lanzaron por primera vez, podían obtener buenos resultados con muchos menos datos de entrenamiento: cientos de imágenes en lugar de miles.

Sin embargo, las GAN generalmente tienen dificultades para crear contenido que no se parezca a sus datos de entrenamiento: son imitadores, no creadores. Y a veces pueden "sobreajustar" sus datos de entrenamiento, como cuando las GAN crearon imágenes de fotos de gatos que contenían letras porque se les mostraron muchos memes de gatos.

Entrenar una GAN es un desafío. Durante el entrenamiento se deben hacer malabarismos con dos redes. También pueden surgir problemas cuando el discriminador es demasiado bueno, lo que lleva a ciclos de capacitación que nunca terminan, o si el discriminador no es lo suficientemente bueno, lo que conduce a malos resultados. También pueden sufrir lo que se llama colapso modal, en el que no logran producir resultados diversos porque el generador aprende algunas formas de engañar al discriminador y se centra en esas estrategias excluyendo otras.

Casos de uso

Las redes generativas adversarias se utilizan principalmente para generar contenido que sea muy similar al original. Por ejemplo, pueden producir rostros humanos convincentes o fotografías realistas de interiores o paisajes para su uso en fotografías de archivo o videojuegos. También pueden crear imágenes que hayan sido alteradas de alguna manera, como cambiar una imagen de color a blanco y negro o envejecer un rostro en una imagen. Dicho esto, no todas las GAN producen imágenes. Por ejemplo, algunas GAN se han utilizado para producir resultados de conversión de texto a voz.

Modelos de difusión

Los modelos de difusión también surgieron a mediados de la década de 2010 y ofrecieron algunos avances que generaron un mejor rendimiento a principios de la década de 2020. Impulsan herramientas de generación de imágenes como DALL-E, Stable Diffusion y Midjourney.

Los modelos de difusión funcionan introduciendo ruido gaussiano en una imagen, distorsionándola en una serie de pasos y luego entrenando un modelo para revertir estos pasos y transformar la imagen "ruidosa" en una clara. (“Ruido gaussiano” simplemente significa que el ruido se agrega aleatoriamente usando una curva de probabilidades).

Se puede pensar que la imagen ruidosa es algo así como la codificación VAE y, de hecho, los VAE y los modelos de difusión están relacionados. Las imágenes de datos de entrenamiento de, digamos, pastel de lima, terminarán con versiones ruidosas bastante similares. Pero ni siquiera la misma imagen ruidosa será “eliminada de ruido” cada vez, porque el modelo está haciendo conjeturas fundamentadas a lo largo del camino.

Es posible que ya hayas descubierto dónde entra la parte generativa. Si le das al modelo una representación de la imagen en el espacio ruidoso, podrá eliminar el ruido de la imagen y generar una imagen clara y completamente nueva. Es algo así como el decodificador toma muestras de la codificación. Pero hay una diferencia importante: no ha habido ninguna compresión en el camino. Por lo tanto, no ha habido una pérdida real de datos y la imagen resultante será de mayor calidad.

Las herramientas de IA generativa que van desde un mensaje de texto a una imagen lo hacen con la ayuda de un modelo separado que comprende cómo algo como un “pastel de cumpleaños con temática de unicornio” podría asignarse a diferentes características de la imagen. La versión ruidosa de esas características luego se invierte para revelar una imagen clara.

Ventajas y desventajas

Los modelos de difusión no comprimen los datos de entrenamiento, por lo que logran crear imágenes muy realistas y de alta calidad. Sin embargo, su formación requiere muchos más recursos y tiempo que otros modelos. Dicho esto, el entrenamiento en sí es más sencillo porque no se topa con el colapso del modo de las GAN y otros inconvenientes de la red adversaria. Tampoco sufren la pérdida de datos (y los resultados de menor calidad resultantes) que tienen los VAE.

Casos de uso

Los modelos de difusión se utilizan principalmente para la generación de imágenes, sonido y vídeo. No hay ninguna razón inherente por la que no puedan usarse para generar texto también, pero hasta ahora, los modelos basados ​​en transformadores han sido más efectivos para el lenguaje natural.

Modelos de lenguaje

Los modelos de lenguaje se refieren a cualquier técnica de ML que genere un modelo probabilístico de lenguaje natural. El tipo de modelo de lenguaje más conocido en la actualidad es el LLM, que se entrena con cantidades masivas de datos sin procesar y utiliza una arquitectura basada en transformadores para generar texto. (Más sobre transformadores en la siguiente sección).

Antes de los modelos basados ​​en transformadores, la mayoría de los modelos de lenguaje más modernos utilizaban redes neuronales recurrentes (RNN). Los RNN introducen pequeños bucles en las interconexiones entre los nodos, de modo que además de aprender de las señales presentes, como en una red neuronal feedforward (FNN) tradicional, los nodos también pueden aprender del pasado reciente. Esto es importante para procesar o generar lenguaje natural, como un flujo de texto o una entrada de voz. A diferencia de las imágenes, el lenguaje es altamente contextual: cómo lo interpretamos depende de lo que haya sucedido antes.

Ventajas y desventajas

Dado que “modelos lingüísticos” se refiere a un grupo tan grande de modelos, es difícil generalizar sobre sus ventajas y desventajas. Los desafíos del modelado del lenguaje incluyen el hecho de que el lenguaje tiene muchas dimensiones: hay una gran cantidad de palabras diferentes en un idioma determinado y es posible que algunas combinaciones nunca aparezcan en los datos de entrenamiento.

Además, el lenguaje depende en gran medida del contexto de lo que sucedió antes en la secuencia, lo que requiere que la red maneje o represente ese contexto de alguna manera. La capacidad de abordar esta necesidad ha llevado a que los RNN con memorias a largo y corto plazo y, posteriormente, transformadores, que pueden procesar una oración completa como un todo, surjan como la arquitectura de última generación para los modelos de lenguaje.

Casos de uso

Los modelos de lenguaje se pueden utilizar para traducción, resúmenes, corrección de errores gramaticales, reconocimiento de voz y muchas más tareas. Se utilizan para generar nuevo contenido de texto creativo con muchas aplicaciones y están demostrando ser capaces de realizar razonamientos avanzados, como analizar datos y resolver acertijos de lógica. Curiosamente, la investigación ha encontrado que una capacidad emergente de los LLM es la conciencia espacial y la capacidad de crear dibujos básicos, a pesar de que están capacitados exclusivamente en texto.

Modelos basados ​​en transformadores

Los transformadores, inventados por investigadores de Google y la Universidad de Toronto en 2017, revolucionaron el campo del aprendizaje profundo. Los LLM como ChatGPT son modelos basados ​​en transformadores, y los resultados de búsqueda de Google también funcionan con transformadores.

Un modelo basado en transformador utiliza sus datos de entrenamiento para aprender cómo se relacionan diferentes palabras. Por ejemplo, podría aprender quecakeypieson conceptualmente similares, mientras quecakeycapeno están directamente relacionados. También podría aprender querebanadapuede estar vinculada apastelypastel, especialmente si esas palabras aparecen muy cerca.

Al analizar texto, el modelo utiliza esta comprensión básica para construir lo que parece una hoja de cálculo masiva. Puede buscar dos palabras cualesquiera en el texto y obtener una respuesta sobre cuán relacionadas probablemente estén.

Al aprovechar estas señales contextuales, un modelo transformador interpreta hábilmente el lenguaje y pronostica continuidades potenciales en una conversación. Por ejemplo, si alguien menciona un pastel en un segmento y luego pasa a hablar de su cumpleaños en el siguiente, el modelo anticipa la eventual mención de velas o una fiesta, basándose en las conexiones lingüísticas establecidas.

Ventajas y desventajas

Cuando se trata de analizar y generar lenguaje, los transformadores tienen algunas ventajas sobre los RNNS, sus predecesores. Pueden procesar texto en paralelo a través de la red en lugar de procesar cada palabra de forma secuencial. Esto los hace más rápidos y eficientes para entrenar en conjuntos de datos muy grandes. También pueden hacer conexiones entre palabras sin importar qué tan separadas estén, lo que les permite aprovechar más contexto del texto.

Sin embargo, los transformadores necesitan una gran cantidad de datos para funcionar bien y, con conjuntos de datos más pequeños, las arquitecturas de redes neuronales más tradicionales pueden funcionar mejor.

Casos de uso

Los transformadores tienen muchas aplicaciones de IA generativa. Si bien los modelos basados ​​en transformadores se utilizan normalmente para generar texto o voz, los investigadores están explorando su uso para la generación de imágenes, ya que son menos intensivos desde el punto de vista computacional que los modelos de difusión.

Los más famosos son los modelos LLM basados ​​en transformadores. Los modelos de lenguaje utilizan sólo la parte decodificadora de la arquitectura. La indicación se introduce en el modelo como una codificación: ese conjunto de valores numéricos, probabilidades y datos de atención que mencionamos anteriormente. El modelo decodifica la entrada utilizando el mecanismo de autoatención y mirando todas las palabras del mensaje en paralelo. El objetivo del modelo es generar una predicción para la siguiente palabra de la oración.

Los transformadores tienen muchas aplicaciones además de generar texto en el procesamiento del lenguaje natural. De hecho, fueron concebidos originalmente para traducir o transformar texto de un idioma a otro. Grammarly ha contribuido a la investigación sobre el uso de transformadores para corregir errores gramaticales.

Trabaja de forma más inteligente con Grammarly
El compañero de redacción de IA para cualquiera que tenga trabajo que hacer

Conclusión

Los modelos de IA generativa han avanzado mucho en la última década. Esperamos que ahora comprenda un poco más sobre la evolución de estos modelos, cómo funcionan y cómo podrían aplicarse a diferentes casos de uso. Sin embargo, este artículo apenas ha arañado la superficie y omitió muchos detalles importantes con el objetivo de proporcionar una visión general para el lector medio. Lo alentamos a continuar aprendiendo sobre las matemáticas y la ciencia detrás de estos modelos estudiando los trabajos de investigación en los que se basan y aprendiendo más sobre cómo funcionan desde una perspectiva probabilística y estadística.