Сохраняйте веса и buffers модели, состояние optimizer, scheduler, AMP scaler, шаг/эпоху и генераторы случайных чисел. Для точного продолжения нужны также состояние выборки данных и версии окружения.
Что нужно сохранять в checkpoint, чтобы после падения через 47 часов продолжить обучение без потери состояния?
Сохраняйте веса и buffers модели, состояние optimizer, scheduler, AMP scaler, шаг/эпоху и генераторы случайных чисел. Для точного продолжения нужны также состояние выборки данных и версии окружения.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Сохраняйте веса и buffers модели, состояние optimizer, scheduler, AMP scaler, шаг/эпоху и генераторы случайных чисел. Для точного продолжения нужны также состояние выборки данных и версии окружения.
Checkpoint записывайте атомарно и проверяйте восстановление. В distributed обучении учитывайте состояние всех ranks и sharded-компонентов. Потеря прогресса ограничена последним сохранением, а не нулём автоматически; побитовая воспроизводимость требует детерминизма и корректного восстановления dataloader.
Источник: docs.pytorch.org.