PyTorch中神經網絡工作流程

個人筆記,不喜勿噴。

一、流程簡述

1、將網絡狀態設置爲訓練模式
2、將訓練數據中的輸入和標籤變量化
3、利用網絡向前計算,包含計算輸出、計算損失值
4、反向傳播調整參數,包含梯度清零、誤差反向傳播、梯度下降更新
5、將網絡狀態設置爲測試模式,繼續2-4步

二、僞代碼

for 迭代次數
    net = net.train()#設置爲訓練模式
    for 樣本批次訓練
        #將訓練數據中的輸入和標籤變量化
        im = Variable(im)  
        label = Variable(label)
         #向前計算
        output = net(im)#計算輸出
        loss = criterion(output, label)#計算損失值
        #反向傳播
        optimizer.zero_grad()  # 梯度清零
        loss.backward()  # 誤差反向傳播
        optimizer.step()  # 梯度下降(更新)

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章