Mahout通过可插拔的后端平台Spark和Flink获取自优化矩阵代数接口

jopen 10年前

在柏林最近GOTO发布会,Mahout的提交者Sebastian Schelter概述了Mahout中的 最新进展 ,即持续努力为数据分析创造一个可扩展的基础,使其如R或Python一样易用。

Schelter所述的主要目标是提供一种简单的基于DSL(域特定语言)Scala语言,它类似于R语言中的矩阵表示法,但又能提供集群的大矩阵分布式存储和并行计算的可能性。

Schelter说到,最终的库将无缝地提供对本地和分布式矩阵的使用。Mahout团队通过设计使得这个库不依赖于特定的平台,相反它有一个可插拔的后端以针对不同的平台。

Schelter说,目前 Apache Spark (星火)发展最为快速,但是 Apache Flink ,另一个正在孵化的下一代大数据平台,也将在Mahout的考虑之中。

这种新结构的一个重要方面是提供不同操作的可能性,比如,基于涉及矩阵的大小来进行潜在的深入优化。根据Schelter所说,主要的设计目标是让数据科学家能够编写出可伸缩的代码,而不必过分担心并行的因素。这个 演示页 给出了结果界面的第一印象。

Apache Mahout最初是在Hadoop之上实现一些机器学习算法的一个项目。它涵盖了 分类,聚类,推荐和文档学习模型 算法。到目前为止,这些算法是基于Hadoop和MapReduce的计算模型,而不是其它更灵活的模型,比如Apache Spark。Apache Spark已经开始发展自己的机器学习库 mllib ,目前它涵盖的算法要比Mahout少,但他们的项目主页声称其算法要比Mahout快很多(译者注:这里是说基于MapReduce的Mahout),这些改进是因为将计算移动到内存中以及更好地支持了迭代算法。

Mahout开始不仅仅依靠MapReduce,这正是其它各种各样分布式计算替代方法出现的时候。

谷歌自身前段时间已开始探索替代的计算方案,这其中包括 Percolator (咖啡滤壶),它允许谷歌在搜索的数据库上做增量更新,还有 Pregel (普雷格尔),一个专为分布式图形计算建立的系统。Pregel反过来又导致了象 Apache Giraph斯坦福大学GPS 的开源项目。

卡内基 - 梅隆大学开发的GraphLab是可替代另一种工具箱,它提供了各种各样的机器学习算法的分布式实现。

查看英文原文: Mahout to Get Self-Optimizing Matrix Algebra Interface with Pluggable Backends for Spark and Flink

</div> 来自:http://www.infoq.com/cn/news/2014/12/mahout-spark-flink