【Petuum 源码解析】之K-Means分布式算法源码

【前言】

由于最近在看分布式机器学习相关的东西,所以希望能把学习心得记录在这里。本系列主要介绍CMU的开源分布式框架Petuum源码的学习。由于本人水平很菜,希望大家不吝赐教,共同学习。
本文主要记录我在学习K-Means源码当中的收获和疑问。

【正文部分】

1.Petuum

首先看看Petuum的组成部分,主要包括Bösen(a bounded-asynchronous distributed key-value store)和Strads( a dynamic ML update scheduler.),详细的说明可以参考[官方文档][1]

2.关于K-Means可以参考Wiki的介绍:

https://en.wikipedia.org/wiki/K-means_clustering
本文中对KMeans的解读,需要弄清的问题是:
1.KMeans算法在Petuum系统是是如何实现并行的?
2.参数是如何在参数服务器(Parameter Server)与Worker之间进行更新和分配的?
3.在效率方面有哪些提升?
4.有没有数学理论上的保证?

3. 源码解读:

3.1 代码结构:

K-Means在Petuum中是用C++来实现的,源码位于bosen/app/kmeans目录下,![可以参考该截图](https://img-blog.youkuaiyun.com/20160413170722728)

3.2 核心代码:

<
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值