Petuum

来自开放百科 - 灰狐
2016年12月18日 (日) 05:19Allen (讨论 | 贡献)的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转到: 导航, 搜索

Petuum 是一个分布式机器学习平台,目标是为大规模机器学习提供一个通用的算法和系统接口,简化分布式机器学习程序的实现。

Petuum可使用户从复杂繁琐的分布式系统编程和调试中解脱出来,将更多精力集中在优化模型和算法上。

Petuum可高效地运行于各种硬件环境下,包括实验室集群服务器和云计算平台,如Amazon EC2, Google GCE。

目录

简介

Petuum 是一个分布式机器学习平台,用以处理两类大规模机器学习问题:

  • 大数据(数据样本数目庞大)
  • 大模型(模型参数众多)

不同于一般用途的分布式编程平台(如数据流系统),Petuum专门为机器学习而设计。充分利用机器学习算法的特征,如迭代性,容错性,参数收敛的不均匀性等等,以最大化系统性能。

Petuum主要包括两个组件:

  • 基于受限异步一致性协议的分布式键值存储系统Bösen;
  • 动态参数更新调度器Strads。

关键特征

  • 运行于集群服务器和云计算平台,可支持几百台机器
  • Bösen,基于受限异步一致性协议的分布式键值存储系统,可支持数据并行分布式机器学习编程。Bösen使用的一致性协议是受限异步,既可以获得与完全异步相似的性能,又可以保证机器学习算法的正确性。
  • Strads,动态参数更新调度器,可支持模型并行分布式机器学习编程。Strads对机器学习模型参数的更新进行细粒度的调度,根据参数的优先级自动调整更新次序,并根据参数的相关性防止不安全的并行。
  • C++和Jave编程接口
  • 支持Hadoop生态系统,如YARN和HDFS
  • Petuum机器学习库包含十余个算法:较新的算法诸如监督性话题模型(MedLDA),深度学习,距离度量学习,稀疏编码;经典算法包括逻辑回归,k均值聚类,随机森林。

项目

案例

  • 基于深度学习的图像分析:10,000+目标类,几TB图像数据,40,000 GPU核
  • 网络分析:包含数十亿结点,几TB容量的图数据,400台CPU机器
  • 话题分析:包含数十亿词,几TB容量的文本数据,128CPU机器

链接

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱