在實務上,隨機梯度下降以隨機小批量處理訓練資料。每個批量給出真實梯度的估計——更大的批量給出更好的估計(較少雜訊),但每步需要更多記憶體和算力。典型的批量大小從 32(小模型、單 GPU)到數百萬 token(跨數千 GPU 的 LLM 預訓練)。
LLM 預訓練使用巨大的有效批量大小(每次更新數百萬 token),分布在多個 GPU 上。在這種規模下,學習率必須仔細調整——線性縮放規則(批量大小加倍,學習率加倍)在一定程度內有效,然後會失效。梯度累積讓你在較小的硬體上模擬大批量,透過在多次前向傳遞中累積梯度後再更新。
現代 LLM 預訓練通常在完整資料集上運行不到一個輪次——資料量如此之大,以至於模型從未看完所有資料。這是相較傳統機器學習(通常 10-100 個輪次)的一個轉變。研究顯示,重複資料(多個輪次)實際上可能因記憶效應而損害 LLM 效能,儘管這取決於資料品質。微調則通常在小得多的資料集上運行 1-5 個輪次。