task arithmetic

Task Arithmetic is a model editing technique that represents task-specific knowledge as "task vectors" (the difference between fine-tuned and pre-trained weights) — these vectors can be added, negated, or combined to create models with new task capabilities.

How Does Task Arithmetic Work?

  • Task Vector: $\tau_A = \theta_A - \theta_0$ (difference between fine-tuned $\theta_A$ and pre-trained $\theta_0$).
  • Addition: $\theta_{A+B} = \theta_0 + \tau_A + \tau_B$ (combine capabilities of tasks A and B).
  • Negation: $\theta_{-A} = \theta_0 - \tau_A$ (remove task A capabilities, e.g., forget toxic behavior).
  • Scaling: $\theta_0 + \lambda \tau_A$ (control the strength of task A).
  • Paper: Ilharco et al. (2023).

Why It Matters

  • Model Editing: Add, remove, or modify model capabilities without retraining.
  • Multi-Task: Combine task-specific fine-tunes into a single multi-task model.
  • Safety: Negate toxic task vectors to reduce harmful model behaviors.

Task Arithmetic is algebra for neural network capabilities — adding and subtracting task knowledge using simple vector operations in weight space.

Go deeper with CFSGPT

Get AI-powered deep-dives, save terms, and run advanced simulations — free account.

Create Free Account