Angel:一种新型分布式机器学习系统

发布时间:2023-05-17 21:38:43 作者:nimrod 阅读量:5737

Angel是一个基于参数服务器(Parameter Server)理念的分布式机器学习框架,它能让机器学习算法轻松运行于高维度模型之上。

  Angel是一个基于参数服务器(Parameter Server)理念的分布式机器学习框架,它能让机器学习算法轻松运行于高维度模型之上。Angel围绕模型共享的核心理念,将高维度的大模型合理地切分到多个参数服务器节点,并通过高效的模型更新接口和运算函数以及多变的同步协议,实现各种高效的机器学习算法。得益于其良好的设计,Angel既能独立运行、高效执行多种机器学习算法,亦能作为PS服务,支持Spark和现有的深度学习框架,为其加速。它基于工业界的海量数据进行了反复的实践和调优,具有广泛的适用性和稳定性,模型维度越高,优势越明显。

  现有的机器学习系统都是针对不同类型的机器学习任务而搭建的。数据流系统Hadoop和Spark适合通用的数据处理任务和构建机器学习流水线,但缺乏参数共享机制,存在单点瓶颈性能问题;图计算系统GraphLab、GraphX和T2等将机器学习计算抽象成图结构,可以利用图结构的特性进行加速,但只适合具有稀疏图结构的算法;深度学习系统TensorFlow、MXNet和Caffe2等利用Parameter Server或者Allreduce方法进行分布式神经网络的训练,其特点是能够利用GPU对神经网络的计算进行加速,但缺乏对稀疏图结构的优化和支持。

  Angel在设计中对分布式机器学习的共性进行了抽象和提炼。文章认为分布式机器学习的核心部分在于参数共享,如果可以提供高效的参数共享机制,则能够为各类机器学习任务进行扩展和加速。因此,Angel提供了PS服务的能力,支持两种运行模式。其中一种模式称为PS Service模式,Angel只启动Master和Parameter Server,具体的计算任务交由其他计算平台(如Spark、TensorFlow等)完成,这种模式下Angel只负责提供Parameter Server的功能;在另外一种模式中,Angel还会启动Worker,由Angel负责完成模型的训练。Angel提供PS服务的能力,使其能处理多种类型的机器学习任务,提供更方便的机器学习开发体验。

  此外,Angel还能提供:(1)多种参数同步协议,用于在不同的集群环境中进行加速;(2)易用且丰富的接口,用于方便算法的开发;(3)数据并行与模型并行的能力,提高算法的扩展性;(4)高效的容错机制,为任务在复杂环境中的运行提供保障。经过在真实数据集上的对比,Angel在多种机器学习算法上的性能优于XGBoost、Spark、Petuum、TensorFlow等常用机器学习系统。目前Angel已经被应用于腾讯视频点击预测和广告推荐等实际业务中。

  Angel的开源系统由北京大学-腾讯协同创新实验室开发,兼顾了工业界的高可用性和学术界的创新性,已经在GitHub全面开源,集成和优化了Logistic Regression、SVM、KMeans、LDA、MF、GBDT 等多种机器学习算法。Angel目前基于Java和Scala开发,未来还会加入Python等多种语言接口,方便使用。将来,Angel的PS Service能力会得到进一步利用,支持图计算和深度学习框架。

  

***本网站图片,文字之类版权申明,因为网站可以由注册用户自行上传图片或文字,本网站无法鉴别所上传图片或文字的知识版权,如果侵犯,请及时通知我们,本网站将在第一时间及时删除。

我要评论

最新文章

 2023-12-25 22:44:35   admin

活动发布区版规

 2023-05-27 22:03:52   御风而行

容器、无服务器、虚拟机:安全性差...

 2023-05-27 19:08:41   小绵羊0123

科技巨头布局云端 服务器 网络硬...

 2023-05-27 18:17:46   姐姐的跟屁虫

钉钉因系统访问流量激增,宕机1小...

热门阅读

 2022-07-23 00:34:02   freeatom

常见ftp命令 FTP命令使用详...

 2022-07-21 02:17:02   ares

双硬盘组建Raid0磁盘阵列图文...

 2022-07-20 06:17:02   mankeung123

用友软件客户端连接不上服务器的解...

 2022-07-23 00:51:02   antonfxb

WebService实例

 2022-07-13 05:38:02   苯小孩

开发、运维不可不看的Linux调...

 2022-07-20 18:51:02   nightstone

如何使用Charles抓取Web...

随机文章

 2022-01-14 05:38:02   5555555555555

企业为什么要选择服务器托管?

 2022-01-23 05:38:02   fj1221

服务器托管哪家最好?

 2022-03-05 05:38:02   gimmy

数据迁移系统包括什么

 2022-04-08 05:38:03   xc777

Windows Server 2...

 2022-07-19 06:17:02   koushuiduo

使用IIS服务配置Web服务器(...

 2022-07-19 08:17:02   dannycjr

服务器配置:通过IIS配置FTP...

热评文章

 2022-07-19 20:17:02   dengyu0429

linux vi使用及详细介绍

 2022-07-20 01:00:05   激动的舌头

Linux视频教程:用户管理命令...

 2022-07-21 20:51:02   jessica-an

创建本地FTP站点

 2022-02-07 05:38:03   jasonkidd

WEB服务器配置详解

 2022-07-20 04:51:02   wolfssss

ACL权限-默认与递归(4)

 2022-07-22 15:00:05   淡水珊瑚

Linux下 Samba Ser...
全球云服务器
Catfish(鲶鱼) Blog V 4.7.3