Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Арифметика задач

Узнайте, как алгоритм Task Arithmetic использует обновления весов для корректировки поведения модели. Научитесь объединять задачи или удалять признаки в Ultralytics без полного переобучения.

Арифметика задач — это передовой метод машинного обучения, заключающийся в изменении поведения предварительно обученных нейронных сетей путем сложения или вычитания определённых обновлений весов. Вместо того чтобы заново обучать модель с нуля, специалисты могут выделить выученные различия между базовой моделью и доработанной моделью. Эти различия, по сути, представляют собой направленные обновления, которые отражают конкретную способность или поведение. Применяя к этим обновлениям базовые математические операции, такие как сложение и вычитание, разработчики могут динамически редактировать системы глубокого обучения. Эта парадигма приобрела значительную популярность в недавних исследованиях arXiv по арифметике задач, предлагая легкий и вычислительно эффективный метод адаптации крупномасштабных моделей к новым требованиям.

Как работает эта концепция

В основе этой техники лежит вычисление разницы в весах модели между базовой предварительно обученной моделью и версией, прошедшей тонкое настройку на конкретном наборе данных. Эта изолированная разница становится локализованным представлением нового навыка. Путем непосредственного манипулирования словарями PyTorch или использования методологийTensorFlow инженеры могут масштабировать и комбинировать эти разницы в весах. Например, вычитание определенного обновления веса может заставить модель «забыть» выученное поведение — концепция, которая активно изучается в Anthropic по безопасности моделей.

Применение в реальном мире

Арифметика задач открывает доступ к ряду высокоэффективных рабочих процессов в современных конвейерах компьютерного зрения и обработки естественного языка :

Дифференциация смежных понятий

При работе с архивами IEEE Xplore или цифровой библиотекой ACM легко спутать арифметику задач со сродными методологиями:

  • Векторы задач: Это фактические математические тензоры (вычисленные разности весов), используемые в ходе арифметического процесса. Арифметика задач представляет собой общую структуру сложения или вычитания этих векторов.
  • Объединение моделей: это более широкий термин, обозначающий объединение нескольких моделей. Хотя арифметика является одним из способов объединения моделей, объединение может также включать сложные сети маршрутизации или ансамблирование.
  • Переносное обучение: Согласно определению Википедии, перенос знаний предполагает использование знаний, полученных при решении одной задачи, в качестве отправной точки для решения другой, что, как правило, требует дополнительных циклов обучения. Арифметика задач изменяет поведение исключительно посредством прямых вычислений весов без дополнительных циклов обучения.

Реализация арифметических операций

Применение этих стратегий оптимизации моделей на практике требует тщательного управления внутренним состоянием модели. Ниже приведен пример вычисления и применения обновления с помощью PyTorch — метода, который часто обсуждается в последних научных работах по компьютерному зрению.

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

Для команд, управляющих сложными конвейерами аннотирования данных и множеством точно настроенных версий моделей, Ultralytics предоставляет оптимизированную среду для контроля за обучением в облаке и беспроблемным развертыванием, что делает управление итерационным совершенствованием моделей гораздо более эффективным.

Давайте вместе создадим будущее искусственного интеллекта!

Начните свой путь в будущее машинного обучения