Task Arithmetic
Descubre cómo la aritmética de tareas usa actualizaciones de peso para editar el comportamiento del modelo. Aprende a combinar tareas o a desaprender características en Ultralytics YOLO26 sin necesidad de un reentrenamiento completo.
La aritmética de tareas es una técnica avanzada de aprendizaje automático que consiste en modificar el comportamiento de redes neuronales preentrenadas sumando o restando actualizaciones específicas de pesos. En lugar de volver a entrenar completamente un modelo desde cero, los profesionales pueden aislar las diferencias aprendidas entre un modelo base y un modelo ajustado. Estas diferencias son esencialmente actualizaciones direccionales que encapsulan una capacidad o comportamiento específico. Al aplicar operaciones matemáticas básicas como la suma y la resta a estas actualizaciones, los desarrolladores pueden editar dinámicamente sistemas de aprendizaje profundo. Este paradigma ha ganado una tracción significativa en investigaciones recientes de arXiv sobre aritmética de tareas, ofreciendo un método ligero y eficiente en términos de cómputo para adaptar modelos a gran escala a nuevos requisitos.
Link to this sectionCómo funciona el concepto#
La base de esta técnica reside en calcular la diferencia en los pesos del modelo entre un modelo base preentrenado y una versión que ha sido sometida a un ajuste fino en un conjunto de datos específico. Esta diferencia aislada se convierte en una representación localizada de la nueva habilidad. Al manipular directamente los diccionarios de estado de PyTorch o utilizar metodologías de entrenamiento de TensorFlow, los ingenieros pueden escalar y combinar estas diferencias de pesos. Por ejemplo, restar una actualización de peso específica puede obligar a un modelo a "olvidar" un comportamiento aprendido, un concepto ampliamente explorado en la investigación de Anthropic sobre seguridad de modelos.
Link to this sectionAplicaciones en el mundo real#
La aritmética de tareas desbloquea varios flujos de trabajo altamente eficientes en visión artificial moderna y procesos de procesamiento de lenguaje natural:
- Fusión de capacidades multitarea: Los ingenieros pueden entrenar un modelo base Ultralytics YOLO26 en dos conjuntos de datos separados de forma independiente: uno para detección de objetos especializada y otro para clasificación de imágenes. Al calcular las diferencias de pesos para ambas tareas y volver a sumarlas al modelo base, la red resultante puede realizar ambas tareas simultáneamente sin sufrir un olvido catastrófico.
- Desaprendizaje dirigido para la seguridad de la IA: Si un modelo de visión aprende inadvertidamente características sesgadas de sus datos de entrenamiento, los investigadores pueden ajustar una copia en los datos sesgados, extraer las diferencias de pesos específicas y restarlas del modelo original. Como se señala en varios descubrimientos de Google DeepMind, esto borra eficazmente el comportamiento no deseado mientras preserva las capacidades de inteligencia artificial generales del modelo.
Link to this sectionDiferenciación de conceptos relacionados#
Al navegar por los archivos de IEEE Xplore o la biblioteca digital de ACM, es fácil confundir la aritmética de tareas con metodologías relacionadas:
- Vectores de tareas: Son los tensores matemáticos reales (las diferencias de pesos calculadas) que se utilizan durante el proceso aritmético. La aritmética de tareas es el marco general que consiste en sumar o restar estos vectores.
- Fusión de modelos: Este es un término más amplio para combinar múltiples modelos. Si bien la aritmética es una forma de fusionar modelos, la fusión también puede involucrar redes de enrutamiento complejas o ensamblados.
- Aprendizaje por transferencia: Según los conceptos de aprendizaje por transferencia de Wikipedia, esto implica usar el conocimiento de una tarea como punto de partida para otra, lo que normalmente requiere bucles de entrenamiento adicionales. La aritmética de tareas modifica los comportamientos puramente a través de cálculos directos de pesos sin necesidad de bucles de entrenamiento adicionales.
Link to this sectionImplementación de operaciones aritméticas#
Aplicar estas estrategias de optimización de modelos en la práctica requiere gestionar cuidadosamente el estado interno del modelo. A continuación, se muestra un ejemplo de cómo calcular y aplicar una actualización usando PyTorch, una técnica discutida frecuentemente en artículos recientes sobre visión artificial.
import torch
# Load the state dictionaries of the pre-trained base and fine-tuned models
base_weights = torch.load("yolo26_base.pt")
tuned_weights = torch.load("yolo26_tuned.pt")
# Calculate the task vector and add it back to the base model with a scaling factor
scaling_factor = 0.5
for key in base_weights.keys():
task_vector = tuned_weights[key] - base_weights[key]
base_weights[key] += scaling_factor * task_vectorPara los equipos que gestionan procesos complejos de anotación de datos y múltiples versiones de modelos ajustados, Ultralytics Platform ofrece un entorno optimizado para supervisar el entrenamiento en la nube y realizar implementaciones fluidas, lo que hace que la gestión de las mejoras iterativas del modelo sea mucho más eficiente.






