f-dangel/backpack
BackPACK - a backpropagation package built on top of PyTorch which efficiently computes quantities other than the gradient.
解決的問題
BackPACK 簡化了從神經網路訓練過程中提取額外資訊的流程。雖然計算梯度是標準作法,但研究人員經常需要其他指標——例如來自小批量的個別樣本梯度或梯度變異——這些在標準 PyTorch 中實現起來非常困難,且會帶來顯著的額外開銷或需要大量手動工作。
工作原理
作為 PyTorch 的擴充模組,BackPACK 修改了訓練過程的反向傳播。它重用已反向傳播的資訊,高效地計算超出標準梯度的量,例如二階資訊(對角線與 Kronecker 近似)以及二階矩。
適用對象
需要深入理解其 PyTorch 模型梯度流動與訓練動態的機器學習研究人員與開發者,以實現進階最佳化或分析工具。
主要亮點
- 高效計算:重用現有反向傳播資料,最大限度減少開銷。
- 擴展指標:提供小批量中每個樣本的獨立梯度。
- 詳細分析:計算梯度變異與二階矩的估計值。
- 二階資訊:支援對角線與 Kronecker 近似,用於近似二階資訊。
相關
- 專案
- 專案
- 專案
- 專案
- 專案