PyTorch筆記--shuffle=True


在機器學習中,我們會將數據集分成很多個批次來訓練。每次拋出一個批次的數據來計算損失函數,再根據損失函數計算參數的梯度。

再根據梯度來更新參數。然后數據加載器會接着拋出下一個批次的數據來計算損失函數,。。。

如下圖所示,起初隨機選擇一個參數的初值theta0。損失函數L1是參數theta0的表達式,根據第一個批次的數據計算L1,並對theta0求導求出梯度g,

根據梯度更新theta0,更新后的參數是theta1。損失函數L2現在是theta1的表達式,根據第二個批次的數據計算L2,並對theta1求導計算出梯度g后

再更新參數。不斷這樣的執行下去。直至所有的批次都被計算完。

 

 所有的批次的數據都遍歷一遍叫做一個epoch。shuffle是洗牌的意思,它就是說在一個epoch之后,對所有的數據隨機打亂,再按照設定好的每個批次

的大小划分批次。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM