50万行代码量,腾讯开源框架Angel3.0发布,迈向全栈机器学习平台(腾讯 开源框架)

机器之心报道

机器之心编辑部

近年来,随着深度学习技术的发展,越来越多的科技巨头开发自己的机器学习平台。昨日,华为宣布将与明年第一季度开源自家的 AI 框架 MindSpore,引起极大关注。

除了华为,国内的科技巨头腾讯也于近日正式发布开源平台 Angel 3.0,试图打造全栈机器学习平台,功能特性涵盖机器学习的各个阶段:特征工程,模型训练,超参数调节和模型服务。

Angel 平台是腾讯数据平台部于 2016 年底推出的面向机器学习的「第三代高性能计算平台」,并于 2017 年开放了其源代码。

项目链接:https://GitHub.com/Angel-ML

Angel 3.0 新特性

腾讯介绍,Angel 是基于参数服务器架构的分布式计算平台,致力于解决稀疏数据大模型训练以及大规模图数据分析问题。

Angel 3.0 的整体系统架构如下图所示:

0万行代码量,腾讯开源框架Angel3.0发布,迈向全栈机器学习平台(腾讯

Angel 自研的高性能数学库是整个系统的基础,Angel 的 PS 功能和内置的算法内核均是在这个数学库基础之上实现的。

Angel PS 提供了高效,稳定和灵活的参数存储和交换服务。在 3.0 版本中,腾讯对 Angel PS 功能进行了扩展,使得它可以存储任意类型的对象,例如在图算法的实现过程中,用户可以使用 Angel PS 来存储了大量复杂的对象。

上图中 MLcore 是 Angel 自研的一套算法内核,它支持自动求导,可以使用 JSON 配置文件定义和运行算法。

除此之外,在 3.0 版本中,Angel 还集成了 PyTorch 作为计算引擎。在计算引擎层之上是计算框架,它们可以看作计算引擎的容器,目前支持 3 种计算框架:原生的 Angel,Spark On Angel(SONA)和 PyTorch On Angel(PyTONA),这些计算框架可以使得 Spark 和 PyTorch 用户可以无缝切换到 Angel 平台。

其中,Spark On Angel 使用的是 Angel 内置的算法核心,主要负责常见推荐领域的机器学习算法和基础图算法。PyToch On Angel 使用 PyTorch 作为计算核心,主要负责推荐领域深度学习算法和图深度学习算法。

最上层是两个公共组件:AutoML 和模型服务。

腾讯介绍,Angel 3.0 的发布意在打造一个全栈的机器学习平台,它的功能特性涵盖了机器学习的各个阶段:特征工程,模型训练,超参数调节和模型服务。下图总结了 Angel 3.0 的新特性,红色的表示新增特性,白色的表示已有的但在持续改进的特性。

0万行代码量,腾讯开源框架Angel3.0发布,迈向全栈机器学习平台(腾讯

Angel 的特征工程模块基于 Spark 开发,增强了 Spark 的特征选择功能,同时使用特征交叉和重索引实现了自动特征生成,这些组件可以无缝地整合进 Spark 的流水线。

为了让整个系统更加的智能,Angel 3.0 新增了超参数调节的功能,目前支持 3 种算法:随机搜索、网格搜索和贝叶斯优化。

在模型服务方面,Angel 3.0 提供了一个跨平台的组件 Angel Serving,Angel Serving 不仅可以满足 Angel 自身的需求,还可以为其他平台提供模型服务。

对比 TensorFlow、PyTorch

当前,TensorFlow、PyTorch 已经成为机器学习社区最主流的框架。腾讯表示,相比于 TensorFlow, PyTorch、Spark 等业界同类平台,它有如下特点:

  • Angel 是一个基于 Parameter Server(PS)理念开发的高性能分布式机器学习平台,它具有灵活的可定制函数 PS Function(PSF),可以将部分计算下推至 PS 端。PS 架构良好的横向扩展能力让 Angel 能高效处理千亿级别的模型。
  • Angel 具有专门为处理高维稀疏特征特别优化的数学库,性能可达 breeze 数学库的 10 倍以上。Angel 的 PS 和内置的算法内核均构建在该数学库之上。
  • Angel 擅长推荐模型和图网络模型相关领域(如社交网络分析)。下图是 Angel 和几个业界主流平台在稀疏数据、模型维度、性能表现、深度模型和生态建设几个维度的对比。Tensorflow 和 PyTouch 在深度学习领域和生态建设方面优势明显,但在稀疏数据和高维模型方面的处理能力相对不足,而 Angel 正好与它们形成互补,3.0 版本推出的 PyTorch On Angel 尝试将 PyTorch 和 Angel 的优势结合在一起。

0万行代码量,腾讯开源框架Angel3.0发布,迈向全栈机器学习平台(腾讯

自 2016 年年初在腾讯内部上线以来,Angel 已应用于微信支付、QQ、腾讯视频、腾讯社交广告及用户画像挖掘等业务。2017 年 6 月,Angel 在 Github 上正式开源。2018 年 9 月,Angel 2.0 版本发布,支持千亿级模型维度训练,同时算法库也更加丰富,首次引入了深度学习算法和图算法。截至目前,Angel 在 GitHub 上 Star 数已超过 4200,Fork 数超过 1000,代码量也超过了 50 万行。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年5月13日 下午12:15
下一篇 2024年5月13日 下午12:26

相关推荐

  • windows7自带的日程管理(windows 日程管理软件)

    Windows 日程管理软件: 轻松管理你的日程安排 近年来,随着计算机技术的不断发展,我们越来越依赖计算机来管理我们的日常生活。其中,Windows 日程管理软件是一个非常有用的…

    科研百科 2024年6月3日
    106
  • 奋力谱写装备管理高质量发展新篇章(装备建设高质量发展)

    来源:【陕西网】 警务保障工作是公安机关依法履职的基本条件、能力建设的重要载体,在公安工作中发挥着重要作用。西安市公安局高新分局警保部门深入贯彻部省市公安工作会议精神,牢固树立“大…

    科研百科 2022年7月30日
    153
  • 推动党建与工会业务工作融合发展——市总工会全面加强党支部建设

    2019年以来,市总工会以党建工作为引领,全面落实各项制度和措施,夯实党支部建设基础,标准化党支部建设不断深入,把支部建设与工会业务工作紧密结合,不断探索新形势下机关党支部建设的新…

    科研百科 2023年6月14日
    146
  • 党建工作如何汇报

    党建工作如何汇报 党建工作是中国共产党在全面建设社会主义现代化国家过程中的重要任务之一。对于党建工作的汇报,是党员向上级党组织汇报工作进展、工作成果和存在的问题的重要方式之一。下面…

    科研百科 2024年10月15日
    0
  • 2024年广西军队文职技能岗司机

    2024年广西军队文职技能岗司机 随着军队改革的不断推进,广西军队文职技能岗司机这一职业也在不断更新和发展。在这个岗位上,司机们不仅要承担驾驶车辆的任务,还需要具备扎实的军事理论知…

    科研百科 2024年10月23日
    0
  • 开发一个聊天app需要多少钱(小程序开发一个多少钱啊)

    开发一个聊天app需要多少钱。其实这种就是即时通讯app:这边发消息对方立马就能收到信息。现在的市场需求很大,各行各业都需要。我们公司在这方面深耕多年市面上精通这种app的并不多,…

    科研百科 2023年3月19日
    118
  • 项目管理内容介绍(项目管理内容)

    项目管理内容项目管理内容2022年9月8日9:30—16日,江苏省华航电子竞技运动协会将陆续开展“英雄联盟手游全民精英挑战赛”活动。英雄联盟手游世界赛存在着很多小项目,其中以游戏、…

    科研百科 2024年7月31日
    34
  • 衡水志臻中学

    衡水志臻中学是河北省衡水市一所著名的高中,以其优秀的教学质量和优秀的学生成绩而著称。作为一所名校,衡水志臻中学在教育领域取得了许多成就,并为社会做出了巨大贡献。 在衡水志臻中学,学…

    科研百科 2024年10月22日
    0
  • 科研项目英文名称怎么读科研项目英文名称怎么读

    科研项目英文名称的正确读法 科研项目的英文名称是 scientific research project,通常由三个部分组成:project, research and devel…

    科研百科 2024年6月18日
    45
  • 科研经费 绩效支出

    科研经费与绩效支出:促进科技创新的关键因素 科研经费是推动科技创新的重要资源。然而,在实际应用中,科研经费的支出与绩效发挥的作用并不完全匹配。为了促进科研经费的高效利用,研究人员需…

    科研百科 2024年8月21日
    26