Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Modelos Generativos Basados en Transformadores | Fundamentos Teóricos
IA Generativa

bookModelos Generativos Basados en Transformadores

Introducción a los Transformers y la Autoatención

Los Transformers constituyen una arquitectura fundamental en la inteligencia artificial moderna, especialmente en el Procesamiento del Lenguaje Natural (PLN) y en la modelización generativa. Presentados por primera vez en el artículo "Attention is All You Need" (Vaswani et al., 2017), los transformers eliminan la recurrencia en favor de un mecanismo denominado autoatención, que permite a los modelos considerar todas las partes de la secuencia de entrada simultáneamente.

Mecanismo de Autoatención

El mecanismo de autoatención permite que el modelo evalúe la importancia relativa de los diferentes tokens en una secuencia. Esto se realiza utilizando tres matrices derivadas de los embeddings de entrada:

  • Query (Q);
  • Key (K);
  • Value (V).

La salida de la atención se calcula como:

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax} \left( \frac{QK^T}{\sqrt{d_k}} \right)V

Donde:

  • QQ, KK y VV son matrices derivadas de la entrada.
  • dkd_k es la dimensión de los vectores clave.
  • softmax\text{softmax} convierte las puntuaciones de similitud en probabilidades.

Esto permite que cada token atienda a todos los demás tokens y ajuste su representación en consecuencia.

Visión general de la arquitectura Transformer

El modelo transformer consta de capas apiladas de codificador y decodificador:

  • Codificador convierte la entrada en una representación latente contextualizada;
  • Decodificador genera tokens de salida utilizando la salida del codificador y tokens previos.

Cada capa incluye:

  • Autoatención Multi-Cabeza;
  • Redes Neuronales Feedforward;
  • Normalización de Capa;
  • Conexiones Residuales.

Autoatención Multi-Cabeza

En lugar de calcular una única función de atención, el transformer utiliza múltiples cabezas de atención. Cada cabeza aprende a enfocarse en diferentes partes de la secuencia.

Multi-Head(Q,K,V)=Concat(head1,head2,...,headn)W0\text{Multi-Head}(Q, K, V) = \text{Concat}(\text{head}_1, \text{head}_2, ... , \text{head}_n)W^0

Donde cada cabeza se calcula como:

headi=Attention(QWiQ,KWiK,VWiV)\text{head}_i = \text{Attention}(QW_i^Q, KW_i^K, VW_i^V)

Donde:

  • WiQ,WiK,WiVW_i^Q, W_i^K, W_i^V son matrices de proyección para queries, keys y values;
  • W0W^0 proyecta las cabezas concatenadas de nuevo a la dimensión original.

Redes Neuronales Feedforward

Cada bloque de transformer incluye una red feedforward aplicada de manera independiente a cada posición:

FFN(x)=ReLU(xW1+b1)W2+b2\text{FFN}(x) = \text{ReLU}(x W_1 + b_1)W_2 + b_2
  • Consta de dos capas lineales con una no linealidad (por ejemplo, ReLU) entre ellas;
  • Aplica la misma transformación en todas las posiciones.

Normalización de Capas

La normalización de capas normaliza la entrada a través de las características (canales) en lugar del lote. Esto estabiliza el entrenamiento y mejora la convergencia:

LayerNorm(x)=xμσγ+β\text{LayerNorm}(x) = \frac{x - \mu}{\sigma} \cdot \gamma + \beta

Donde:

  • μ\mu es la media de las características;
  • σ\sigma es la desviación estándar;
  • γ\gamma y β\beta son parámetros aprendibles.

Conexiones Residuales

Las conexiones residuales suman la entrada de cada subcapa a su salida:

Output=Layer(x)+x\text{Output} = \text{Layer}(x) + x
  • Facilita el flujo del gradiente y permite el entrenamiento de modelos más profundos;
  • Se utiliza tanto en las capas de self-attention como en las feedforward.

En modelos solo decodificadores (como GPT), solo se utiliza el decodificador con self-attention causal (enmascarada).

Transformadores Generativos Preentrenados (GPT)

Los modelos GPT son transformadores solo decodificadores entrenados para predecir el siguiente token de manera autoregresiva:

P(x1,x2,...,xn)=t=1nP(xtx<t)P(x_1,x_2,...,x_n)=\prod_{t=1}^n{P(x_t|x_{<t})}

Características clave:

  • Entrenados con conjuntos de datos de texto a gran escala;
  • Capaces de generar texto coherente y diverso;
  • Ampliamente utilizados en aplicaciones como chatbots y generación de código.

BERT y Modelado de Lenguaje enmascarado

BERT (Representaciones Bidireccionales de Codificador de Transformadores) utiliza únicamente el codificador. Se entrena mediante modelado de lenguaje enmascarado (MLM):

  • Algunos tokens aleatorios se reemplazan por un [MASK];
  • El modelo predice el token original basándose en el contexto completo.
P(xix1,...,xi1,[MASK],xi+1,...,xn)P(x_i | x_1, ..., x_{i-1}, [\text{MASK}], x_{i+1}, ..., x_n)

Esto hace que BERT sea adecuado para tareas como clasificación, preguntas y respuestas, y similitud semántica.

Transformadores y LLMs

Los transformadores son la base de los Modelos de Lenguaje de Gran Escala (LLMs) como GPT-3, GPT-4, PaLM, LLaMA y Claude.

Los LLMs utilizan grandes conjuntos de datos y cientos de miles de millones de parámetros, lo que les permite:

  • Comprender y generar lenguaje humano;
  • Realizar traducción, resumen, preguntas y respuestas, razonamiento;
  • Impulsar chatbots, analizadores de documentos y asistentes de codificación.

La escalabilidad de los transformadores y su capacidad para modelar dependencias a largo plazo los hacen ideales para estos modelos.

1. ¿Cuál es la innovación principal introducida por los transformers?

2. ¿Qué distingue a BERT de GPT?

3. ¿Por qué los transformers son ideales para los LLM?

question mark

¿Cuál es la innovación principal introducida por los transformers?

Select the correct answer

question mark

¿Qué distingue a BERT de GPT?

Select the correct answer

question mark

¿Por qué los transformers son ideales para los LLM?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 8

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 4.76

bookModelos Generativos Basados en Transformadores

Desliza para mostrar el menú

Introducción a los Transformers y la Autoatención

Los Transformers constituyen una arquitectura fundamental en la inteligencia artificial moderna, especialmente en el Procesamiento del Lenguaje Natural (PLN) y en la modelización generativa. Presentados por primera vez en el artículo "Attention is All You Need" (Vaswani et al., 2017), los transformers eliminan la recurrencia en favor de un mecanismo denominado autoatención, que permite a los modelos considerar todas las partes de la secuencia de entrada simultáneamente.

Mecanismo de Autoatención

El mecanismo de autoatención permite que el modelo evalúe la importancia relativa de los diferentes tokens en una secuencia. Esto se realiza utilizando tres matrices derivadas de los embeddings de entrada:

  • Query (Q);
  • Key (K);
  • Value (V).

La salida de la atención se calcula como:

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax} \left( \frac{QK^T}{\sqrt{d_k}} \right)V

Donde:

  • QQ, KK y VV son matrices derivadas de la entrada.
  • dkd_k es la dimensión de los vectores clave.
  • softmax\text{softmax} convierte las puntuaciones de similitud en probabilidades.

Esto permite que cada token atienda a todos los demás tokens y ajuste su representación en consecuencia.

Visión general de la arquitectura Transformer

El modelo transformer consta de capas apiladas de codificador y decodificador:

  • Codificador convierte la entrada en una representación latente contextualizada;
  • Decodificador genera tokens de salida utilizando la salida del codificador y tokens previos.

Cada capa incluye:

  • Autoatención Multi-Cabeza;
  • Redes Neuronales Feedforward;
  • Normalización de Capa;
  • Conexiones Residuales.

Autoatención Multi-Cabeza

En lugar de calcular una única función de atención, el transformer utiliza múltiples cabezas de atención. Cada cabeza aprende a enfocarse en diferentes partes de la secuencia.

Multi-Head(Q,K,V)=Concat(head1,head2,...,headn)W0\text{Multi-Head}(Q, K, V) = \text{Concat}(\text{head}_1, \text{head}_2, ... , \text{head}_n)W^0

Donde cada cabeza se calcula como:

headi=Attention(QWiQ,KWiK,VWiV)\text{head}_i = \text{Attention}(QW_i^Q, KW_i^K, VW_i^V)

Donde:

  • WiQ,WiK,WiVW_i^Q, W_i^K, W_i^V son matrices de proyección para queries, keys y values;
  • W0W^0 proyecta las cabezas concatenadas de nuevo a la dimensión original.

Redes Neuronales Feedforward

Cada bloque de transformer incluye una red feedforward aplicada de manera independiente a cada posición:

FFN(x)=ReLU(xW1+b1)W2+b2\text{FFN}(x) = \text{ReLU}(x W_1 + b_1)W_2 + b_2
  • Consta de dos capas lineales con una no linealidad (por ejemplo, ReLU) entre ellas;
  • Aplica la misma transformación en todas las posiciones.

Normalización de Capas

La normalización de capas normaliza la entrada a través de las características (canales) en lugar del lote. Esto estabiliza el entrenamiento y mejora la convergencia:

LayerNorm(x)=xμσγ+β\text{LayerNorm}(x) = \frac{x - \mu}{\sigma} \cdot \gamma + \beta

Donde:

  • μ\mu es la media de las características;
  • σ\sigma es la desviación estándar;
  • γ\gamma y β\beta son parámetros aprendibles.

Conexiones Residuales

Las conexiones residuales suman la entrada de cada subcapa a su salida:

Output=Layer(x)+x\text{Output} = \text{Layer}(x) + x
  • Facilita el flujo del gradiente y permite el entrenamiento de modelos más profundos;
  • Se utiliza tanto en las capas de self-attention como en las feedforward.

En modelos solo decodificadores (como GPT), solo se utiliza el decodificador con self-attention causal (enmascarada).

Transformadores Generativos Preentrenados (GPT)

Los modelos GPT son transformadores solo decodificadores entrenados para predecir el siguiente token de manera autoregresiva:

P(x1,x2,...,xn)=t=1nP(xtx<t)P(x_1,x_2,...,x_n)=\prod_{t=1}^n{P(x_t|x_{<t})}

Características clave:

  • Entrenados con conjuntos de datos de texto a gran escala;
  • Capaces de generar texto coherente y diverso;
  • Ampliamente utilizados en aplicaciones como chatbots y generación de código.

BERT y Modelado de Lenguaje enmascarado

BERT (Representaciones Bidireccionales de Codificador de Transformadores) utiliza únicamente el codificador. Se entrena mediante modelado de lenguaje enmascarado (MLM):

  • Algunos tokens aleatorios se reemplazan por un [MASK];
  • El modelo predice el token original basándose en el contexto completo.
P(xix1,...,xi1,[MASK],xi+1,...,xn)P(x_i | x_1, ..., x_{i-1}, [\text{MASK}], x_{i+1}, ..., x_n)

Esto hace que BERT sea adecuado para tareas como clasificación, preguntas y respuestas, y similitud semántica.

Transformadores y LLMs

Los transformadores son la base de los Modelos de Lenguaje de Gran Escala (LLMs) como GPT-3, GPT-4, PaLM, LLaMA y Claude.

Los LLMs utilizan grandes conjuntos de datos y cientos de miles de millones de parámetros, lo que les permite:

  • Comprender y generar lenguaje humano;
  • Realizar traducción, resumen, preguntas y respuestas, razonamiento;
  • Impulsar chatbots, analizadores de documentos y asistentes de codificación.

La escalabilidad de los transformadores y su capacidad para modelar dependencias a largo plazo los hacen ideales para estos modelos.

1. ¿Cuál es la innovación principal introducida por los transformers?

2. ¿Qué distingue a BERT de GPT?

3. ¿Por qué los transformers son ideales para los LLM?

question mark

¿Cuál es la innovación principal introducida por los transformers?

Select the correct answer

question mark

¿Qué distingue a BERT de GPT?

Select the correct answer

question mark

¿Por qué los transformers son ideales para los LLM?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 8
some-alt