龙蜥社区成立DeepRec SIG,开源大规模稀疏模型深度学习引擎

简介: 龙蜥社区正式成立 DeepRec SIG,致力于维护 Anolis OS 上的 DeepRec 组件,并将稀疏模型深度学习引擎引入龙蜥社区。

image.png

龙蜥社区(OpenAnolis)(以下简称“龙蜥社区”)正式成立 DeepRec SIG,将携手龙蜥社区开发者一道,致力于维护 Anolis OS 上的 DeepRec 组件,并将稀疏模型深度学习引擎引入龙蜥社区。


稀疏模型是指在模型结构中离散特征计算逻辑占比较高的一类深度学习模型的统称,其广泛应用于搜索、广告、推荐等高价值业务中。当下主流开源深度学习框架,对稀疏模型的支持不足。国内外公司在稀疏场景使用的方案在系统性和全面性上存在着问题,技术复用上的难度导致无法大面积推广,制约了不同场景下稀疏模型的探索和发展。


DeepRecSIG 为负责龙蜥操作系统上 DeepRec 相关开源软件包的维护,构建搜索、推荐、广告场景模型的训练及预测生态的利器,现做如下介绍:

DeepRec 介绍

DeepRec(PAI-TF)是阿里巴巴集团统一的大规模稀疏模型训练/预测引擎,广泛应用于淘宝、天猫、阿里妈妈、高德、淘特、AliExpress、Lazada 等,支持了淘宝搜索、推荐、广告等核心业务,支撑着千亿特征、万亿样本的超大规模稀疏训练。

DeepRec 在分布式、图优化、算子、Runtime 等方面对稀疏模型进行了深度性能优化,同时提供了稀疏场景下特有的 Embedding 相关功能。

DeepRec 的优势

DeepRec 是基于 TensorFlow1.15、Intel-TF、NV-TF 构建的稀疏模型训练/预测引擎,针对稀疏模型场景进行了定制深度优化,主要包含以下三类功能优化:

image.png

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:

网址:https://openanolis.cn/sig/deeprec

邮件列表:deeprec@lists.openanolis.cn

—— 完 ——

加入龙蜥社群

加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。欢迎开发者/用户加入龙蜥社区(OpenAnolis)交流,共同推进龙蜥社区的发展,一起打造一个活跃的、健康的开源操作系统生态!

deeprec sig交流群.png

关于龙蜥社区

龙蜥社区OpenAnolis)是由企事业单位、高等院校、科研单位、非营利性组织、个人等在自愿、平等、开源、协作的基础上组成的非盈利性开源社区。龙蜥社区成立于 2020 年 9 月,旨在构建一个开源、中立、开放的Linux 上游发行版社区及创新平台。

龙蜥社区成立的短期目标是开发龙蜥操作系统(Anolis OS)作为 CentOS 停服后的应对方案,构建一个兼容国际 Linux 主流厂商的社区发行版。中长期目标是探索打造一个面向未来的操作系统,建立统一的开源操作系统生态,孵化创新开源项目,繁荣开源生态。

目前,龙蜥OS 8.4已发布,支持 X86_64 、Arm64、LoongArch 架构,完善适配飞腾、海光、兆芯、鲲鹏、龙芯等芯片,并提供全栈国密支持。

欢迎下载:

https://openanolis.cn/download

加入我们,一起打造面向未来的开源操作系统!

https://openanolis.cn

相关文章
|
7月前
|
机器学习/深度学习 算法 定位技术
Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现裂缝的检测识别(C#代码UI界面版)
本项目基于YOLOv8模型与C#界面,结合Baumer工业相机,实现裂缝的高效检测识别。支持图像、视频及摄像头输入,具备高精度与实时性,适用于桥梁、路面、隧道等多种工业场景。
893 27
|
6月前
|
机器学习/深度学习 数据可视化 算法
深度学习模型结构复杂、参数众多,如何更直观地深入理解你的模型?
深度学习模型虽应用广泛,但其“黑箱”特性导致可解释性不足,尤其在金融、医疗等敏感领域,模型决策逻辑的透明性至关重要。本文聚焦深度学习可解释性中的可视化分析,介绍模型结构、特征、参数及输入激活的可视化方法,帮助理解模型行为、提升透明度,并推动其在关键领域的安全应用。
566 0
|
5月前
|
机器学习/深度学习 存储 PyTorch
Neural ODE原理与PyTorch实现:深度学习模型的自适应深度调节
Neural ODE将神经网络与微分方程结合,用连续思维建模数据演化,突破传统离散层的限制,实现自适应深度与高效连续学习。
379 3
Neural ODE原理与PyTorch实现:深度学习模型的自适应深度调节
|
4月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
7月前
|
机器学习/深度学习 人工智能 PyTorch
AI 基础知识从 0.2 到 0.3——构建你的第一个深度学习模型
本文以 MNIST 手写数字识别为切入点,介绍了深度学习的基本原理与实现流程,帮助读者建立起对神经网络建模过程的系统性理解。
718 15
AI 基础知识从 0.2 到 0.3——构建你的第一个深度学习模型
|
5月前
|
机器学习/深度学习 数据采集 传感器
【WOA-CNN-LSTM】基于鲸鱼算法优化深度学习预测模型的超参数研究(Matlab代码实现)
【WOA-CNN-LSTM】基于鲸鱼算法优化深度学习预测模型的超参数研究(Matlab代码实现)
338 0
|
12月前
|
机器学习/深度学习 数据采集 自然语言处理
深度学习实践技巧:提升模型性能的详尽指南
深度学习模型在图像分类、自然语言处理、时间序列分析等多个领域都表现出了卓越的性能,但在实际应用中,为了使模型达到最佳效果,常规的标准流程往往不足。本文提供了多种深度学习实践技巧,包括数据预处理、模型设计优化、训练策略和评价与调参等方面的详细操作和代码示例,希望能够为应用实战提供有效的指导和支持。
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
AI 基础知识从 0.3 到 0.4——如何选对深度学习模型?
本系列文章从机器学习基础出发,逐步深入至深度学习与Transformer模型,探讨AI关键技术原理及应用。内容涵盖模型架构解析、典型模型对比、预训练与微调策略,并结合Hugging Face平台进行实战演示,适合初学者与开发者系统学习AI核心知识。
575 15
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习模型、算法与应用的全方位解析
深度学习,作为人工智能(AI)的一个重要分支,已经在多个领域产生了革命性的影响。从图像识别到自然语言处理,从语音识别到自动驾驶,深度学习无处不在。本篇博客将深入探讨深度学习的模型、算法及其在各个领域的应用。
1414 3
|
8月前
|
机器学习/深度学习 存储 PyTorch
PyTorch + MLFlow 实战:从零构建可追踪的深度学习模型训练系统
本文通过使用 Kaggle 数据集训练情感分析模型的实例,详细演示了如何将 PyTorch 与 MLFlow 进行深度集成,实现完整的实验跟踪、模型记录和结果可复现性管理。文章将系统性地介绍训练代码的核心组件,展示指标和工件的记录方法,并提供 MLFlow UI 的详细界面截图。
352 2
PyTorch + MLFlow 实战:从零构建可追踪的深度学习模型训练系统