Task Arithmetic
Descobre como a aritmética de tarefas usa atualizações de pesos para editar o comportamento do modelo. Aprende a fundir tarefas ou desaprender características no Ultralytics YOLO26 sem re-treino total.
A aritmética de tarefas é uma técnica avançada de machine learning que envolve a modificação do comportamento de redes neurais pré-treinadas através da adição ou subtração de atualizações de pesos específicas. Em vez de treinar novamente um modelo do zero, os profissionais podem isolar as diferenças aprendidas entre um modelo base e um modelo ajustado. Essas diferenças são essencialmente atualizações direcionais que encapsulam uma capacidade ou comportamento específico. Ao aplicar operações matemáticas básicas como adição e subtração a essas atualizações, os desenvolvedores podem editar dinamicamente sistemas de deep learning. Este paradigma ganhou força significativa em pesquisas recentes do arXiv sobre aritmética de tarefas, oferecendo um método leve e computacionalmente eficiente para adaptar modelos de larga escala a novos requisitos.
Link to this sectionComo funciona o conceito#
A base desta técnica depende do cálculo da diferença nos model weights entre um modelo pré-treinado base e uma versão que passou por fine-tuning em um conjunto de dados específico. Essa diferença isolada torna-se uma representação localizada da nova habilidade. Ao manipular diretamente dicionários de estado do PyTorch ou utilizar metodologias de treinamento do TensorFlow, os engenheiros podem escalar e combinar essas diferenças de pesos. Por exemplo, subtrair uma atualização de peso específica pode forçar um modelo a "esquecer" um comportamento aprendido, um conceito amplamente explorado em pesquisas da Anthropic sobre segurança de modelos.
Link to this sectionAplicações no Mundo Real#
A aritmética de tarefas desbloqueia vários fluxos de trabalho altamente eficientes em computer vision modernos e pipelines de processamento de linguagem natural:
- Multi-Task Capability Merging: Os engenheiros podem treinar um modelo base Ultralytics YOLO26 em dois conjuntos de dados separados de forma independente — um para object detection especializado e outro para image classification. Ao calcular as diferenças de pesos para ambas as tarefas e adicioná-las de volta ao modelo base, a rede resultante pode realizar ambas as tarefas simultaneamente sem sofrer com o esquecimento catastrófico.
- Targeted Unlearning for AI Safety: Se um modelo de visão aprender inadvertidamente características tendenciosas a partir de seus dados de treinamento, os pesquisadores podem ajustar uma cópia nos dados tendenciosos, extrair as diferenças de pesos específicas e subtraí-las do modelo original. Como observado em várias descobertas do Google DeepMind, isso efetivamente apaga o comportamento indesejado enquanto preserva as capacidades de inteligência artificial gerais do modelo.
Link to this sectionDiferenciando Conceitos Relacionados#
Ao navegar nos arquivos do IEEE Xplore ou na biblioteca digital da ACM, é fácil confundir a aritmética de tarefas com metodologias relacionadas:
- Task Vectors: Estes são os tensores matemáticos reais (as diferenças de pesos calculadas) usados durante o processo aritmético. A aritmética de tarefas é a estrutura geral de adição ou subtração desses vetores.
- Model Merging: Este é um termo mais amplo para combinar vários modelos. Embora a aritmética seja uma forma de mesclar modelos, a mesclagem também pode envolver redes de roteamento complexas ou ensembling.
- Transfer Learning: De acordo com conceitos de transfer learning da Wikipedia, isso envolve usar o conhecimento de uma tarefa como ponto de partida para outra, o que normalmente requer ciclos de treinamento adicionais. A aritmética de tarefas modifica comportamentos puramente através de cálculos diretos de pesos sem ciclos de treinamento adicionais.
Link to this sectionImplementando Operações Aritméticas#
Aplicar estas estratégias de otimização de modelos na prática requer gerenciar cuidadosamente o estado interno do modelo. Abaixo está um exemplo de como calcular e aplicar uma atualização usando PyTorch, uma técnica frequentemente discutida em artigos recentes de visão computacional.
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 equipes que gerenciam pipelines complexos de data annotation e múltiplas versões de modelos ajustados, a Ultralytics Platform fornece um ambiente simplificado para supervisionar o treinamento em nuvem e a implementação perfeita, tornando o gerenciamento de melhorias iterativas do modelo muito mais eficiente.






