Обновление весов вручную
Теперь, когда вы знаете, как получить доступ к весам и смещениям, вы вручную выполните работу, которую обычно берёт на себя оптимизатор PyTorch. Несмотря на то что PyTorch автоматизирует этот процесс, ручная практика помогает лучше понять, как модели обучаются и адаптируются. Это понимание окажется незаменимым при отладке и тонкой настройке нейронных сетей.
Трёхслойная нейронная сеть уже создана и сохранена в переменной model. Сеть использовалась для прямого прохода, а также были вычислены значение функции потерь и её производные. Для масштабирования градиентов при обновлении параметров выбрана стандартная скорость обучения lr.
Это упражнение является частью курса
Введение в глубокое обучение с PyTorch
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
weight0 = model[0].weight
weight1 = model[1].weight
weight2 = model[2].weight
# Access the gradients of the weight of each linear layer
grads0 = ____
grads1 = ____
grads2 = ____