Task Vectors
Aprende como os vetores de tarefa permitem a fusão eficiente de modelos e o direcionamento de comportamento. Descobre como manipular pesos do Ultralytics YOLO26 para multi-tarefa zero-shot.
Vetores de tarefa representam as mudanças específicas feitas nos pesos de uma rede neural durante o ajuste fino para alcançar uma nova capacidade. Ao subtrair os parâmetros de um modelo base fundamental daqueles de um modelo ajustado, pesquisadores podem isolar um vetor direcional no espaço de pesos que encapsula o comportamento aprendido para aquela tarefa específica. Essa abordagem permite que desenvolvedores apliquem operações aritméticas simples em parâmetros de modelo para direcionar, modificar ou mesclar comportamentos de modelo sem a necessidade de computação de treinamento adicional.
Link to this sectionComo os Vetores de Tarefa Diferem do Aprendizado por Transferência#
Enquanto o conceito de aprendizado por transferência envolve treinar sequencialmente um modelo em um novo conjunto de dados para adaptar seu conhecimento existente, os vetores de tarefa operam diretamente sobre os pesos estruturais do modelo pós-treinamento. Em vez de treinar gradientes novamente para aprender um novo domínio, a interpolação no espaço de pesos usando vetores de tarefa permite que profissionais combinem linearmente as diferenças de peso de múltiplos modelos treinados independentemente. Isso possibilita a mesclagem de modelos zero-shot, permitindo que um único modelo herde múltiplas capacidades simultaneamente sem o típico custo computacional durante o treinamento.
Link to this sectionAplicações no Mundo Real#
A capacidade de manipular modelos de deep learning algebricamente levou a várias aplicações impactantes em pipelines modernos de IA:
- Mesclagem de Modelos Multitarefa: Engenheiros podem combinar um vetor de tarefa otimizado para detecção de objetos com outro treinado para segmentação de imagem. Quando aplicado a um modelo base Ultralytics YOLO26, isso cria uma arquitetura de propósito duplo que se destaca em ambas as tarefas simultaneamente, preservando os pontos fortes de cada ajuste fino original.
- Desaprendizado de Máquina e Segurança de IA: Se um modelo exibir saídas tendenciosas ou perigosas, pesquisadores podem calcular um vetor de tarefa representando esse comportamento indesejado específico. Ao subtrair esse vetor dos pesos do modelo, eles podem efetivamente "apagar" o comportamento, contribuindo significativamente para uma segurança de IA aprimorada e padrões robustos de ética em IA.
- Adaptação de Domínio em Visão Computacional: Ao adaptar modelos para ambientes específicos — como a mudança de inferência em tempo real diurna para noturna — os vetores de tarefa permitem que usuários escalem a magnitude da adaptação. Aplicar uma fração do vetor (por exemplo, um fator de escala de 0.5) pode produzir um modelo equilibrado que funciona bem em ambos os domínios.
Link to this sectionTrabalhando com Vetores de Tarefa no PyTorch#
Criar e aplicar um vetor de tarefa requer acessar e manipular o dicionário de estados do PyTorch. O exemplo a seguir demonstra como extrair um vetor de tarefa de um modelo YOLO26 ajustado e aplicá-lo de volta ao modelo base com um fator de escala específico.
from ultralytics import YOLO
# Load the state dictionaries for the base and fine-tuned models
base_weights = YOLO("yolo26n.pt").model.state_dict()
tuned_weights = YOLO("yolo26n-custom.pt").model.state_dict()
# Calculate the task vector (tuned weights minus base weights)
task_vector = {k: tuned_weights[k] - base_weights[k] for k in base_weights.keys()}
# Apply the task vector to the base model using a 0.5 scaling factor
for k in base_weights.keys():
base_weights[k] += 0.5 * task_vector[k]Link to this sectionO Futuro da Manipulação de Pesos#
À medida que arquiteturas como grandes modelos de linguagem e enormes transformers de visão crescem na contagem de parâmetros, retreiná-los para cada ajuste menor torna-se economicamente inviável. Vetores de tarefa fornecem uma alternativa matematicamente elegante para a otimização de modelos pós-treinamento. Ao compartilhar vetores de tarefa leves em vez de modelos inteiros de múltiplos gigabytes, a comunidade de IA pode acelerar a colaboração de código aberto em IA. Uma vez que seus vetores de tarefa personalizados estejam refinados, utilizar a Ultralytics Platform simplifica os processos subsequentes de implantação de modelo e monitoramento, garantindo que seus pesos otimizados se traduzam diretamente em endpoints prontos para produção.






