Activation checkpointing — это техника оптимизации памяти при обучении глубоких нейросетей. Вместо сохранения всех промежуточных активаций для обратного прохода, сохраняются только некоторые контрольные точки (checkpoints). Остальные активации восстанавливаются повторным прямым проходом при необходимости.
Что такое activation checkpointing и какой trade-off?
Activation checkpointing — это техника оптимизации памяти при обучении глубоких нейросетей.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Activation checkpointing — это техника оптимизации памяти при обучении глубоких нейросетей. Вместо сохранения всех промежуточных активаций для обратного прохода, сохраняются только некоторые контрольные точки (checkpoints). Остальные активации восстанавливаются повторным прямым проходом при необходимости.
Trade-off:
- Плюс: Значительное снижение потребления памяти, что позволяет обучать более крупные модели или использовать большие батчи.
- Минус: Увеличение времени обучения из-за дополнительного вычисления активаций при обратном проходе.
Пример: в PyTorch есть torch.utils.checkpoint, который позволяет обернуть часть модели для checkpointing.