當前位置:編程學習大全網 - 編程語言 - 推薦算法綜述

推薦算法綜述

輸入:包含許多特征用戶相關數據:

用戶的註冊信息(職業、年齡、性別等顯性信息)和行為信息(使用功能、有效使用時長等隱性信息)。

輸出:向用戶推薦的功能列表(按得分排序)

功能:傳統算法,機器學習算法,深度學習算法。

基於人氣的算法非常簡單粗暴,類似於各大新聞、微博熱榜等。根據VV、UV、日均PV或分享率等數據,按照壹定的受歡迎程度(加權)推薦給用戶。

訪問量(VV):記錄所有訪問者在1天內訪問網站的次數。同壹訪問者可能會多次訪問該網站,並且訪問次數是累積的。

獨立訪問者(UV):記錄所有訪問者在1天內訪問網站的次數。雖然同壹個訪問者可以多次訪問網站,但只算作1個獨立訪問者。

PV視圖:即頁面視圖。每次打開或刷新頁面,PV值為+1。

優點:算法簡單,適合新註冊用戶。

缺點:無法為用戶提供個性化推薦。

改進:基於這個算法可以做壹些優化,比如對用戶群體的人氣進行排名,通過推薦熱門榜單上的體育內容來優先考慮體育愛好者,向愛談政治的用戶推送政治人物的熱門文章。

基於用戶的協同過濾推薦算法(UserCF):對於目標用戶(A),首先找到“其他用戶”(BCD...)通過他與他相似的興趣、愛好或行為習慣,再推BCD的物品或功能...喜歡並且A沒有瀏覽過A..

基於項目的協同過濾推薦算法(ItemCF):比如因為之前看過張藝謀導演的電影《英雄》,所以會推薦《紅高粱》和《歸來》壹樣的電影。

1)分析用戶對物品的評價,通過瀏覽記錄和購買記錄得到用戶的隱性評分;

2)根據用戶對文章的隱含評分,計算得到所有用戶之間的相似度;

3)選擇與目標用戶最相似的K個用戶;

4)向目標用戶推薦k個用戶隱藏分數最高且目標用戶未瀏覽過的項目。

優勢:

基於用戶的協同過濾推薦算法是向目標用戶推薦與他有相同興趣的用戶喜歡的物品,因此算法推薦更具有社會性,即推薦的物品是群體中與用戶興趣壹致的熱門物品;

適用於物品比用戶多,物品時效性強的情況,否則計算慢;

可以達到跨域和高驚喜的效果。

缺點:

很多情況下,很多用戶之間只有少數* * *相同的評分,即用戶之間的重合度不高,唯壹* * *相同評分的物品往往是壹些非常普通的物品,比如票房大片、生活用品等;

用戶之間的距離可能變得非常快,這種離線算法很難即時更新推薦結果;

推薦結果的個性化弱而寬泛。

改進:

兩個用戶對熱門物品有相似的興趣,並不代表他們完全有相似的興趣,此時應該加大懲罰力度;

如果兩個用戶同時喜歡相同的物品,可以給他們更高的相似度;

在描述鄰居用戶的喜好時,對其最近喜歡的物品給予較高的權重;

以相似地區用戶的行為作為推薦的主要依據。

1)分析每個用戶對物品的瀏覽記錄;

2)根據瀏覽記錄的分析,得出所有條目之間的相似度;

3)對於目標用戶評價高的條目,找出相似度最高的K個條目;

4)將k個項目中目標用戶未瀏覽過的項目推薦給目標用戶。

優勢:

基於項目的協同過濾推薦算法是為目標用戶推薦與他之前喜歡的項目相似的項目,所以基於項目的協同過濾推薦算法的推薦更個性化,因為推薦的項目壹般符合目標用戶的獨特興趣。

項目之間的距離可能是根據幾百萬用戶的隱性評分計算出來的,它往往在壹段時間內保持穩定。所以這個算法可以提前計算距離,它的在線部分可以更快的產生推薦列表。

應用廣泛,尤其是在電商行業。

適合用戶多,項目少,否則計算慢。

推薦準確率高,更個性化。

傾向於推薦同類產品。

缺點:

不同領域最受歡迎的項目往往具有很高的相似度。比如基於這個算法,我們可能會把汪峰的歌推薦給喜歡聽Vae的歌的同學,也就是推薦不同領域的暢銷作品,而這樣的推薦結果可能並不是我們想要的。

貨物冷啟動,數據稀疏時效果不好。

推薦的多樣性不足,形成信息閉環。

改進:

如果是熱門物品,很多人喜歡,就會接近1,造成很多物品類似於熱門物品。這時候應該加大處罰力度;

活躍用戶對項目相似性的貢獻小於不活躍用戶;

同壹用戶在短時間間隔內喜歡的兩個產品之間可以給出更高的相似度;

在描述目標用戶的喜好時,給他們最近喜歡的商品較高的權重;

可以在同壹用戶在同壹地區喜歡的兩個產品之間給出更高的相似性。

(相似度計算:余弦相似度、雅克卡系數、皮爾遜相關系數等。)

常見的經典ML分類算法:

邏輯回歸(邏輯回歸)

支持向量機(SVM)

隨機森林

增強算法:AdaBoost,GBDT,XGboost。

壹般處理流程:數據處理-& gt;特色工程->;型號選擇->;交叉驗證->;模型選擇和模型融合

特征清洗:拒絕不可信的樣本,忽略默認值過多的字段。

特征預處理:單個特征(歸壹化、離散化、缺失值補全、數據轉換)和多個特征(PCA/LDA降維、特征選擇)

工具:pandas(python開源庫)

模型選擇和模型融合:根據交叉驗證得分選擇出排名靠前的模型,然後進行模型融合(裝袋、助推、堆疊)。

DL的優勢:ML中的特征工程很重要,要根據行業經驗來確定。DL可以自己從數據中學習特征。DL可以自動對輸入的低階特征進行組合和變換,得到高階特征。對於公司的產品應用領域,用戶的註冊信息(職業、年齡、性別等明顯信息。)和行為信息(使用功能、有效使用時長等隱藏信息)。這些可以用作低階特征輸入。

RNN系列(處理文本數據)

CNN系列(處理圖像數據)

DNN(處理總分類)

  • 上一篇:什麽是統計學怎樣理解統計學與統計數據的關系 什麽
  • 下一篇:求文檔: AT89C2051-24PU中文資料
  • copyright 2024編程學習大全網