meta-pytorch/torchrec
Pytorch domain library for recommendation systems
解決的問題
TorchRec 解決了大規模推薦系統(RecSys)訓練與部署中的挑戰。這些模型通常使用高基數的類別型稀疏特徵,需要龐大的嵌入表格,這些表格往往無法放入單一 GPU,因此需要在多個裝置與節點之間高效分散。
工作原理
它提供了一組基於 PyTorch 的稀疏性與平行處理原語。該庫包含:
- 分片策略:使用多種方法(例如表級、行級、列級)分割嵌入表格的工具,以在 GPU 之間分布模型。
- 自動規劃:生成最佳化分片計畫以最大化效能的規劃器。
- 流水線訓練:一種將資料載入、裝置傳輸與計算重疊以減少瓶頸的系統。
- 優化內核:由 FBGEMM 驅動的高效能 RecSys 內核。
- 量化:支援降低精度以加速訓練與推論,並針對 C++ 推論進行最佳化。
適用對象
專為需要擴展至多個 GPU 與生產環境的前沿個人化與推薦模型的研究人員與工程師設計。
主要亮點
- 支援 Meta 的生產級 RecSys 模型。
- 支援混合資料平行與模型平行。
- 內建 RecSys 資料集,如 Criteo 點擊日誌與 MovieLens。
- 提供端對端訓練範例,例如 DLRM 事件預測模型。
相關
- 專案
- 專案
- 專案
- 專案
- 專案