十分钟了解分布式计算:Petuum
Petuum是一個機器學習專用分布式計算框架,本文介紹其架構,并基于文章 More Effective Distributed ML via a Stale Synchronous Parallel Parameter Server,NIPS 2013 重點探討其核心內容SSP協議。
主要思想
Parameter server提供了一個易于讀寫Global模型參數的接口,而SSP協議允許distributed workers讀寫本地緩存中stale版本的參數(而不是每次都花大量時間時間等待central storage傳回最新參數)。更進一步,通過限制參數的stale程度,SSP模型提供了機器學習算法的正確性保證。
Stale Synchronous Parallel (SSP)
但還不夠激動人心,因此改進的空間也很大。
Structure-aware dynamic scheduler (STRADS)
Fault tolerance
雜談
前兩天去ICML看到了Eric Xing真人,他說之所以Petuum用C++而不是Scala等在Github上活躍的語言實現是因為這只是一個原型,GraphX的圖并行太局限了無法處理真正的海量數據,且GraphX的點一致性模式沒有收斂保證而Petuum的SSP是理論保證的。雖說文人相輕,但GraphX的model partition是否會遇到瓶頸,在海量數據中Petuum的正確性和效率是否會擊敗GraphX,還是很值得一看的。
Resource
Petuum: Source Code Read and Initial Test Result
How to Use Spark for ML Algorithms and Why ?
Publications
[1]?More Effective Distributed ML via a Stale Synchronous Parallel Parameter Server?Qirong Ho, James Cipar, Henggang Cui, Jin Kyu Kim, Seunghak Lee, Phillip. B. Gibbons, Garth A. Gibson, Greg R. Ganger, Eric P. Xing. Neural Information Processing Systems, 2013 (NIPS 2013)?Slides
More
from: http://www.cnblogs.com/wei-li/p/Petuum.html
總結
以上是生活随笔為你收集整理的十分钟了解分布式计算:Petuum的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python正则表达式集锦
- 下一篇: Python图像处理库:PIL中Imag