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