Сократите расходы на обучение ИИ на 87% с FOP от Оксфорда — 7.5× быстрее на ImageNet

Проблема стоимости GPU

Обучение современных моделей ИИ требует огромных объёмов GPU-вычислений и серьёзно бьёт по бюджету. Тренировка крупных языковых моделей и визуальных трансформеров может занимать тысячи GPU-часов, что ограничивает эксперименты и замедляет разработку у стартапов, лабораторий и компаний.

Почему градиенты — не просто шум

Традиционные оптимизаторы (SGD, AdamW) используют средний градиент по мини-батчу для обновления параметров. Разница между градиентами отдельных примеров обычно считают стохастическим шумом и усредняют. Но эта вариативность содержит полезную информацию: внутрибатчевые отличия градиентов отражают локальную геометрию функции потерь — кривизну, резкие склоны и каньоны, которые влияют на безопасную глубину шага.

Что делает Fisher-Orthogonal Projection (FOP)

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

Такой подход сохраняет информацию, теряемую при простом усреднении, и обеспечивает более быструю и стабильную сходимость, особенно при очень больших размерах батчей.

Как FOP работает в терминах оптимизации

FOP опирается на идеи естественного градиента: к базовому естественному градиентному шагу метод применяет Fisher-ортогональную коррекцию. Сохранение внутрибатчевой дисперсии позволяет восстановить сигналы о локальной кривизне поверхности потерь и использовать их для более безопасного движения по ландшафту ошибки.

Результаты на практике

Сообщённые результаты демонстрируют значительные преимущества:

Память и масштабируемость

FOP может увеличивать пик использования GPU-памяти в небольших задачах, но при распределённой тренировке по многим устройствам его footprint сопоставим с KFAC. Важнее то, что экономия времени обычно перевешивает дополнительные затраты памяти. Ключевой момент: FOP сохраняет сходимость при росте батчей до десятков тысяч и демонстрирует почти линейное сокращение времени обучения с увеличением числа GPU.

Практическое применение и значение

Для практиков FOP — это plug-and-play: открыт код для PyTorch, который можно подключить с минимальным изменением и без обширного дополнительного тюнинга. Для бизнеса экономия 80–87% затрат на обучение меняет экономику разработки моделей: можно быстрее проводить эксперименты, обучать большие модели и расширять R&D.

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

Как это меняет ландшафт оптимизаторов

Раньше большие батчи были проблемой: SGD и AdamW становились нестабильны, а KFAC имел ограничения. FOP переворачивает ситуацию: сохраняя и используя внутрибатчевую вариацию, он открывает путь к стабильному и эффективному обучению при ранее недостижимых размерах батчей. Это концептуальный сдвиг, а не просто небольшая настройка.

Внедрение FOP

Команды, уже использующие KFAC или идеи естественного градиента, найдут переход простым. Реализация предназначена для быстрой интеграции в PyTorch-пайплайны. С учётом преимуществ по скорости и затратам, тестирование FOP на задачах с крупными батчами — практический шаг для ускорения исследований и сокращения расходов.

Основные выводы

Для подробностей смотрите оригинальную статью и репозиторий проекта с кодом, туториалами и ноутбуками.