我了解降维技术,如PCA或SVD。
我想了解这些技术在分布式大数据平台如Apache Spark中的实现方式。
是否有伪代码或包含公式的架构?我想知道算法的哪些部分可能会由于通信问题而成为瓶颈。
非常感谢您的提前回答
回答:
Apache Mahout实现了分布式随机奇异值分解,这是直接基于Nathan Halko的用于计算矩阵低秩近似的随机方法
请注意,dssvd
是针对Apache-Mahout Samsara的,后者是一个将在Spark之上运行的库。因此,本质上这是基于Spark的svd方法,实际上是分布式的。
关于分布式PCA,Mahout也提供了分布式随机PCA- 最近网站有了一些调整,但dspca(分布式随机主成分分析)作为一个例子在这里给出了算法和实现。
我认为Halko(见上面的参考文献)也讨论了分布式PCA。我无法告诉你瓶颈会在哪里,但我希望这些信息能帮助你开始你的研究。