手動更新權重
現在你已經知道如何存取權重與偏差,接下來要手動執行 PyTorch 最佳化器會做的工作。雖然 PyTorch 會自動處理這些步驟,但手動練習能幫你培養模型如何學習與調整的直覺。這種理解在除錯或微調神經網路時很有幫助。
我們已建立一個三層的神經網路,並將它存成 model 變數。這個網路已經做過一次 forward pass,且損失與其導數都已計算完成。已選定一個預設的學習率 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 = ____