Ultralytics YOLO27:
Лицензия YOLO
Назад к глоссарию Ultralytics

Hypernetworks

Гиперсеть — это нейронная сеть, которая по входным данным, например эмбеддингу задачи, выдаёт веса другой сети. Рассматриваются области применения и пример на PyTorch.

Гиперсеть — это нейронная сеть, на выходе которой находятся веса другой сети, называемой целевой или основной сетью. Вместо обучения одного фиксированного набора весов модели целевая сеть получает веса, которые гиперсеть вычисляет по условному входу, например идентификатору задачи, профилю пользователя, текстовому описанию или изображению-примеру. Поэтому одна обученная гиперсеть может за один прямой проход создавать разные специализированные модели для разных входных данных. В статье HyperNetworks, опубликованной Google Brain в 2016 году, Дэвид Ха, Эндрю Дай и Куок Ле использовали небольшие гиперсети для генерации весов глубоких свёрточных и рекуррентных сетей. Сегодня эта идея применяется в непрерывном обучении, персонализации диффузионных моделей и поиске нейронных архитектур.

Принцип работы гиперсетей#

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

Ха и его коллеги различали статические гиперсети, которые один раз генерируют веса каждого слоя по эмбеддингу слоя, и динамические гиперсети, которые пересчитывают веса для каждого входного элемента или временного шага, как это делает HyperLSTM для каждого шага последовательности. Во время выполнения сгенерированные веса представляют собой обычные тензоры, поэтому целевая сеть может иметь любую архитектуру — в том числе слой трансформера, проекции механизма внимания в котором формирует гиперсеть. Основная инженерная проблема — размер выходных данных: для слоя с миллионами весов гиперсети потребуется выдавать миллионы значений на слой. На практике веса генерируют блоками, используя для каждого блока собственный эмбеддинг; либо генерируют только небольшие низкоранговые множители обновления весов или только масштаб и смещение для каждого канала, как в методе покомпонентной линейной модуляции признаков (FiLM).

Пример гиперсети на PyTorch#

В этом примере на PyTorch гиперсеть обучается на наборе задач — синусоидах с разными амплитудами и фазами. Для каждой задачи она генерирует все 97 весов небольшой целевой сети, и обучается только гиперсеть:

import math

import torch
from torch import nn

torch.manual_seed(0)
x = torch.linspace(-math.pi, math.pi, 64)

# Hypernetwork: maps a task (amplitude, phase) to all 97 weights of a 1-32-1 target network
hyper = nn.Sequential(nn.Linear(2, 128), nn.ReLU(), nn.Linear(128, 97))
optimizer = torch.optim.Adam(hyper.parameters(), lr=1e-3)


def target(x, w):
    """Run the target network with weights w produced by the hypernetwork."""
    return torch.relu(x[:, None] * w[:32] + w[32:64]) @ w[64:96] + w[96]


# Train only the hypernetwork, on a new random sine task at every step
for step in range(5000):
    task = torch.rand(2) * torch.tensor([2.0, math.pi])
    loss = ((target(x, hyper(task)) - task[0] * torch.sin(x + task[1])) ** 2).mean()
    optimizer.zero_grad()
    loss.backward()
    optimizer.step()

# Unseen task: one forward pass of the hypernetwork produces the target network's weights
y = 1.5 * torch.sin(x + 1.0)
with torch.no_grad():
    mse = ((target(x, hyper(torch.tensor([1.5, 1.0]))) - y) ** 2).mean()
print(f"Unseen task MSE: {mse:.3f} with generated weights, {(y**2).mean():.3f} predicting zero")

Вывод программы: Unseen task MSE: 0.010 with generated weights, 1.132 predicting zero. Целевая сеть с амплитудой 1.5 и фазой 1.0 никогда не обучалась: её веса были получены одним вызовом гиперсети, которая научилась определять, как нужные веса меняются во всём семействе задач.

Применение#

  • Непрерывное обучение: Гиперсеть с условием по задаче хранит небольшой эмбеддинг для каждой задачи и по запросу заново генерирует её веса. При обучении на новой задаче добавляется штраф, который не позволяет менять выходы гиперсети для эмбеддингов предыдущих задач. Это помогает бороться с катастрофическим забыванием.
  • Персонализация генеративных моделей: HyperDreamBooth предсказывает небольшой набор персонализированных весов для диффузионной модели преобразования текста в изображение по одной фотографии лица, а затем быстро уточняет их. Персонализация модели занимает около 20 секунд — это в 25 раз быстрее DreamBooth, а персонализированные веса в 10 000 раз меньше модели DreamBooth.
  • Поиск нейронных архитектур: Графовые гиперсети считывают граф-кандидат архитектуры и предсказывают её веса, поэтому кандидатов можно ранжировать по точности на проверочных данных с предсказанными весами, не обучая их по одному.
  • Классификация без примеров: Авторы CLIP описывают текстовый энкодер модели как гиперсеть, которая генерирует веса линейного классификатора по названиям классов. Благодаря этому CLIP может классифицировать изображения по категориям, которых не было среди обучающих меток.

Детекторы с открытым словарём используют ту же идею для обнаружения объектов. Ultralytics YOLOE-26, созданная на основе YOLO26, один раз кодирует каждое имя класса, переданное в set_classes(), с помощью MobileCLIP2 — компактного текстового энкодера в стиле CLIP. Полученные эмбеддинги используются как веса для оценки каждой предполагаемой области относительно каждого класса. При экспорте эти эмбеддинги сворачиваются в обычную свёртку 1x1 в голове обнаружения.

  • Дообучение: Адаптирует один фиксированный набор весов к новой задаче с помощью градиентных шагов на её данных. Обученная гиперсеть генерирует веса для новой задачи за один прямой проход, получив только условный вход задачи.
  • Метаобучение: Более общая цель — научиться быстро адаптироваться к новым задачам. Гиперсети позволяют реализовать этот подход, напрямую преобразуя описание задачи или несколько примеров в веса.
  • Смесь экспертов (MoE): Направляет каждый вход к нескольким из множества фиксированных подсетей-экспертов. Вместо выбора из уже сохранённых вариантов гиперсеть вычисляет новые веса для каждого входа или задачи.
  • Сети с быстрыми весами: Сети, которые записывают кратковременные веса другой сети по мере обработки последовательности. Эта идея появилась в начале 1990-х годов. Линеаризованный механизм self-attention в трансформерах формально эквивалентен такой сети с быстрыми весами.

Explore solutions

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

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

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее
Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

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

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее
Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

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

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

Давай вместе строить будущее ИИ!

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