好的推薦系統(tǒng),不僅能預測用戶的行為袱箱,還能幫助用戶發(fā)現(xiàn)他們可能感興趣但不容易發(fā)現(xiàn)的東西。
最近看了《推薦系統(tǒng)實踐》义矛,深感個性化推薦在當下的互聯(lián)網(wǎng)產(chǎn)品中的地位发笔,個性化推薦是有效【提高用戶粘度】的方法,從而【鼓勵用戶產(chǎn)生更多的行為】凉翻。但是對于不同階段的產(chǎn)品了讨、不同類型的產(chǎn)品有特定的推薦算法,下面我就簡單介紹一下制轰。
對于一個全新的產(chǎn)品想做個性化量蕊,面對缺少用戶數(shù)據(jù)積累這樣的一個情況,就不得不考慮推薦系統(tǒng)的冷啟動問題(cold start)艇挨。雖說數(shù)據(jù)稀缺残炮,但是仍然有一些方法能幫助產(chǎn)品經(jīng)理獲得一些數(shù)據(jù),這也是我之前沒有考慮到的缩滨。解決方案有如下幾種:
1.直接推薦熱門排行榜:這在某種意義上是群體性的個性化势就,相比隨機推薦效果要好
2.利用注冊信息:很重要!B雎苞冯!性別、年齡侧巨、地區(qū)能極大地縮小推薦范圍
3.提供社交網(wǎng)絡(luò)賬號登錄:很多產(chǎn)品提供第三方社交賬號不僅僅是為了方便舅锄,更重要的是獲得你的社交數(shù)據(jù),從而給你推薦你朋友喜歡過的內(nèi)容
4.登錄時進行興趣詢問:比如在初次使用詢問喜歡的類型以及對應類型下的評分
5.新物品推薦:對于新加入的物品司忱,基于物品內(nèi)容信息的推薦更加可靠皇忿,一段時間后可以利用UserCF和 ItemCF(協(xié)同過濾)
6.找專家標注:一開始沒有用戶行為數(shù)據(jù)也沒有物品內(nèi)容信息,找專家對維度進行標注然后得到相似度列表
解決了冷啟動的問題之后坦仍,用戶在我們的產(chǎn)品上積累了一定的數(shù)據(jù)鳍烁,那么一般會從以下四個維度進行推薦:【基于用戶行為數(shù)據(jù)的推薦】、【基于用戶標簽數(shù)據(jù)的推薦】繁扎、【基于上下文信息的推薦】幔荒、【基于社交網(wǎng)絡(luò)的推薦】糊闽。
1.基于用戶行為數(shù)據(jù)的推薦應用比較廣泛,適合各種各樣的網(wǎng)站爹梁、APP右犹。
1.基于用戶的協(xié)同過濾(UserCF):物以類聚,人以群分姚垃。如果你們喜歡的東西重合度很高念链,那么TA喜歡過的東西就很有可能被你喜歡。比如新浪微博推薦好友時莉炉,首先會去找那些和你【共同關(guān)注數(shù)】高的好友中你未關(guān)注的人钓账。
2.基于物品的協(xié)同過濾(ItemCF):與UserCF類似,只不過是基于物品相似表絮宁,物品相似表可以基于物品內(nèi)容構(gòu)建梆暮,也可以基于該物品被類似的一群人喜歡過作為相似度的依據(jù)來構(gòu)建。
3.隱語義模型:如果你喜歡某樣東西绍昂,那么先去找這樣東西屬于哪個類啦粹,推薦給你這個類下的其他東西即可。
4.基于圖的模型:用戶u對物品i進行了操作窘游,就可以表示為(u,i),這樣一來就可以構(gòu)成一個用戶-物品的二部圖唠椭,通過考慮兩個頂點之間的路徑數(shù)】、【兩個頂點之間路徑的長度】忍饰、【兩個頂點之間路徑經(jīng)過的頂點】對用戶u作一個TopN的用戶序列排名贪嫂。
2.基于用戶標簽的推薦:這樣的推薦形式需要用戶給內(nèi)容打標簽,如最早的書簽社交網(wǎng)站Delicious艾蓝,現(xiàn)在的文藝青年社區(qū)豆瓣也有大量讓你選擇你看過的電影力崇、圖書并且鼓勵你打標簽,這種基于分眾分類的方式能匯聚集體智慧幫助用戶找到他喜歡的內(nèi)容赢织。
3.基于上下文的推薦:就是要考慮時間亮靴、位置、心情等因素于置,比如對于電商網(wǎng)站來說夏天和冬天推薦的商品應該不同茧吊,對于音樂類軟件來說早晨和晚上推薦的歌曲應該不同,團購網(wǎng)站來說八毯,應該基于地理位置推薦附近的商家搓侄。
4.基于社交網(wǎng)絡(luò)關(guān)系的推薦:這類推薦適合有豐富社交關(guān)系的網(wǎng)站,如新浪微博宪彩、facebook休讳、instagram。
1.基于領(lǐng)域的社會化推薦算法:衡量用戶u和用戶v的熟悉程度和興趣相似度尿孔。
2.基于圖的社會化推薦算法:比如豆瓣就有群組,可以構(gòu)成群組-用戶-內(nèi)容的圖結(jié)構(gòu),再對內(nèi)容進行排序
3.信息流推薦:比如在微博中我關(guān)注用戶很多活合,但并不是所有的言論我都感興趣雏婶,因此推薦系統(tǒng)應該對信息流進行排序。排序依據(jù)可以參考facebook的EdgeRank,其主要思路如下:Facebook的EdgeRank綜合考慮了每個會話的時間白指、長度與用戶興趣的相似度留晚,它將其他用戶對當前用戶信息流中的會話產(chǎn)生過行為的行為稱為edge,一條會話的權(quán)重定義為∑(Edges e)UeWeDe告嘲,結(jié)論就是如果一個會話被你熟悉的好友最近產(chǎn)生過重要的行為错维,它就會有比較高的權(quán)重。但這個EdgeRank算法只考慮了社會化推薦橄唬,對內(nèi)容本身沒有考慮赋焕,因此加入會話長度,話題相關(guān)性和用戶熟悉程度能有效提升算法的準確度仰楚。
算法構(gòu)成了推薦系統(tǒng)的核心隆判,除此之外應該將UI、日志系統(tǒng)都納入到整個推薦工作的考慮當中來僧界,他們是互相配合和支持的侨嘀。
總的來說就是這四類,可以結(jié)合自己產(chǎn)品的特點捂襟,有針對性的收集相關(guān)數(shù)據(jù)咬腕,如在注冊界面要求選擇個人基本信息、添加標簽或評價反饋機制葬荷,當然這樣的功能改動以不增加用戶負擔和不影響用戶體驗為前提涨共,推薦系統(tǒng)是一個產(chǎn)品不可或缺的一部份,需要用系統(tǒng)和長遠的眼光重視這個部分闯狱。