Зачем в функции predict_tags() мы делаем вызов torch.no_grad()?
- для автоматического подбора оптимального размера батча
- для деактивации autograd (без вычисления градиентов будет использоваться меньше памяти и скорость работы увеличится)
- для перевода модели в режим eval (например, чтобы Dropout или BatchNorm слои работали в режиме eval)
- для того, чтобы можно было делать backprop не только во время обучения сети, но и на этапе предсказания тегов
К сожалению, у нас пока нет статистики ответов на данный вопрос,
но мы работаем над этим.