分布式机器学习

参考文献: B站上面Shusen Wang的课程

这部分内容对于分布式机器学习入门来说,非常适合~~~~清楚简洁!

1、Why分布式

(1)数据越来越多,模型越来越复杂,一台机器的性能有限,多台机器同时运行节省时间;
(2)数据私密性:把所有数据集中在一个中心进行处理会侵犯个人隐私。

2、分布式计算的类型

  • 模型并行:由于网络参数量的巨大或者是网络中不同结构的计算方式不同(比如说CNN网络中的全连接层和卷积层),网络的不同部分的参数被分配给不同的计算节点去执行,比如说可以将网络分层部署在不同的节点中;
    模型并行

  • 数据并行:不同的计算节点之间分配到的数据不同,但模型相同。不同节点在本地数据集上对模型进行优化迭代,最终所有节点的计算结果以指定的方式被融合;
    数据并行

  • 混合并行:简单的混合并行常常被应用在数据并行的架构中,通过对每个计算节点进行多GPU的配置,在单节点中将神经网络模型拆解到多个处理器中完成。而更为复杂的混合并行框架,如ADMM(Alternating Direction Method of Multipliers)算法,则是从算法的角度将全局优化问题拆分成多个子优化问题,每个计算节点都拥有本地独立的优化模型和本地数据,通过全局参数的一致性来约朿分布式节点之间的参数关系,这种框架适用的优化算法并不局限于深度神经网络。

3、分布式计算中的计算部分

以数据并行为例子,看一下梯度的计算。
比如损失函数: L ( w ) = ∑ i = 1 n ( x i T w − y i ) L(\bf{w}) = \sum_{i=1}^n ({\bf{x}}_i^T {\bf{w}} - y_i) L(w)=i=1n(xiTwyi), 一共有n个样本,每个样本的特征是 x ∈ R d \bf{x} \in \mathbb{R}^d xRd,标签是 y ∈ R y \in \mathbb{R} yR。机器学习要通过梯度下降来求得参数 w \bf{w} w
那么,参数 w \bf{w} w的梯度为:
g ( w ) = ∂ L ( w ) ∂ w = ∑ i = 1 n ( x i T w − y i ) x i g(\bf{w}) = \frac{\partial L({\bf{w}})}{\partial \bf{w}} = \sum_{i=1}^n (x_i^Tw-y_i)x_i g(w)=

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值