大數據(十一) - Mahout

jopen 8年前發布 | 8K 次閱讀 分布式/云計算/大數據

傳統數據挖掘/機器學習庫存在的問題


        缺少一個活躍的技術社區

        擴展性差

        文檔化差,缺少實例

        不開源,商業化庫

        通常由研究機構開發

        實施性差


Apache Mahout優點

        技術社區活躍

        擴展性好

        文檔化好,實例豐富

        100%源代碼開源

        易于使用


Apache Mahout是什么

        基于MapReduce開發的數據挖掘/機器學習庫

        良好的擴展性和容錯性

        充分利用了MapReduce和HDFS的擴展性和容錯性

        屬于Hadoop生態系統重要組成部分

        Apache Software License 2

        實現了大部分常用的數據挖掘算法

        聚類算法

        分類算法

        推薦算法


Mahout提供的算法
http://cwiki.apache.org/confluence/display/MAHOUT/Algorithms



聚類算法介紹

        將類似的對象劃分成多個類的過程

        “物以類聚,人以群分”

        以k-means聚類算法為例介紹

                給定聚類個數k

                按照數據特征,將其分為k個類別
分類的基本流程

        有監督機器學習算法

        需提供樣本,根據樣本得到分類模型

        分類三步驟

                步驟1:訓練樣本,得到分類模型;

                步驟2:對分類模型進行測試,并嘗試調優

                步驟3:將分類模型用于線上產品中



推薦算法介紹

        誕生于電子商務系統中;

        根據用戶的興趣特點和購買行為,向用戶推薦用戶感興趣的信息和商品;

        以協同過濾推薦算法為例進行介紹

                推薦系統中應用最早和最為成功的技術之一

                假設:為一用戶找到他真正感興趣的內容的好方法是首先找到與此用戶有相似興趣的其他用戶,然后將他們感興趣的內容推薦給此用 戶
協同過濾推薦算法—基本元素

    Item

        能夠被推薦給使用者的項目

    User

        能夠推Item做評分,能為系統推薦Item的使用者

    Preference

        User對Item的評分

        { userId, itemId, rating }
User-Item矩陣

User-based

Item-based


User-based 與 Item-based
    User-based

        基于使用者間的相似性推薦項目

    Item-based

        基于項目間的相似性推薦給使用者

    各有優劣

        User-based的推薦效果好

        Item-based的計算效率高


Taste: Mahout自帶的一個推薦系統實現

        Taste 是 Apache Mahout 提供的一個協同過濾算法的高效實現;

        基于 Java 實現的可擴展的,高效的推薦引擎;

        實現了最基本的基于用戶的和基于內容的推薦算法,也提供了擴展接口,使用戶可以方便的定義和實現自己的推薦算法;

        Taste 的設計使它能滿足企業對推薦引擎在性能、靈活性和可擴展性等方面的要求。


總結

        1.數據挖掘/機器學習算法對技術人員有較高要求;

        2.Mahout提供了一個通用數據挖掘/機器學習庫,但對技術人員要求仍非常高;




來自: http://blog.csdn.net//matthewei6/article/details/50546080

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!