EleutherAI/sparsify
Sparsify transformers with SAEs and transcoders
解決的問題
提供一個輕量級程式庫,用於在 HuggingFace 語言模型的激活上訓練與載入 k-稀疏自編碼器(SAE)與轉碼器。透過即時計算激活而非將其快取至磁碟,此程式庫設計可擴展至極大型模型與資料集,消除儲存開銷。
工作原理
該程式庫使用 TopK 激活函數直接在激活中強制稀疏性,作者認為這相比 L1 懲罰方法是一種帕累托改進。使用者可在模型的殘差串流或自訂鈎子點(使用 Unix 模式比對)上訓練 SAE,涵蓋模型的不同子模組。支援透過 PyTorch 的 torchrun 進行分散式訓練,並可選擇將模組分散至多個 GPU 以節省記憶體。
適用對象
需要在大型語言模型上訓練 SAE 但不受儲存限制的研究人員與開發者。
主要亮點
- 即時激活計算:減少大型資料集的儲存開銷。
- TopK 激活函數:直接強制稀疏性水平。
- 靈活的鈎子點:支援使用 Unix 模式比對來定位特定模型層或模組。
- 分散式訓練:包含跨 GPU 高效分配模組的記憶體效率功能。
- 預訓練 SAE:可直接從 HuggingFace Hub 載入預訓練 SAE。
相關
- 專案
- Dispatch
- 專案
- 專案
- Dispatch