龍蜥社群成立DeepRec SIG,開源大規模稀疏模型深度學習引擎

OpenAnolis小助手發表於2022-04-12

龍蜥社群(OpenAnolis)(以下簡稱“龍蜥社群”)正式成立 DeepRec SIG,將攜手龍蜥社群開發者一道,致力於維護 Anolis OS 上的 DeepRec 元件,並將稀疏模型深度學習引擎引入龍蜥社群。

稀疏模型 是指在模型結構中離散特徵計算邏輯佔比較高的一類深度學習模型的統稱,其廣泛應用於搜尋、廣告、推薦等高價值業務中。當下主流開源深度學習框架,對稀疏模型的支援不足。國內外公司在稀疏場景使用的方案在系統性和全面性上存在著問題,技術複用上的難度導致無法大面積推廣,制約了不同場景下稀疏模型的探索和發展。

DeepRec SIG  為負責龍蜥作業系統上  DeepRec  相關開源軟體包的維護,構建搜尋、推薦、廣告場景模型的訓練及預測生態的利器, 現做如下介紹:

DeepRec 介紹

DeepRec(PAI-TF)是阿里巴巴集團統一的大規模稀疏模型訓練/預測引擎,廣泛應用於淘寶、天貓、阿里媽媽、高德、淘特、AliExpress、Lazada 等,支援了淘寶搜尋、推薦、廣告等核心業務, 支撐著千億特徵、萬億樣本的超大規模稀疏訓練。
DeepRec 在分散式、圖最佳化、運算元、Runtime 等方面對稀疏模型進行了深度效能最佳化,同時提供了稀疏場景下特有的 Embedding 相關功能。

DeepRec 的優勢

DeepRec 是基於 TensorFlow1.15、Intel-TF、NV-TF 構建的稀疏模型訓練/預測引擎,針對稀疏模型場景進行了定製深度最佳化,主要包含以下三類功能最佳化:

1、模型效果

DeepRec提供了豐富的稀疏功能支援,提高模型效果的同時降低稀疏模型的大小,並且最佳化超大規模 下Optimizer 的效果。
DeepRec 提供了動態彈性特徵、動態彈性維度、自適應彈性特徵、多 Hash Embedding、Embedding多級混合儲存、AdamAsyncOptimizer 等功能,在記憶體佔用、效能、模型效果等方面為業務帶來實際的幫助。
2、訓練效能
DeepRec 針對稀疏模型場景在分散式、圖最佳化、運算元、Runtime 等方面進行了深度效能最佳化。其中:

  • DeepRec 對不同的分散式策略進行了深度的最佳化,包括非同步訓練、同步訓練、半同步訓練等

  • DeepRec提供了豐富的針對稀疏模型訓練的圖最佳化功能,包括自動流水線SmartStage、結構化特徵、自動圖 Fusion 等等

  • DeepRec 中最佳化了稀疏模型中數十個常見運算元,並且提供了包括Embedding、Attention等通用子圖的 Fusion 運算元

  • DeepRec 中 CPUAllocator 和 GPUAllocator 能夠大大降低記憶體/視訊記憶體的使用量並顯著加速 E2E 的訓練效能。線上程排程、執行引擎方面針對不同的場景提供了不同的排程引擎策略

3、部署及Serving
針對搜尋、推薦、廣告場景中特有的部署和 Serving 的特點,DeepRec 支援 Online Deep Learning 的完整鏈路,包括增量模型的匯出、載入,Serving 的模型自動發現等。DeepRec 中支援 Embedding 多級混合儲存,使得單機進行超大模型預測時避免分散式 Serving 帶來的 latency 增大問題,提高大模型的預測效能的同時降低成本。
SIG 規劃

DeepRec 計劃每隔 1-2 個月進行版本更新,後續釋出的重點功能包括:

Serving: 開源完整的 Online Deep Learning(ODL),並持續最佳化 DeepRec 的 Serving 效能。

Embedding: 最佳化各個 Embedding 功能的可用性,提供 Embedding 的各種除錯工具,並持續最佳化 Embedding 多級混合儲存的效能。

Runtime: 提供統一的排程框架,最佳化多場景下任務排程的效能。持續最佳化記憶體、視訊記憶體、持久化記憶體分配器效能,並針對不同分配場景提供不同的記憶體分配器。

分散式: 持續最佳化非同步訓練、同步訓練、半同步訓練的效能。

硬體及運算元加速: 結合編譯最佳化、手動最佳化等手段最佳化計算效能;針對新的硬體進行持續最佳化,協同硬體團隊推動新型硬體在 DeepRec 落地。

此外 DeepRec 正在和核心團隊合作,針對稀疏模型的訓練/預測任務的特點,在核心排程、記憶體管理上進行針對性的最佳化。

龍蜥社群希望透過這個開放平臺,和外部開發者開展廣泛合作,進一步推動稀疏模型訓練/預測框架的發展,為不同業務場景中的搜推廣模型訓練和預測帶來業務效果和效能提升。

今天 DeepRec 的開源只是我們邁出的一小步。我們非常期待得到您的反饋。最後,如果你對 DeepRec 感興趣,歡迎你加入我們一起共建 ,為我們的框架貢獻一點你的程式碼和意見,這將是我們莫大的榮幸。

歡迎更多開發者加入 DeepRec SIG!

—— 完 ——

加入龍蜥社群

加入微信群:新增社群助理-龍蜥社群小龍(微信:openanolis_assis),備註【龍蜥】與你同在;加入釘釘群:掃描下方釘釘群二維碼。歡迎開發者/使用者加入龍蜥社群(OpenAnolis)交流,共同推進龍蜥社群的發展,一起打造一個活躍的、健康的開源作業系統生態!

關於龍蜥社群

龍蜥社群OpenAnolis)是由 企事業單位、高等院校、科研單位、非營利性組織、個人等在自願、平等、開源、協作的基礎上組成的非盈利性開源社群。龍蜥社群成立於 2020 年 9 月,旨在構建一個開源、中立、開放的Linux 上游發行版社群及創新平臺。

龍蜥社群成立的短期目標是開發龍蜥作業系統(Anolis OS)作為 CentOS 停服後的應對方案,構建一個相容國際 Linux 主流廠商的社群發行版。中長期目標是探索打造一個面向未來的作業系統,建立統一的開源作業系統生態,孵化創新開源專案,繁榮開源生態。

目前, 龍蜥OS 8.4 已釋出,支援 X86_64 、Arm64、LoongArch 架構,完善適配飛騰、海光、兆芯、鯤鵬、龍芯等晶片,並提供全棧國密支援。

歡迎加入我們,一起打造面向未來的開源作業系統!



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70004278/viewspace-2886631/,如需轉載,請註明出處,否則將追究法律責任。

相關文章