/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
软件Tags: 腾讯Angel平台计算软件数据分析编程工具
腾讯Angel是腾讯发布一款开源高性能分布式计算平台,可以更加高速精确的处理数据材料,其能力超过各类同行软件,如果你有兴趣,就来绿色资源网下载,学习源码吧!
腾讯Angel 1.0是腾讯数据平台部与香港科技大学合作、北京大学参与共同开发的分布式计算框架,它的主要设计目标是为了支持超大维度的机器学习模型运算。
【网络优化】
Angel的网络解决方案使用的是香港科技大学的Chukonu。借助Chukonu,Angel可以通过网络流量再分配的方式,解决半同步的运算协调机制SSP中可能出现的快节点等待慢节点的问题,减少了窗口空闲等待时间。
【整体架构】
Angel的整体架构参考了谷歌的DistBelief,这是一种最初为了深度学习而设计、使用了参数服务器来解决巨大模型在训练时更新问题的架构。参数服务器同样可用于机器学习中非深度学习的模型,如SGD、ADMM、LBFGS的优化算法在面临在每轮迭代上亿个参数更新的场景中,需要参数分布式缓存来拓展性能。
1.Angel的核心设计理念围绕模型。它将高维度的大模型切分到多个参数服务器节点,并通过高效的模型更新接口和运算函数,以及灵活的同步协议,实现机器学习算法的高效运行
2.Angel基于Java和Scala开发,能在社区的Yarn上直接调度运行,并基于PS Service,支持Spark on Angel,未来将会支持图计算和深度学习框架集成。
3.Angel采用的Parameter Sever架构相比其它类型的架构更适合解决巨大模型中的参数更新问题;实际运行中相比参数更新方面有单点瓶颈的Spark平台,Angel能够取得成倍的性能优势,而且模型越大优势越明显。
4.腾讯开源的Angel给头疼于大规模机器学习模型计算的业内人员提供了一个新选择。发展自己技术、扩大自己的平台的同时,腾讯也承诺未来的开源力度只会越来越大。
5.围绕Angel,腾讯还建立了一个小生态圈,可以支持Spark之上的MLLib,支持上亿的维度的训练;也支持更复杂的图计算模型。
去年Angel发布时,腾讯平台部总经理、首席数据专家蒋杰对腾讯计算平台的发展历程做过介绍。2009到2011年的第一代平台主要目标是规模化,形成了TDW(腾讯分布式数据仓库)这样的架构;2012到2014年第二代平台主要是实时化,把大规模计算搬到平台上,支持了实时性强、规模大的业务需求,但是基于Spark的数据训练就遇到了超大维度时出现瓶颈的问题。
这样,腾讯开始建设新的高性能计算框架,要能支持超大规模数据集,能完成十亿级别维度的训练。这就是腾讯的第三台计算平台Angel。围绕Angel,腾讯还建立了一个小生态圈,可以支持Spark之上的MLLib,支持上亿的维度的训练;也支持更复杂的图计算模型。
也就是依靠Angel,腾讯获得了2016年的Sort benchmark的排序的4项冠军,用98.8秒时间完成了100T数据的排序,刷新了四项世界纪录。2015年的这项排序时间还高达329秒。