Answers:
《行动中的Mahout》是一本关于Mahout(http://manning.com/owen/)的好书。当然,该网站提供了所涵盖算法的概述(http://mahout.apache.org/)。
Vowpal Wabbit是一个非常快速的机器学习程序,专注于在线梯度下降学习,可以与Hadoop一起使用:http : //arxiv.org/abs/1110.4198 虽然,我从未以这种方式使用过它。如果我理解正确,它实际上仅使用Hadoop来确保可靠性并将数据提供给Vowpal Wabbit进程。它使用MPI的AllReduce之类的东西来进行大多数通信。
正如吉米·林(Jimmy Lin)和克里斯·戴尔(Chris Dyer)在他们的书《使用MapReduce进行数据密集型文本挖掘》中的第一章中指出的那样,在大数据规模下,不同算法的性能趋于一致,从而性能差异实际上消失了。这意味着在给定足够大的数据集的情况下,您要使用的算法的计算成本较低。只有在较小的数据规模上,算法之间的性能差异才有意义。
话虽这么说,但他们的书(上面已链接)和Anand Rajaraman,Jure Leskovec和Jeffrey D. Ullman 的《海量数据集的挖掘》可能也是您要检查的两本书,尤其是因为它们与MapReduce直接相关用于数据挖掘。
如果您有权访问Hadoop集群,我将给Spark看一下。https://spark.apache.org/
没有人提到以下论文-http://papers.nips.cc/paper/3150-map-reduce-for-machine-learning-on-multicore.pdf(吴安德(Andrew Ng是其中之一))
本文本身是针对多核机器的,但本质上是关于重铸机器学习问题,以使其适合于map-reduce模式,并且可以用于计算机集群。(要了解为什么通常来说不是一个好主意,您可能需要阅读这篇文章-http://arxiv.org/pdf/1006.4990v1.pdf。它有很好的概述)。
扩展机器学习:并行和分布式方法是John Langford等人撰写的一本好书。等 讨论了有监督和无监督算法的并行实现。它讨论了MapReduce,决策树集成,并行K均值,并行SVM,置信度传播和AD-LDA。
https://www.amazon.com/Scaling-Machine-Learning-Distributed-Approaches/dp/0521192242