HugeCTR – NVIDIA 技術博客
http://www.open-lab.net/zh-cn/blog
閱讀開發者創建的最新技術信息、頭條新聞 和內容。
Tue, 05 Nov 2024 02:23:10 +0000
zh-CN
hourly
1
196178272 -
RecSys ’24: 使用 EMBark 進行大規模推薦系統訓練 Embedding 加速
http://www.open-lab.net/zh-cn/blog/recsys24-embark-embedding-acceleration/
Mon, 04 Nov 2024 06:42:52 +0000
http://www.open-lab.net/zh-cn/blog/?p=11801
Continued]]>
推薦系統是互聯網行業的核心系統,如何高效訓練推薦系統是各公司關注的核心問題。目前,推薦系統基本上都是基于深度學習的大規模 ID 類模型,模型包含數十億甚至數百億級別的 ID 特征,典型結構如圖 1 所示。 圖1. 典型 DLRM 模型結構圖 近年來,以 NVIDIA Merlin HugeCTR 和 TorchRec 為代表的 GPU 解決方案,通過將大規模 ID 類特征的 embedding 存放在 GPU 上,并對 embedding 進行模型并行處理,將其分片到不同 GPU 上,利用 GPU 內存帶寬優勢,大幅加速了深度推薦系統模型的訓練,相較于 CPU 方案有顯著提升。 同時,隨著訓練集群 GPU 使用數量增加(從 8 個 GPU 增加到 128 個 GPU),我們也發現,embedding 部分通信開銷占整個訓練開銷比例越來越大。
Source
]]>
11801
-
借助最新 NVIDIA Merlin TensorFlow 插件實現大規模 Embedding 擴展
http://www.open-lab.net/zh-cn/blog/merlin-tensorflow-plugin-embedding-extension/
Wed, 24 Jul 2024 04:33:58 +0000
http://www.open-lab.net/zh-cn/blog/?p=10688
Continued]]>
通過封裝 NVIDIA Merlin HugeCTR,Sparse Operation Kit(以下簡稱 SOK)使得 TensorFlow用戶可以借助 HugeCTR 的一些相關特性和優化加速 GPU 上的分布式 Embedding訓練。 在以往文章中(Merlin HugeCTR Sparse Operation Kit 系列之一 – NVIDIA 技術博客, Merlin HugeCTR Sparse Operation Kit 系列之二 – NVIDIA 技術博客),我們對 HugeCTR SOK 的基本功能、性能、用法和原理做了詳細的介紹。近期 SOK 又發布了多個版本迭代,這篇博客對最新 v2.0 版本中的新特性 (尤其是動態Embedding 和在線訓練增量導出),用法進行了歸納總結和介紹,并在最后介紹了 SOK 在手機行業的應用案例。 圖 1.
Source
]]>
10688
-
離線到在線: NVIDIA Merlin 實時推薦系統的功能存儲
http://www.open-lab.net/zh-cn/blog/offline-to-online-feature-storage-for-real-time-recommendation-systems-with-nvidia-merlin/
Wed, 01 Mar 2023 02:40:12 +0000
http://www.open-lab.net/zh-cn/blog/?p=6327
Continued]]>
由于 深度學習 的進步和矢量嵌入的使用,推薦模型近年來進展迅速。這些模型日益復雜,需要強大的系統來支持它們,在生產中部署和維護這些模型可能具有挑戰性。 在論文 Monolith: Real Time Recommendation System With Collisionless Embedding Table 中,字節跳動詳細介紹了他們如何構建一個推薦系統,以支持在線培訓、滾動嵌入更新、容錯等。 這篇文章詳細介紹了離線、在線和在線大型推薦系統架構。我們專注于部署,使用構建塊框架 NVIDIA Merlin 和實時數據層 Redis 構建端到端推薦系統的示例。最后,我們提供了云部署說明和管理的 Redis 選項,用于生產就緒和簡化架構。 下載 RedisVentures/Redis-Recsys GitHub 存儲庫中的代碼,并查看相關資產以遵循每個示例。
Source
]]>
6327
-
HugeCTR v4.0 & v4.1 發布說明
http://www.open-lab.net/zh-cn/blog/hugectr-v4-0-and-v4-1-release/
Tue, 25 Oct 2022 04:22:11 +0000
http://www.open-lab.net/zh-cn/blog/?p=5484
Continued]]>
Merlin HugeCTR(以下簡稱 HugeCTR)是 GPU 加速的推薦框架,旨在在多個 GPU 和節點之間分配訓練并估計點擊率(Click-through rate)。 圖2:HugeCTR I/O 框架 以幫助用戶更好地控制重疊行為。有關詳細信息,請參閱 API 文檔 https://nvidia-merlin.github.io/HugeCTR/master/api/python_interface.html#createsolver-method 以下是目前 HugeCTR 存在的已知問題,我們將在之后的版本中盡快修復:
Source
]]>
5484
-
使用 Merlin 分層參數服務器擴展推薦系統推理
http://www.open-lab.net/zh-cn/blog/scaling-recommendation-system-inference-with-merlin-hierarchical-parameter-server/
Wed, 31 Aug 2022 03:08:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=5056
Continued]]>
如今,推薦系統被廣泛用于個性化用戶體驗,并在電子商務、社交媒體和新聞源等各種環境中提高客戶參與度。因此,以低延遲和高精度服務用戶請求對于維持用戶參與至關重要。 這包括在使用最新更新無縫刷新模型的同時執行高速查找和計算,這對于模型大小超過 GPU 內存的大規模推薦者來說尤其具有挑戰性。 NVIDIA Merlin HugeCTR ,一個開源框架,旨在優化 NVIDIA GPU 上的大規模推薦,最近發布 分層參數服務器( HPS )體系結構 以專門解決工業級推理系統的需求。實驗表明,該方法能夠在流行的基準數據集上以低延遲進行可拓展部署。 大型嵌入表 :典型深度推薦模型的輸入可以是數字(例如用戶年齡或商品價格)或分類特征(例如用戶 ID 或商品 ID )。與數字特征不同,分類特征需要轉換為數字向量,以輸入多層感知器( MLP )層進行密集計算。
Source
]]>
5056
-
Merlin HugeCTR Sparse Operation Kit 系列之二
http://www.open-lab.net/zh-cn/blog/merlin-hugectr-sparse-operation-kit-series-2/
Thu, 23 Jun 2022 04:10:30 +0000
http://www.open-lab.net/zh-cn/blog/?p=4373
Continued]]>
摘要 在上期文章中,我們對 HugeCTR Sparse Operation Kit (以下簡稱SOK) 的基本功能,性能,以及 API 用法做了初步的介紹,相信大家對如何使用 SOK 已經有了基本的了解。在這期文章中,我們將從在 TensorFlow 上使用 SOK 時常見的“數據并行-模型并行-數據并行”流程入手,帶大家詳細了解 SOK 的原理。 1. Input Dispatcher Input Dispatcher 的職責是將數據以并行的形式的輸入,分配到各個 GPU 上。總共分為以下幾個步驟: 總而言之,經過上面 4 個步驟,我們將數據并行地輸入,按照其求余 GPU 數量的結果,分配到了不同對應的 GPU 上,
Source
]]>
4373
-
HugeCTR v3.6 & v3.7 發布說明
http://www.open-lab.net/zh-cn/blog/hugectr-v3-6-and-v3-7-release/
Thu, 23 Jun 2022 03:59:24 +0000
http://www.open-lab.net/zh-cn/blog/?p=4371
Continued]]>
Merlin HugeCTR(以下簡稱 HugeCTR)是 GPU 加速的推薦程序框架,旨在在多個 GPU 和節點之間分配訓練并估計點擊率(Click-through rate)。 在之前的版本中,Concat 層只能處理 2D 輸入張量。現在輸入可以是 3D 并且可以沿軸 1 和軸 2 連接。 在以前的版本中,HugeCTR 假設每個稠密特征只有一個值,并且數據類型必須是 float32,也就是是一種標量類型。而現在用戶可以將 float32 或者[float32]用于稠密特征,這意味著每個稠密特征可以有多個值。 Merlin 容器中的 HDFS 支持現在是一個可選依賴項。有關詳細信息,請參閱核心功能文檔中的 HDFS 支持部分。(https://nvidia-merlin.github.io/HugeCTR/v3.
Source
]]>
4371
-
HugeCTR v3.5 發布說明
http://www.open-lab.net/zh-cn/blog/merlin-hugectr-v3-5-release/
Tue, 12 Apr 2022 07:43:34 +0000
http://www.open-lab.net/zh-cn/blog/?p=3622
Continued]]>
Merlin HugeCTR(以下簡稱 HugeCTR)是 GPU 加速的推薦程序框架,旨在在多個 GPU 和節點之間分配訓練并估計點擊率(Click-through rate)。 此次 v3.5 更新涉及的模塊主要為: 相關介紹: 我們封裝了 HPS 的相關接口并將其作為獨立庫提供。此外,我們提供 HPS Python API 并通過 Jupyter nontebook 演示其用法。更多信息請參考分層參數服務器文檔和 HPS 演示。 HPS 后端是一個用于嵌入向量在大規模嵌入表上查找的框架,旨在通過將嵌入表和嵌入緩存與深度推薦模型的端到端推理管道。更多信息請參考分層參數服務器。 用戶可以通過 `pip install merlin-sok` 安裝 SOK。
Source
]]>
3622
-
Merlin HugeCTR Sparse Operation Kit 系列之一
http://www.open-lab.net/zh-cn/blog/merlin-hugectr-sparse-operation-kit-part-1/
Thu, 31 Mar 2022 11:06:34 +0000
http://www.open-lab.net/zh-cn/blog/?p=3505
Continued]]>
摘要 1. Introduction HugeCTR 能夠高效地利用 GPU 來進行推薦系統的訓練,為了使它還能直接被其他 DL 用戶,比如 TensorFlow 所直接使用,我們開發了 SparseOperationKit (SOK),來將 HugeCTR 中的高級特性封裝為 TensorFlow 可直接調用的形式,從而幫助用戶在 TensorFlow 中直接使用 HugeCTR 中的高級特性來加速他們的推薦系統。 圖 1. SOK embedding 工作流程 SOK 以數據并行的方式接收輸入數據,然后在 SOK 內部做黑盒式地模型轉換,最后將計算結果以數據并行的方式傳遞給初始 GPU。這種方式可以盡可能少地修改用戶已有的代碼,以更方便、快捷地在多個 GPU 上進行擴展。 SOK 不僅僅是加速了 TensorFlow 中的算子,
Source
]]>
3505
-
Merlin HugeCTR 分級參數服務器系列之二
http://www.open-lab.net/zh-cn/blog/merlin-hugectr-hierarchical-parameter-server-part2/
Tue, 29 Mar 2022 03:22:16 +0000
http://www.open-lab.net/zh-cn/blog/?p=3479
Continued]]>
在上一期的 HugeCTR 分級參數服務器簡介中,我們介紹了傳統參數服務器的結構以及 HugeCTR 分級推理參數服務器是如何在其基礎上進行設計和改進的,我們還簡單介紹了我們的三級存儲結構以及相關配置使用。在這一期中,我們將詳細介紹 HPS 數據后端,其中包括 Volatile 數據存儲層,Persistent 數據存儲層以及流式在線模型更新的設計。 HPS 數據后端作為 GPU embedding 緩存架構的基石,同時也是 GPU embedding 緩存在 CPU 內存以及本地磁盤的進一步物理擴展。HPS 數據后端通過綁定不同物理層級的存儲從而提供了大型模型 embedding table 的緩存,查詢,更新以及容錯等服務,目的即為了保證在推理服務中 GPU embedding 緩存的高命中率,從而提高推理服務的吞吐大幅度降低端到端的延遲。
Source
]]>
3479
-
Merlin HugeCTR v3.4.1 發布說明
http://www.open-lab.net/zh-cn/blog/merlin-hugectr-v3-4-1-release/
Wed, 09 Mar 2022 05:05:57 +0000
http://www.open-lab.net/zh-cn/blog/?p=3164
Continued]]>
Merlin HugeCTR(以下簡稱 HugeCTR)是 GPU 加速的推薦程序框架,旨在在多個 GPU 和節點之間分配訓練并估計點擊率(Click-through rate)。 此次v3.4更新涉及的模塊主要為: 相關介紹: “Softmax” 層現在已支持 FP16,并且支持混合精度以進行多標簽推理。有關詳細信息,請參閱此頁面。 我們通過 Python 接口支持多 GPU 離線推理,它可以利用 Hierarchical Parameter Server 并在多個設備上實現并發執行。更多信息請參考推理 API 和多 GPU 離線推理筆記本。 我們重構了代碼庫并將分層參數服務器構建為一個獨立的庫,以后會進一步封裝。 添加了有關 Parquet data 中…
Source
]]>
3164
-
HugeCTR v3.4 發布說明
http://www.open-lab.net/zh-cn/blog/merlin-hugectr-v3-4-release/
Thu, 27 Jan 2022 08:54:22 +0000
http://www.open-lab.net/zh-cn/blog/?p=2927
Continued]]>
Merlin HugeCTR(以下簡稱 HugeCTR)是 GPU 加速的推薦程序框架,旨在在多個 GPU 和節點之間分配訓練并估計點擊率(Click-through rate)。 此次 v3.4 更新涉及的模塊主要為: 相關介紹: Merlin v22.02 開始,我們鼓勵您按照貢獻者 指南 中的說明在 Merlin Unified Container(發布容器)下開發 HugeCTR,以保持開發環境一致。 HugeCTR Backend 現已支持通過 Load API 在線更新模型版本(包括密集部分的無縫更新以及同一模型對應的嵌入推理緩存),并且 Load API 仍然完全兼容新模型的在線部署。 現在可以通過 TF 的模式啟用混合精度訓練,以提高訓練性能并減少內存使用。
Source
]]>
2927
-
Merlin HugeCTR 分級參數服務器簡介
http://www.open-lab.net/zh-cn/blog/merlin-hugectr-hierarchical-parameter-server-intro/
Thu, 27 Jan 2022 08:41:37 +0000
http://www.open-lab.net/zh-cn/blog/?p=2909
Continued]]>
參數服務器是推薦系統的重要組成部分,但是目前的訓練端參數服務器由于高延遲和同步問題無法有效解決推理部署中模型過大的瓶頸。Merlin HugeCTR(以下簡稱 HugeCTR)團隊針對傳統參數服務器的問題重新設計了一種分級推理端參數服務器,將 GPU 內存作為一級緩存,Redis 集群作為二級緩存,RocksDB 作為持久化層,極大提高了推理效率。HugeCTR 團隊將分多期為大家介紹此分級參數服務器的具體設計和細節,本期為系列的第一期。 傳統參數服務器維護和同步模型參數僅用于訓練,worker 節點執行前向和后向計算。具體來說,在訓練中:worker 節點從 server 節點中拉取其相應的參數,進行前向計算,通過反向傳播計算梯度,最后將這些梯度推送到服務器。在推理中,它只執行前兩個步驟。如果部署在高性能設備集群中,worker 節點的計算速度非常快,
Source
]]>
2909
-
使用 HugeCTR TensorFlow 嵌入插件加速嵌入
http://www.open-lab.net/zh-cn/blog/accelerating-embedding-with-the-hugectr-tensorflow-embedding-plugin/
Fri, 24 Sep 2021 07:47:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=1812
Continued]]>
推薦系統是互聯網的經濟引擎。很難想象任何其他類型的應用程序會對我們的日常數字生活產生更直接的影響:數以萬億計的項目被推薦給數十億人。推薦系統會在大量選項中過濾產品和服務,從而緩解大多數用戶面臨的選擇悖論。 隨著數據量的增加,深度學習( DL )推薦系統開始顯示與傳統的基于機器學習的方法相比的優勢,例如梯度增強樹。為了給出一個具體的數據點, NVIDIA RAPIDS 。 AI 團隊與 DL 贏得了三場推薦比賽最近: 甚至在一年前 NVIDIA 數據科學家詢問為什么深度學習模型還沒有在推薦系統競賽中持續獲勝?時,這種情況也沒有持續發生。 嵌入在現代基于 DL 的推薦體系結構中起著關鍵作用,為數十億實體(用戶、產品及其特征)編碼單個信息。隨著數據量的增加,嵌入表的大小也隨之增加,現在這些表跨越多個 GB 到 TB 。在訓練這種類型的 DL 系統時存在著獨特的挑戰,
Source
]]>
1812
人人超碰97caoporen国产