如何在Hadoop MapReduce程序中使用机器学习算法?我想使用分类算法、决策树和聚类算法。除了Mahout之外,请提供一些建议。
回答:
您可以编写自己的MapReduce程序,并在映射器和归约器中调用第三方的机器学习算法。有几个开源的机器学习库可用,如Weka, open nlp, ctakes, mallet, uima等…
另一种更好的方法是使用Spark ML lib或H2O, Oryix在Hadoop之上运行。
另一种解决方案:使用PMML和JPMML将机器学习工具如R, Weka, SAS与Hadoop集成。您可以使用其中一个工具(R, SAS, Weka)开发模型,并通过JPMML在MapReduce程序中使用该模型。