Descubre cómo la aritmética de tareas utiliza las actualizaciones de peso para modificar el comportamiento del modelo. Aprende a fusionar tareas o a eliminar características en Ultralytics sin necesidad de volver a entrenar el modelo por 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 mediante la suma o resta de actualizaciones específicas de los pesos. En lugar de reentrenar un modelo desde cero, los profesionales pueden aislar las diferencias aprendidas entre un modelo base y un modelo ajustado. Estas diferencias son, en esencia, actualizaciones direccionales que encapsulan una capacidad o un 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 los sistemas de aprendizaje profundo. Este paradigma ha ganado un gran impulso en recientes investigaciones de arXiv sobre la aritmética de tareas, ofreciendo un método ligero y eficiente desde el punto de vista computacional para adaptar modelos a gran escala a nuevos requisitos.
El fundamento de esta técnica se basa 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 sobre un conjunto de datos específico. Esta diferencia aislada se convierte en una representación localizada de la nueva habilidad. Mediante la manipulacióndirecta de los diccionarios PyTorch o el uso de metodologíasTensorFlow , 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 Anthropic sobre la seguridad de los modelos.
La aritmética de tareas permite implementar varios flujos de trabajo altamente eficientes en los procesos modernos de visión artificial y procesamiento del lenguaje natural :
Al navegar por los archivos de IEEE Xplore o por la biblioteca digital de ACM, es fácil confundir la aritmética de tareas con otras metodologías relacionadas:
La aplicación de estas estrategias de optimización de modelos en la práctica requiere una gestión cuidadosa del estado interno del modelo. A continuación se muestra un ejemplo del cálculo y la aplicación de una actualización mediante PyTorch, una técnica que se menciona con frecuencia en los 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_vector
Para los equipos que gestionan flujos de trabajo complejos de anotación de datos y múltiples versiones de modelos ajustados, la Ultralytics ofrece un entorno optimizado para supervisar el entrenamiento en la nube y la implementación sin interrupciones, lo que hace que la gestión de las mejoras iterativas de los modelos sea mucho más eficiente.
Comience su viaje con el futuro del aprendizaje automático