這週看了推薦系統實戰這本書,其中基本上介紹的比較全面,但是每一部分並沒有十分深入,深入的精華全部都在下方的備註當中,備註中有很多的**,可以進行進一步的學習。
1 根據使用者的歷史行為,表達過反饋的item進行item的**,傳統的itemcf
2 根據使用者的歷史行為,找到相似使用者,進行**, usercf
3 根據使用者的喜好和個人資訊,提取使用者的特徵,喜歡的物品的特徵,進行**。基本上就是建立模型的思路
在提取了特徵資訊之後如果是要計算兩個物品的相似性,那麼表達為特徵向量,兩個特徵向量直接相乘,如果是想直接直接得到預估結果,比如直接根據ctr排序等,那麼利用機器學習的模型,進行訓練。
一般系統的特徵是十分多的,最近做的乙個例項大概涉及2000萬+的特徵資訊,如果乙個系統把所有特徵都考慮不現實,通過配置檔案進行配置很麻煩,一般是多個推薦引擎一起工作,在按照一定的權重和優先順序進行組合。
a 使用者特徵
一般分為使用者的行為特徵,從使用者日誌中進行行為提取,再進行行為特徵轉換,而對於屬性特徵,就可以直接根據資訊轉化為特徵向量
b 生成初始化推薦列表
如果使用者對物品a產生了行為,候選列表中b希望被推薦,a比較流行,b不流行,那麼,b在a中的相關性計算的分肯定不會靠前(一般也會有抑制流行度的方法),那麼topn推薦的時候可能不會有b,推薦的都是不在推薦列表中的物品,那麼如果在最後進行簡單過濾,可能導致推薦商品會很少,所以在這裡,就應該適當根據推薦列表,增加列表中物品的權重資訊。
c 過濾模組
過濾到不滿意的物品,比如,使用者操作過的,質量很差的。。。
d 排名模組
1 新穎性 在推薦過程中,對熱門的物品進行降權
2 多樣性 對展現過的商品權重衰弱,通過根據使用者的歷史行為多挖掘主題,進行推薦
3 時間多樣性 系統實時性 商品根據時間因子衰減
1 在cf的推薦過程中,一定要注意抑制物品,使用者的活躍性因子。同時在計算相關性的時候,注意進行歸一化操作 物品總是屬於很多的類別,每個類別內部的物品的相似性也是不同的,所以最好類別進行歸一化
2 隱語義模型 根據隱含特徵聯絡使用者的興趣和物品,根據使用者行為自動聚類 使用者u與第k個隱含類的關係*第k個隱含類和物品i的關係 ,計算量比較大,如果不能先生成候選列表,不適合在實時應用,同時不好對結果進行解釋
3 為模型抽樣或者生成負樣本的時候,盡量保持正負均衡,同時負樣本盡量選擇熱門但是使用者沒有行為的
4 如何處理實時推薦系統的實時性問題
5 冷啟動問題
lda包括3個個元素 文件,話題,詞語通過收斂使詞語組合為不同的話題,根據物品在話題上的分布,計算物品的相似性。計算分布相似性kl
推薦系統實戰
其中,r u 表示對使用者推薦的n個物品,t u 表示使用者u在測試集上喜歡的物品集合。jaccard公式 其中,n u 表示使用者u有過正反饋的物品集合。余弦相似度公式 其中,s u,k 表示和使用者u興趣最接近的k個使用者集合 n i 表示對物品i有過正反饋的使用者集合 w u,v 表示使用者u...
推薦系統實戰
推薦系統實戰 recommender systems 將介紹推薦系統的基本原理和發展,並 一些常用的基本技術來構建具有不同可用資料來源的推薦系統及其實現。具體地說,將學習如何 使用者對乙個潛在專案的評價,如何生成乙個專案的推薦列表,以及如何從豐富的功能中 點選率。這些任務在實際應用程式中很常見。將獲...
ALS推薦系統實戰
拿到某超市的銷售資料,將資料整理後得到一年三千萬條交易記錄,想試試用spark中的推薦系統做一下 先把資料匯入到hdfs中,資料需要使用者id,商品id,和購買次數,這裡我拿購買次數當作電影推薦系統中的電影評分 hdfs中的資料用 分割開。如下 461365 22535 1.0 461365 505...