日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Mahout學習筆記-推薦算法

系統 2397 0


? Mahout中的推薦算法主要有:User-based Recommender, Item-based Recommender和Slope-One Recommender。

? 1. User-based Recommender

??? 該算法的主要思想是:與用戶u最相似的用戶喜歡的商品有很大可能也是用戶u喜歡的商品。

      
        1
      
      
        對于用戶u的每一個沒有preference的商品i

      
      
        2
      
      
           對于每一個對商品i有preference的用戶v

      
      
        3
      
            計算用戶u與v的相似性s
      
        //
      
      
        實際上無需在線計算,可以事先計算好存儲起來
      
      
        4
      
      
             將用戶v對于商品i的preference,乘以s,加到用戶u對商品i的預測preference的平均值

      
      
        5
      
        返回用戶u的平均值最高的幾個商品作為推薦商品。
    

?

? 上述算法需要窮舉每個商品i,導致計算非常非常慢??梢詫崿F計算好某個用戶u的所有的鄰居(記為集合n),然后,再為用戶u做推薦時,只需要考慮用戶u的鄰居的所有有preference的商品即可,而無需考慮所有商品,算法如下:

      
        1
      
      
        對于每個其他的用戶w

      
      
        2
      
      
          計算用戶u與用戶w之間的相似度s

      
      
        3
      
      
        返回用戶u的相似度最高的幾個用戶,記為用戶u的鄰居n

      
      
        4
      
      
        //
      
      
        上述步驟可以離線完成,類似于索引
      
      
        5
      
      
        對于用戶u的每個u本身沒有preference,但是u的鄰居n中某個用戶有preference的商品i

      
      
        6
      
      
          對于每個對商品i有preference的用戶u的鄰居v

      
      
        7
      
           計算用戶u與v的相似度
      
        //
      
      
        其實無需在線計算,可以提前計算好,存儲起來
      
      
        8
      
             將用戶v對于商品i的preference,乘以s,加到用戶u對商品i的預測preference的平均值
    

? 2. Item-based Recommender

??? 該算法的主要思想是:喜歡商品i的用戶u,有很大可能性會喜歡和商品i很相似的其他商品

      
        1
      
      
        對于用戶u的每個沒有preference的商品i

      
      
        2
      
      
          對于每個用戶u有preference的商品j

      
      
        3
      
      
            計算商品i與j的相似度s

      
      
        4
      
      
            把用戶u對商品j的preference,乘以s,加到用戶u對商品i的preference的平均值

      
      
        5
      
       返回用戶u的平均值最高的幾個商品作為推薦商品
    

? 3. Slope-One Recommender

??? 首先計算每兩個商品之間preference差值的平均值

      
        1
      
      
        對于某個商品i

      
      
        2
      
      
          對于某個商品j

      
      
        3
      
      
            對于每個對商品i和j都有preference的用戶u

      
      
        4
      
             將用戶u對商品i和商品j的preference的差值加到所有用戶對商品i和商品j的差值的平均值當中去  
    

??? 推薦

      
        1
      
      
        對于用戶u的每個沒有preference的商品i

      
      
        2
      
      
          對于用戶u的每個有preference的商品j

      
      
        3
      
      
            取得商品i和商品j的preference差值的平均值diff

      
      
        4
      
      
            將diff加上u對商品j的preference的和加入用戶u對商品i的preference的平均值當中去

      
      
        5
      
           返回用戶u的預測preference最高的幾個商品作為推薦
    

?

? [1] Mahout in Action

Mahout學習筆記-推薦算法


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 布拖县| 三江| 伊吾县| 大同市| 定边县| 改则县| 巩义市| 玉龙| 思茅市| 克东县| 鲁甸县| 九江市| 三江| 加查县| 波密县| 土默特右旗| 乐业县| 白河县| 东城区| 明光市| 新邵县| 稻城县| 吴堡县| 资源县| 洛浦县| 栾城县| 津南区| 余江县| 呼伦贝尔市| 呼和浩特市| 原阳县| 兴仁县| 屏东县| 湘潭县| 阳谷县| 静宁县| 伊金霍洛旗| 浠水县| 天等县| 中山市| 龙里县|