ENIGMA AI
ENIGMA AI

Какие параметры вы передавали в оптимизатор?

встречается 1× Python middle backend

Как ответить

Обычно я передаю в оптимизатор три группы параметров: скорость обучения, моментум/беты и регуляризацию. Чаще всего использую AdamW с learning rate 1e-4–3e-4, weight decay 0.01–0.1 и betas=(0.9, 0.999). Для некоторых задач беру SGD с моментумом 0.9 и lr=0.01, но там обязательно нужен learning rate scheduler (например, CosineAnnealing или ReduceLROnPlateau). Конкретные значения подбираю по кривым обучения и валидационной loss.

Вот типичный код на PyTorch:

optimizer = torch.optim.AdamW(
    model.parameters(),
    lr=3e-4,
    betas=(0.9, 0.999),
    eps=1e-8,
    weight_decay=0.05
)

Параметры выбираю так:

  • Learning rate — самый важный. Для Adam начинаю с 3e-4, для SGD — с 1e-2. Если loss не падает, уменьшаю в 10 раз.
  • Betas — редко трогаю. Стандартные (0.9, 0.999) работают почти везде. На разреженных последовательностях иногда ставлю первый beta ближе к 0.99.
  • Weight decay — обязательно для больших моделей (BERT, ResNet). Пробегаю по сетке [0.01, 0.05, 0.1] через early stopping.
  • Eps — оставляю 1e-8, только если модель нестабильна, поднимаю до 1e-7.
  • Nesterov — включаю при SGD с моментумом, даёт +1–2% точности на CIFAR.
  • Scheduler — обязателен для долгой сходимости. Часто использую CosineAnnealingWarmRestarts с T_0=5, T_mult=2.

Ещё важный момент — передавать параметры слоёв с разными lr (например, embedding с меньшей lr для fine-tuning). Для этого собираю список параметров с разными 'params' и 'lr' в groups.

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

Ключевые тезисы

  • Чаще всего использую AdamW с lr=3e-4, weight decay=0.05, betas=(0.9, 0.999)
  • Learning rate — основной гиперпараметр; для SGD с моментумом lr=0.01
  • Обязательно добавляю scheduler: CosineAnnealingWarmRestarts или ReduceLROnPlateau
  • Для fine-tuning разбиваю параметры на группы с разными lr
  • Weight decay подбираю перебором по валидационной loss

Что спросят дальше

  • — Как вы выбирали learning rate для Adam? Какие шаги предпринимали, если loss diverged?
  • — Почему вы предпочли AdamW вместо обычного Adam?
  • — Что вы делаете, если модель переобучается при weight decay=0.1?

Готовьтесь к собеседованию с ENIGMA AI

AI-суфлёр подсказывает ответы прямо на собеседовании в реальном времени — незаметно для интервьюера.

Скачать приложение