轉(zhuǎn)移
相對于搜索引擎的一種連接信息與人的方式。將推薦引擎看作黑盒嚷闭,輸入物品信息攒岛,輸入用戶信息,輸出匹配關(guān)系凌受。
如果你現(xiàn)在想看個電影阵子,但你不知道具體看哪部,你會怎么做胜蛉?大部分的人會問問周圍的朋友挠进,看看最近有什么好看的電影推薦,而我們一般更傾向于從口味比較類似的朋友那里得到推薦
推薦應(yīng)該說分為兩類:個性化推薦和非個性化推薦誊册,“讓全局優(yōu)秀的內(nèi)容被大家看到”應(yīng)該算是非個性化推薦领突,基于人口統(tǒng)計信息的推薦,顆粒較為粗案怯,熱門榜單/最多觀看這類方法可以簡單解決這個問題君旦;不同的人對于“好”的理解不一樣,換句話說也就是偏好不同,所以推薦新加入的好內(nèi)容我認為是個性化推薦問題金砍。個性化推薦的兩個主要思想八個字概括之:物以類聚局蚀、人以群分。
1恕稠、基于物品和用戶的推薦模型琅绅。對物品(用戶)建模,通常是標(biāo)簽或關(guān)鍵字鹅巍,量化求解鄰居進行推薦千扶。基于用戶的 CF(User CF)、基于物品的 CF(Item CF)骆捧。
(基于用戶的鄰居推薦方式)假設(shè)用戶 A 喜歡物品 A澎羞,物品 C,用戶 B 喜歡物品 B敛苇,用戶 C 喜歡物品 A 妆绞,物品 C 和物品 D;從這些用戶的歷史喜好信息中接谨,我們可以發(fā)現(xiàn)用戶 A 和用戶 C 的口味和偏好是比較類似的摆碉,同時用戶 C 還喜歡物品 D塘匣,那么我們可以推斷用戶 A 可能也喜歡物品 D脓豪,因此可以將物品 D 推薦給用戶 A。
(基于物品的鄰居推薦方式)假設(shè)用戶 A 喜歡物品 A 和物品 C忌卤,用戶 B 喜歡物品 A扫夜,物品 B 和物品 C,用戶 C 喜歡物品 A驰徊,從這些用戶的歷史喜好可以分析出物品 A 和物品 C 時比較類似的笤闯,喜歡物品 A 的人都喜歡物品 C,基于這個數(shù)據(jù)可以推斷用戶 C 很有可能也喜歡物品 C棍厂,所以系統(tǒng)會將物品 C 推薦給用戶 C颗味。
每首歌有超過 100 個元數(shù)據(jù)特征,包括歌曲的風(fēng)格牺弹,年份浦马,演唱者等等。
2张漂、基于關(guān)聯(lián)規(guī)則的推薦模型晶默。發(fā)現(xiàn)用戶與物品之間的關(guān)聯(lián)關(guān)系。協(xié)同過濾推薦航攒。
3磺陡、基于模型的推薦模型,機器學(xué)習(xí)的方式,訓(xùn)練用戶喜好模型币他。
推薦模型與具體場景關(guān)系很大坞靶。物品數(shù)目與用戶數(shù)目的關(guān)系也是其中的因素之一。
現(xiàn)行的推薦往往不是單純用一種推薦模型蝴悉,而是多種方式混合滩愁。1、加權(quán)的混合(Weighted Hybridization): 用線性公式(linear formula)將幾種不同的推薦按照一定權(quán)重組合起來辫封,具體權(quán)重的值需要在測試數(shù)據(jù)集上反復(fù)實驗硝枉,從而達到最好的推薦效果。2倦微、切換的混合(Switching Hybridization):前面也講到妻味,其實對于不同的情況(數(shù)據(jù)量,系統(tǒng)運行狀況欣福,用戶和物品的數(shù)目等)责球,推薦策略可能有很大的不同,那么切換的混合方式拓劝,就是允許在不同的情況下雏逾,選擇最為合適的推薦機制計算推薦。3郑临、分區(qū)的混合(Mixed Hybridization):采用多種推薦機制栖博,并將不同的推薦結(jié)果分不同的區(qū)顯示給用戶。其實厢洞,Amazon仇让,當(dāng)當(dāng)網(wǎng)等很多電子商務(wù)網(wǎng)站都是采用這樣的方式,用戶可以得到很全面的推薦躺翻,也更容易找到他們想要的東西丧叽。4、分層的混合(Meta-Level Hybridization): 采用多種推薦機制公你,并將一個推薦機制的結(jié)果作為另一個的輸入踊淳,從而綜合各個推薦機制的優(yōu)缺點,得到更加準(zhǔn)確的推薦陕靠。
亞馬遜推薦機制:
( 在做推薦時迂尝,設(shè)計和用戶體驗也做得特別獨到:1、基于社會化的推薦懦傍,Amazon 會給你事實的數(shù)據(jù)雹舀,讓用戶信服,例如:購買此物品的用戶百分之多少也購買了那個物品粗俱;2说榆、基于物品本身的推薦,Amazon 也會列出推薦的理由,例如:因為你的購物框中有 ***签财,或者因為你購買過 ***串慰,所以給你推薦類似的 ***)
今日推薦 (Today's Recommendation For You): 通常是根據(jù)用戶的近期的歷史購買或者查看記錄,并結(jié)合時下流行的物品給出一個折中的推薦唱蒸。
新產(chǎn)品的推薦 (New For You): 采用了基于內(nèi)容的推薦機制 (Content-based Recommendation)邦鲫,將一些新到物品推薦給用戶。在方法選擇上由于新物品沒有大量的用戶喜好信息神汹,所以基于內(nèi)容的推薦能很好的解決這個“冷啟動”的問題庆捺。
捆綁銷售 (Frequently Bought Together): 采用數(shù)據(jù)挖掘技術(shù)對用戶的購買行為進行分析,找到經(jīng)常被一起或同一個人購買的物品集屁魏,進行捆綁銷售滔以,這是一種典型的基于項目的協(xié)同過濾推薦機制。
別人購買 / 瀏覽的商品 (Customers Who Bought/See This Item Also Bought/See): 這也是一個典型的基于項目的協(xié)同過濾推薦的應(yīng)用氓拼,通過社會化機制用戶能更快更方便的找到自己感興趣的物品你画。
相似度計算:歐幾里得空間距離,歐幾里得向量夾角桃漾,皮爾遜相關(guān)系數(shù)坏匪,Cosine 相似度(也被廣泛應(yīng)用于計算文檔數(shù)據(jù)的相似度),Tanimoto 系數(shù)(也稱為 Jaccard 系數(shù)撬统,是 Cosine 相似度的擴展适滓,也多用于計算文檔數(shù)據(jù)的相似度)
鄰居算法:固定數(shù)量的鄰居,不論鄰居的“遠近”宪摧,只取最近的 K 個粒竖,作為其鄰居颅崩;固定距離范圍內(nèi)的鄰居几于,落在以當(dāng)前點為中心,距離為 K 的區(qū)域中的所有點都作為當(dāng)前點的鄰居沿后,這種方法計算得到的鄰居個數(shù)不確定沿彭,但相似度不會出現(xiàn)較大的誤差。
某種協(xié)同過濾算法:
潛在因子算法(Latent Factor)尖滚。
這種算法的思想是這樣:每個用戶(user)都有自己的偏好喉刘,比如A喜歡帶有小清新的、吉他伴奏的漆弄、王菲等元素(latent factor)睦裳,如果一首歌(item)帶有這些元素,那么就將這首歌推薦給該用戶撼唾,也就是用元素去連接用戶和音樂廉邑。每個人對不同的元素偏好不同,而每首歌包含的元素也不一樣。
對于用戶蛛蒙,定義潛在因子矩陣Q:(0為不喜歡糙箍,1為喜歡)
張三:小清新0.6,重口味0.8牵祟,優(yōu)雅0.1深夯,傷感0.1,五月天0.7诺苹;
對于物品咕晋,定義潛在因子矩陣P:
歌曲A:小清新0.9,重口味0.5收奔,優(yōu)雅0.3捡需,傷感0.6,五月天0.4筹淫;
那么張三對音樂A的偏好為0.6*0.9+0.8*0.5+....
每首歌都有自己的偏好值站辉。偏好值為用戶與音樂的關(guān)系。
如何得到潛在因子损姜?根據(jù)用戶的行為饰剥。單曲循環(huán)=5, 分享=4, 收藏=3, 主動播放=2 , 聽完=1, 跳過=-2 , 拉黑=-5。
那么用戶的行為建立矩陣表摧阅,用戶A
音樂a:5汰蓉;音樂b:空缺;音樂c:空缺棒卷;音樂d:3顾孽;音樂e:-2;音樂f:-5比规;音樂g:空缺若厚;音樂h:-2;音樂i:空缺蜒什;音樂j:2测秸;
通過給定的矩陣表反推用戶矩陣。