說明:資料都來至網絡,收集起來方便自己看;
1、推薦算法就是利用用戶的一些行爲,通過一些數學算法,推測出用戶可能喜歡的東西。
2、推薦算法分兩種:
(1)基於內容的推薦
基於內容的信息推薦方法的理論依據主要來自於信息檢索和信息過濾;即根據用戶過去的瀏覽記錄來向用戶推薦其沒有接觸過的推薦項。
主要是從兩個方法來描述基於內容的推薦方法:啓發式的方法和基於模型的方法。
啓發式的方法就是用戶憑藉經驗來定義相關的計算公式,然後再根據公式的計算結果和實際的結果進行驗證,然後再不斷的是修改公式以達到最終目的。
模型的方法就是根據以往的數據作爲數據集,然後根據這個數據集來學習出一個模型。
一般的推薦系統中運用到的啓發式的方法就是使用tf-idf的方法來計算,跟還有tf-idf的方法計算出這個文檔中出現權重比較高的關鍵字作爲描述用戶特徵,並使用這些關鍵字作爲描述用戶特徵的向量;然後再根據被推薦項的中的權重高的關鍵字來作爲推薦項的屬性特徵,然後再將這個兩個向量最相近的(與用戶特徵的向量計算得分最高)的項推薦給用戶。在計算用戶特徵向量和被推薦項的特徵向量的相似性時,一般使用的是cosine方法,計算兩個向量之間夾角的cosine值。
(2)基於協同過濾的推薦
基於協同過濾的推薦算法,它理論上可以推薦世界上的任何一種東西。圖片、音樂、樣樣可以。
協同過濾算法主要是通過對未評分項進行評分、預測來實現的。
不同的協同過濾之間也有很大的不同。
基於用戶的協同過濾算法 這種算法基於一個這樣的假設“跟你喜好相似的人喜歡的東西你也很有可能喜歡。”
所以基於用戶的協同過濾主要的任務就是找出用戶的最近鄰居,從而根據最近鄰 居的喜好做出未知項的評分預測。
這種算法主要分爲3個步驟:
一、用戶評分。可以分爲顯性評分和隱形評分兩種。
顯性評分就是直接給項目評分(例如給百度裏的用戶評分)
隱形評分就是通過評價或是購買的行爲給項目評分 (例如在有啊購買了什麼東西)。
二、尋找最近鄰居。
這一步就是尋找與你距離最近的用戶,測算距離一般採用以下三種算法:
1.皮爾森相關係數。
2.餘弦相似性。
3調整餘弦相似性。 調整餘弦相似性似乎效果會好一些。
三、推薦。
產生了最近鄰居集合後,就根據這個集合對未知項進行評分預測。把評分最高的N個項推薦給用戶。
這種算法存在性能上的瓶頸,當用戶數越來越多的時候,尋找最近鄰居的複雜度也會大幅度的增長。
因而這種算法無法滿足及時推薦的要求。基於項的協同過濾解決了這個問題。
基於項的協同過濾算法 根基於用戶的算法相似,只不過第二步改爲計算項之間的相似度。
由於項之間的相似度比較穩定可以在線下進行,所以解決了基於用戶的協同過濾算法存在的性能瓶頸。