Mahout 簡介



我們生活在一個資訊充裕的時代。資訊過載已達到如此程度,以至於有時難以管理我們小小的郵箱!想象一下,一些熱門網站(如 Facebook、Twitter 和 Youtube)每天需要收集和管理的資料和記錄量。即使是較不知名的網站,也經常會批次接收大量資訊。

通常情況下,我們依賴資料探勘演算法來分析海量資料,以識別趨勢並得出結論。但是,除非計算任務在雲端分佈在多臺機器上執行,否則沒有任何資料探勘演算法能夠高效地處理超大型資料集並在短時間內提供結果。

現在我們有了新的框架,允許我們將計算任務分解成多個片段,並在不同的機器上執行每個片段。Mahout就是這樣一種資料探勘框架,它通常在其後臺與 Hadoop 基礎架構耦合執行,以管理海量資料。

什麼是 Apache Mahout?

Mahout 指的是駕馭大象的馴象師。這個名字源於它與 Apache Hadoop 的密切聯絡,後者使用大象作為其 logo。

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 進行模式挖掘。

廣告
© . All rights reserved.