分布式机器学习_分布式机器学习之参数服务器(PS)详解

本文深入探讨了参数服务器(PS)在分布式机器学习中的作用,包括其易用性、性能、弹性可伸缩性和容错能力。PS采用异步通信,允许在不阻塞计算的情况下进行节点间的同步,支持动态添加和容错。在设计上,PS由server节点和worker节点组成,server节点存储和更新模型参数,worker节点计算局部梯度。一致性哈希策略解决了server节点扩展和负载均衡的问题,提高了并行训练的效率。PS已成为分布式机器学习框架如TensorFlow和MXNet的核心组件。
摘要由CSDN通过智能技术生成

9ce2e879a024422332e1021626bab582.png

为了更好的了解分布式机器学习,深入理解参数服务器的理念及设计是必要的。结合最近看的李沐大神参数服务器的论文,加深对PS的理解,故整理此文。

Parameter server 使用缩写PS

提出参数服务器框架来解决分布式机器学习问题,数据和计算工作量都分布到Client节点,而服务器节点维护全局共享的参数,这些参数为稀疏向量和矩阵。PS 维护 Client和Server 之间的异步数据通信。支持灵活的一致性模型、弹性可扩展性和容错性。我们提出了挑战非凸和非光滑问题的算法和理论分析。为了验证该框架的可扩展性,我们给出了数十亿参数的真实数据的实验结果。

1. 概述

分布式优化和推理在解决大规模机器学习问题中正变得越来越流行。使用机器集群可以解决以下问题:由于观测数据和参数数量的增长,没有任何一台机器可以足够快地解决这些问题。但是,实现高效的分布式算法并不容易。大量的计算工作量和数据通信量都需要仔细的系统设计。 目前大家比较熟知的通用机器学习系统有Spark MLI、Mahout等,基于Spark的MLI采用迭代MapReduce框架,虽然Spark由于保留了状态并执行了优化策略,因此在很大程度优于Hadoop MapReduce,这种方式使用的是同步迭代通信模型,这使得它们容易受到迭代机器学习算法(即在任何给定时间可能恰好变慢的机器)的非均匀性能分布的影响。基于个人的了解,现有的Angel系统应该也是在paper上实现的,并克服了这些问题。Parameter Server不仅被直接应用在各大公司的机器学习平台上,而且也被集成在TensorFlow,MXNet等主流的深度框架中,作为机器学习分布式训练最重要的解决方案。 许多推理问题在参数化方面有一个有限的结构,比如广义线性模型通常使用单个大参数向量,或者主题模型使用稀疏向量数组 在本文中,我们主要介绍基于参数服务器的分布式优化方法,在此模型中,机器节点分为client和server,每个client拥有一部分数据和计算任务,server端维护全局的共享参数,这种架构思想并不新鲜,它已经被应用于很多的机器学习应用中,包括潜变量模型、分布式图推理和深度学习。但是在这里所阐述的是做一个通用的参数服务器系统,它可以作为分布式机器学习的一个组件。鉴于这样的目标,它应该具备哪些功能特征如下:
  • 易于使用:全局共享参数可表示为(可能是稀疏的)向量和矩阵,与广泛使用的(键、值)存储或表相比,它们是机器学习应用程
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值