In-Context Learning (ES)
Aprendizaje en contexto (del inglés In-Context Learning, ICL) es la capacidad fundamental de los modelos de lenguaje grandes (LLM) para aprender nuevas tareas "sobre la marcha", utilizando únicamente ejemplos (demostraciones) proporcionados en el contexto (prompt) de una consulta. La característica clave es que este proceso de adaptación ocurre sin actualizar los pesos (parámetros) del modelo, es decir, sin el reentrenamiento tradicional (fine-tuning)[1][2].
Este mecanismo permite a los modelos demostrar una flexibilidad asombrosa, resolviendo tareas para las que no fueron entrenados específicamente. El ICL se ha convertido en uno de los avances clave que ha hecho que los modelos de lenguaje grandes sean tan potentes y versátiles[3].
Mecanismos de funcionamiento
La comprensión exacta de cómo funciona el ICL sigue siendo un área activa de investigación; sin embargo, existen varias teorías principales que explican este fenómeno.
El Transformer como metaoptimizador
Una de las teorías populares sostiene que la arquitectura Transformer, durante el preentrenamiento, aprende a implementar algoritmos de aprendizaje en sus pasadas hacia adelante (forward passes). Cuando el modelo recibe un prompt con ejemplos, realiza implícitamente una especie de optimización para resolver la tarea presentada, ajustando sus estados internos (activaciones) en lugar de sus pesos[4].
Inferencia bayesiana
Otra teoría considera el ICL como una forma de inferencia bayesiana. El modelo, preentrenado con enormes cantidades de datos, posee una comprensión a priori de una multitud de conceptos. Los ejemplos en el contexto sirven como evidencia que permite al modelo refinar su distribución de probabilidad a posteriori sobre los conceptos latentes. En otras palabras, los ejemplos ayudan al modelo a "comprender" cuál de las miles de tareas que conoce debe resolver en ese momento[5].
Tipos de In-Context Learning
Dependiendo del número de ejemplos proporcionados, el ICL se divide en tres tipos principales.
- Few-shot Learning (aprendizaje con pocos ejemplos): Es el enfoque más común y equilibrado. Al modelo se le proporcionan varias demostraciones (generalmente de 2 a 10).
Ejemplo (clasificación de sentimiento):
Texto: "¡Qué día tan maravilloso!" Sentimiento: Positivo Texto: "Odio estar atascado en el tráfico." Sentimiento: Negativo Texto: "Esta película fue bastante mediocre." Sentimiento:
Respuesta esperada:
Neutro
- One-shot Learning (aprendizaje con un solo ejemplo): Al modelo se le da un único ejemplo. Esto suele ser suficiente para establecer el formato de la respuesta y mejorar significativamente el rendimiento en comparación con el enfoque zero-shot.
- Zero-shot Learning (aprendizaje sin ejemplos): Al modelo no se le proporcionan ejemplos, solo una instrucción o la descripción de la tarea. En este caso, el modelo se basa completamente en el conocimiento adquirido durante su preentrenamiento.
Aplicación práctica
La aplicación correcta del ICL permite resolver una amplia gama de tareas sin la necesidad de un costoso desarrollo y reentrenamiento.
- Para tareas creativas y estilísticas (generación de código en un estilo específico, escritura de texto al estilo de un autor concreto):
- Se recomienda el Few-shot Learning.
- Los ejemplos ayudan al modelo a captar el estilo, formato y estructura de salida deseados.
- Para tareas sencillas con instrucciones claras (traducción, resumen, respuestas a preguntas simples):
- A menudo es suficiente con el Zero-shot Learning.
- Los modelos modernos manejan bastante bien estas tareas si formaron parte de su preentrenamiento.
- Para tareas donde el formato de salida es crucial (generación de JSON, extracción de entidades):
- Se recomienda el One-shot o Few-shot Learning.
- Incluso un solo ejemplo puede establecer claramente la estructura de respuesta requerida, evitando errores de formato.
Ventajas y desventajas
| Ventajas | Desventajas |
|---|---|
|
|
Comparación con otros paradigmas
ICL vs. Fine-tuning
El fine-tuning (reentrenamiento o ajuste fino) modifica los pesos del modelo, "grabando" en él nuevos conocimientos. Esto convierte al modelo en un experto en un campo específico, pero reduce su flexibilidad general. El ICL, por el contrario, no altera los pesos y es más flexible, aunque puede tener un rendimiento inferior en tareas altamente especializadas que requieren un conocimiento profundo del dominio.
ICL vs. RAG (Retrieval-Augmented Generation)
Ambos métodos amplían el contexto del modelo, pero con diferentes propósitos:
- ICL utiliza ejemplos para enseñar al modelo cómo realizar una tarea (demostración de una habilidad).
- RAG utiliza información recuperada para informar al modelo de los hechos necesarios para la respuesta (provisión de conocimiento).
En la práctica, ICL y RAG a menudo se combinan para lograr los mejores resultados.
Literatura
- Brown, T. B. et al. (2020). Language Models are Few-Shot Learners. arXiv:2005.14165.
- Dai, D. et al. (2022). Why Can GPT Learn In-Context? Language Models Implicitly Perform Gradient Descent as Meta-Optimizers. arXiv:2212.10559.
- Panwar, M.; Ahuja, K.; Goyal, N. (2024). In-Context Learning through the Bayesian Prism. arXiv:2306.04891.
- Müller, S. et al. (2021). Transformers Can Do Bayesian Inference. arXiv:2112.10510.
- Garg, S. et al. (2022). What Can Transformers Learn In-Context? A Case Study of Simple Function Classes. arXiv:2208.01066.
- Min, S. et al. (2022). Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?. arXiv:2202.12837.
- Wang, X. et al. (2023). Explaining and Finding Good Demonstrations for In-Context Learning. arXiv:2302.13971.
- Xie, S. et al. (2024). A Survey on In-Context Learning. arXiv:2301.00234.
- Yu, Z.; Ananiadou, S. (2024). How Do Large Language Models Learn In-Context? Query and Key Matrices of In-Context Heads Are Two Towers for Metric Learning. arXiv:2402.02872.
- Wibisono, K. C.; Wang, Y. (2024). From Unstructured Data to In-Context Learning: Exploring What Tasks Can Be Learned and When. arXiv:2406.00131.
- Chan, J. K. et al. (2022). Data Distributional Properties Drive Emergent In-Context Learning in Transformers. arXiv:2205.05055.
- Hahn, M.; Goyal, N. (2023). A Theory of Emergent In-Context Learning as Implicit Structure Induction. arXiv:2303.07971.
Notas
- ↑ What is In-Context Learning (ICL)? // Lakera.ai
- ↑ In-Context Learning (ICL) // Hopsworks.ai
- ↑ In-Context Learning, In Context // The Gradient
- ↑ Why Can GPT Learn In-Context? Language Models Secretly Perform Gradient Descent as Meta-Optimizers // arXiv, 2022.
- ↑ Understanding In-Context Learning // Stanford Human-Centered AI, 2023.