并行处理系统结构 揭秘扛过双11的千亿级特征分布式机器学习平台XPS

电脑杂谈  发布时间:2018-02-08 02:13:08  来源:网络整理

手机清理软件哪个好_并行处理系统结构_计算机系统结构是什么

原标题:揭秘扛过双11的千亿级特征分布式机器学习平台XPS

2017年,阿里巴巴推荐算法团队和计算平台PAI团队合作打造了eXtreme Parameter Sever (XPS) 机器学习平台,其中eXtreme寓意为“追求极致”, 体现我们希望设计具有极致性能和效果的机器学习平台的愿景。并行处理系统结构XPS平台已经广泛全流量运行在手机淘宝的猜你喜欢、生活研究所、飞猪旅行和天猫推荐等大数据场景。

2017年双11购物狂欢节当天,小时级XNN模型在猜你喜欢和天猫推荐场景上线,稳定和快速地使用了用户双11的实时行为信息,显著提升了双11当天的收入和用户价值。在性能上,XPS平台上的例行算法,现在每天能轻松处理100亿规模样本1000亿规模的特征,算法运行速度快,容错能力强,资源利用率高。本文将对XPS平台的整体结构进行介绍,希望通过这些分享和大家交流我们在分布式算法设计和框架优化上的经验。

规模庞大且高频变化的特征和样本,给分布式机器学习平台的设计带来的挑战具体可以归结为样本、特征和分布式规模三个方面:

在样本方面,我们每天面对的是百亿规模的训练数据,累计六个月的历史训练数据就超过了万亿规模。显然,传统的全量多轮迭代的机器学习算法已经不太适合这样规模的训练样本,因为这类算法需要消耗的计算资源极多,也无法很好地引入数据的时序性。

在特征方面,样本下特征总量轻易超过千亿量级,传统的特征编号方法需要消耗极多的机器资源和耗费很长的计算时间来完成特征编号,而且对新出现的特征也难以及时进行编号。从资源消耗和时间消耗上看,特征序列化编号方法已经是不可承受的步骤。此的做法,虽然保证固定了tensor的shape,减少了参数总量,但是在特征总数巨大的时候则又引入了大量的哈希冲突,影响了算法效果。

在分布式规模方面,特征下给Server的存储和分布式计算性能带来巨大压力。举例来说,1万亿个32位float浮点数就需要3.63TB的存储空间,再加上需要保留的历史梯度等,往往需要300到600台server才能使各个进程的内存占用控制在一个合理范围。Server数成倍增长,导致并行请求数也线性增长,给通信也带来较大压力。同时,存储量以及单任务进程数的增长,也给集群调度、容错、网络、IO带来较大的压力。

面对这些挑战,XPS平台提出了很多创新的技术来应对,向“极限参数服务器”的目标前进了一步:

在样本处理问题上,我们采用流式学习算法为主的算法选型来解决样本问题。在流式学习下,对每一批新数据,直接在当前模型上进行增量训练,并产出下一个模型,无需加载全量数据进行多轮全量学习。流式学习算法选型,平衡了数据规模和资源消耗问题,更轻量级地应对了样本的问题;

在特征处理问题上,采用了将特征哈希映射为哈希值的方法替代特征编号机制。在节省内存、提升性能的同时,支持了特征的动态稀疏化正则机制和表示向量维度的动态扩张机制,解决了特征总量过大的问题;

在分布式规模方面,通过异步Checkpoint和Exactly Once Failover以及高性能的ArrayHashMap等机制,加上动态稀疏化正则机制等特征处理技术,保证了分布式训练的性能,提高了Server的存储效率。

面对这些下的机器学习问题,eXtreme Parameter Server在阿里巴巴内部应运而生,针对性地解决了样本和特征的挑战,并得到了广泛的应用。

下面我们对XPS平台的系统结构和数据流程、分布式优化、核心算法和算子体系进行介绍。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-66400-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...