什么是推薦系統(tǒng)
金角大王將寶葫蘆倒置,喊聲:孫行者。悟空應(yīng)了一聲,嗖的一聲便被吸了進(jìn)去。金角大王查看時,里面除了孫悟空,還有行者武松、蒼井空、孫權(quán)、六耳獼猴、金剛等一干人。金角大王驚訝道:只喊孫行者,怎來了這許多。寶葫蘆開口言到:這都是你“可能感興趣的人”。
在大家平時生活中一定也遇到過不少類似的事情,最常見的當(dāng)然就是在大家網(wǎng)上購物時的了,當(dāng)你搜索一個物品或者點贊一個抖音之后,系統(tǒng)便會給你推薦相關(guān)物品或者同類型的抖音短視頻,也就是“可能感興趣的物品和視頻”,通過推薦系統(tǒng)的計算,顧客不需要花費大量的時間才能找到自己想買的商品,商家也可以用更低的成本將自己的產(chǎn)品更精準(zhǔn)的推送到用戶面前。推薦系統(tǒng)在電商網(wǎng)站、新聞網(wǎng)站、電影和視頻、音樂、社交網(wǎng)絡(luò)、廣告等領(lǐng)域已經(jīng)得到了廣泛的應(yīng)用,其作用越來越受到重視。
推薦系統(tǒng)常用算法
推薦算法過程
在講東西推薦給用戶之前,推薦系統(tǒng)首先要做的是分析用戶。這時我們就需要大量的用戶數(shù)據(jù)了,用戶的數(shù)據(jù)越多越詳細(xì)推薦就會越精準(zhǔn)。在物品和用戶分析方面,一些關(guān)鍵字和用戶的基本信息比如用戶年齡、性別、購物偏好、評分以及查看過哪些物品甚至地區(qū)等因素來進(jìn)行分析,通過推薦引擎將不同的物品推薦到不同的用戶面前讓他們看到。
在推薦中,又分為大眾化推薦、差異化推薦、個性化推薦;大眾化推薦,顧名思義是對大眾進(jìn)行推薦的,其主要是推薦一些熱銷產(chǎn)品,精品等;而差異化推薦則會通過用戶的瀏覽記錄、購買記錄這些來進(jìn)行推薦;個性化推薦,就會根據(jù)用戶的個人偏好了。
協(xié)同過濾算法
協(xié)同過濾推薦算法是誕生最早,并且較為著名的推薦算法。主要的功能是預(yù)測和推薦。算法通過對用戶歷史行為數(shù)據(jù)的挖掘發(fā)現(xiàn)用戶的偏好,基于不同的偏好對用戶進(jìn)行群組劃分并推薦品味相似的商品。協(xié)同過濾推薦算法分為兩類,分別是基于用戶的協(xié)同過濾算法(user-based collaboratIve filtering),和基于物品的協(xié)同過濾算法(item-based collaborative filtering)。簡單的說就是:人以類聚,物以群分。下面我們將分別說明這兩類推薦算法的原理和實現(xiàn)方法。
于用戶的協(xié)同過濾算法是通過用戶的歷史行為數(shù)據(jù)發(fā)現(xiàn)用戶對商品或內(nèi)容的喜歡(如商品購買,收藏,內(nèi)容評論或分享),并對這些喜好進(jìn)行度量和打分。根據(jù)不同用戶對相同商品或內(nèi)容的態(tài)度和偏好程度計算用戶之間的關(guān)系。在有相同喜好的用戶間進(jìn)行商品推薦。簡單的說就是如果A,B兩個用戶都購買了x,y,z三本圖書,并且給出了5星的好評。那么A和B就屬于同一類用戶。可以將A看過的圖書w也推薦給用戶B。計算用戶之間的相似度,根據(jù)相似度排序選擇n個用戶,將這些用戶喜歡的物品集合中的目標(biāo)用戶還沒有產(chǎn)生行為的物品推薦給目標(biāo)用戶
相似度計算有幾種經(jīng)典的算法:杰卡德系數(shù)、歐氏距離、杰卡德系數(shù) 、歐氏距離、余弦相似度 、皮爾遜相似度都是比較常見的
在這里不多做介紹了,如果大家有興趣可以加圖片下方的群去了解一下,關(guān)于推薦系統(tǒng)的理論和實戰(zhàn)會像實時交易監(jiān)控系統(tǒng)那樣錄制成視頻免費分享給大家。
大多數(shù)情況下,幾種方式計算的結(jié)果是一致的
杰卡德系數(shù)關(guān)心的是樣本間共同具有的特征,只能處理符號或布爾值類型的維度數(shù)據(jù)
歐氏距離能夠體現(xiàn)個體數(shù)值特征的絕對差異,所以更多的用于需要從維度的數(shù)值大小中體現(xiàn)差異的分析
余弦相似度更多的是從方向上區(qū)分差異,而對絕對的數(shù)值不敏感,更多的用于使用用戶對內(nèi)容評分來區(qū)分興趣的相似度和差異
皮爾遜相似度相當(dāng)于中心化后再計算余弦相似度,當(dāng)維度取值范圍不一致時可以得到更精確的結(jié)果
基于物品的協(xié)同過濾
協(xié)同過濾的選擇
基于用戶:
推薦跟用戶相似的用戶喜歡的物品
需計算用戶兩兩之間的相似度,有新的用戶或者用戶有新的行為需要重新計算
新用戶行為較少時不能立即進(jìn)行基于用戶的推薦;
新的物品上線后,只要有用戶產(chǎn)生過行為,就可以將其推薦給相似的用戶
基于相似用戶的喜好,可以提供更好的多樣性;傾向于推薦熱門物品,不擅長推薦長尾物品適合社會化場景以及物品變化較頻繁的場景的推薦,如新聞、博客等內(nèi)容網(wǎng)站
基于物品:
推薦跟用戶之前喜歡的物品相似的物品
需計算物品兩兩之間的相似度,有新的物品需要重新計算
新用戶對某個物品產(chǎn)生行為,就可以推薦相關(guān)的物品;新的物品需要經(jīng)過離線計算與其他物品的相似度后才能被推薦
基于用戶歷史相關(guān)的物品,物品種類可能比較單一;按照物品相似性推薦,能更好的挖掘長尾物品
適合電商網(wǎng)站等用戶的數(shù)量往往大大超過物品的數(shù)量,同時物品的數(shù)據(jù)相對穩(wěn)定的場景的推薦
關(guān)于大數(shù)據(jù)推薦系統(tǒng)的理論與實戰(zhàn)的詳細(xì)講解,我分成兩期錄制了視頻,如果大家對推薦系統(tǒng)感興趣和想學(xué)習(xí)大數(shù)據(jù)的同學(xué)可以加群:724693112免費領(lǐng)取視頻學(xué)習(xí),群里還有其它大數(shù)據(jù)相關(guān)的學(xué)習(xí)資料可以領(lǐng)取。
推薦系統(tǒng)架構(gòu)
推薦流程
海量Item、召回、候選集合、排序、排序列表、規(guī)則、topN、展示、結(jié)果頁面。
各大企業(yè)推薦系統(tǒng)架構(gòu)
下面我們看看亞馬遜、優(yōu)酷、攜程、陸金所等知名企業(yè)的推薦系統(tǒng)架構(gòu)是怎樣的
亞馬遜推薦系統(tǒng)架構(gòu)
攜程推薦系統(tǒng)架構(gòu)
優(yōu)酷推薦系統(tǒng)架構(gòu)
陸金所推薦系統(tǒng)架構(gòu)
通用架構(gòu)
電影推薦系統(tǒng)
最后和大家一起看看電影推薦系統(tǒng)的一個架構(gòu)
推薦數(shù)據(jù)源:
第一類:視頻數(shù)據(jù)流,視頻元數(shù)據(jù)(標(biāo)題,描述等)
第二類:用戶活動數(shù)據(jù),主要分為兩種。
1 -> 直接活動:對電影評分,對電影點贊,訂閱一個上傳
2 -> 間接活動:用戶觀看電影的時長