Mahout 介绍


我们生活在一个信息丰富的时代。信息过载已达到如此高度,以至于有时管理我们的小邮箱变得困难!想象一下,一些流行网站(如 Facebook、Twitter 和 Youtube)必须每天收集和管理的数据量和记录。即使是鲜为人知的网站也经常会收到大量信息。

通常我们依靠数据挖掘算法来分析大量数据以识别趋势 并得出结论。然而,除非计算任务在分布在云上的多台机器上运行,否则任何数据挖掘算法都无法高效地处理非常大的数据集并快速提供结果。

我们现在有了新的框架,允许我们将计算任务分解为多个段,并在不同的机器上运行每个段。 Mahout 就是这样一个数据挖掘框架,通常在其后台与 Hadoop 基础架构结合运行以管理大量数据。

什么是 Apache Mahout?


A mahout 是一个以大象为主人的人。这个名字来源于它与使用大象作为标志的 Apache Hadoop 的密切联系。

Hadoop 是 Apache 的一个开源框架,允许使用简单的编程模型在跨计算机集群的分布式环境中存储和处理大数据。

Apache Mahout 是一个开源项目,主要用于创建可扩展的机器学习算法。它实现了流行的机器学习技术,例如:

  • 推荐
  • 分类
  • 聚类

Apache Mahout 于 2008 年作为 Apache 的 Lucene 的一个子项目开始。2010 年,Mahout 成为 Apache 的顶级项目。

Mahout的特点


下面列出了 Apache Mahout 的原始特性。

  • Mahout 的算法是在 Hadoop 之上编写的,因此在分布式环境中运行良好。 Mahout 使用 Apache Hadoop 库在云中有效扩展。

  • Mahout 为编码人员提供了一个现成的框架,用于对大量数据执行数据挖掘任务。

  • Mahout 让应用程序能够快速有效地分析大量数据。

  • 包括几个启用 MapReduce 的集群实现,例如 k-means、模糊 k-means、Canopy、Dirichlet 和 Mean-Shift。

  • 支持分布式朴素贝叶斯和互补朴素贝叶斯分类实现。

  • 带有用于进化编程的分布式适应度函数功能。

  • 包括矩阵和向量库。

Mahout 的应用


  • Adobe、Facebook、LinkedIn、Foursquare、Twitter 和 Yahoo 等公司在内部使用 Mahout。

  • Foursquare 可帮助你查找特定区域的地点、食物和娱乐活动。它使用 Mahout 的推荐引擎。

  • Twitter 使用 Mahout 进行用户兴趣建模。

  • 雅虎!使用 Mahout 进行模式挖掘。