個性化推薦是怎么做的漏策?產(chǎn)品經(jīng)理也可以懂的算法

今日頭條帶動了“個性化推薦”的概念茂翔,自此之后,無論是工具產(chǎn)品,電商產(chǎn)品,還是內(nèi)容型的產(chǎn)品,都自帶內(nèi)容屬性但荤,個性化算法也逐漸從賣點(diǎn)變?yōu)闃?biāo)配。

各種推薦算法不能僅僅是研發(fā)涉獵領(lǐng)域涧至,作為PM腹躁,也要深入到算法內(nèi)部,了解算法的設(shè)計南蓬,以及結(jié)合內(nèi)容對算法不斷“調(diào)教”纺非,才能讓產(chǎn)品的推薦算法不斷完善,才能符合用戶的口味赘方。

目前比較流行的個性化推薦算法有以下幾種:

基于內(nèi)容的推薦:根據(jù)內(nèi)容本身的屬性(特征向量)所作的推薦烧颖。

基于關(guān)聯(lián)規(guī)則的推薦:“啤酒與尿布”的方式,是一種動態(tài)的推薦窄陡,能夠?qū)崟r對用戶的行為作出推薦炕淮。是基于物品之間的特征關(guān)聯(lián)性所做的推薦,在某種情況下會退化為物品協(xié)同過濾推薦跳夭。

協(xié)同過濾推薦:與基于關(guān)聯(lián)規(guī)則的推薦相比是一種靜態(tài)方式的推薦涂圆,是根據(jù)用戶已有的歷史行為作分析的基礎(chǔ)上做的推薦”姨荆可分為物品協(xié)同過濾润歉、用戶協(xié)同過濾、基于模型的協(xié)同過濾套硼。其中卡辰,基于模型的協(xié)同又可以分為以下幾種類型:基于距離的協(xié)同過濾;基于矩陣分解的協(xié)同過濾邪意,即Latent Factor Model(SVD)或者ALS九妈;基于圖模型協(xié)同,即Graph雾鬼,也叫社會網(wǎng)絡(luò)圖模型萌朱。

1、產(chǎn)品冷啟動通過熱度算法進(jìn)行內(nèi)容推薦

產(chǎn)品發(fā)展初期策菜,由于一方面沒有用戶行為晶疼、用戶喜好、用戶畫像又憨,另外也沒有大量的內(nèi)容樣本基礎(chǔ)翠霍,是很難開展個性化推薦的。所以在產(chǎn)品初期蠢莺,一般采取“熱度算法”寒匙,顧名思義就是把熱點(diǎn)的內(nèi)容優(yōu)先推薦給用戶。雖然無法做到基于興趣和習(xí)慣為每一個用戶做到精準(zhǔn)化的推薦躏将,但能覆蓋到大部分的內(nèi)容需求锄弱,而且啟動成本比個性化推薦算法低太多。

熱度算法基本原理:

新聞熱度分 = 初始熱度分 + 用戶交互產(chǎn)生的熱度分 – 隨時間衰減的熱度分

Score = S0 + S(Users) – S(Time)

1)以新聞或視頻較有時效性的內(nèi)容舉例祸憋,熱度隨內(nèi)容陳舊而分值衰減会宪。

2)初始熱度分不要一視同仁。

按照新聞類別給予新聞不同的初始熱度蚯窥,讓用戶關(guān)注度高的類別獲得更高的初始熱度分掸鹅,從而獲得更多的曝光。軍事>娛樂>體育>財經(jīng)....

對于重大事件的報道拦赠,如何讓它入庫時就有更高的熱度巍沙,我們采用的是熱詞匹配的方式。


即對大型新聞?wù)军c(diǎn)的頭條矛紫,Twitter熱點(diǎn)赎瞎,競品的頭條做監(jiān)控和扒取,并將這批新聞的關(guān)鍵詞維護(hù)到熱詞庫并保持更新颊咬;每條新聞入庫的時候务甥,讓新聞的關(guān)鍵詞去匹配熱詞庫,匹配度越高喳篇,就有越高的初始熱度分敞临。這樣處理后,重大事件發(fā)生時麸澜,Twitter和門戶網(wǎng)站的爭相報道會導(dǎo)致熱詞集中化挺尿,所有匹配到這些熱詞的新聞,即報道同樣事件的新聞,會獲得很高的初始熱度分编矾。

3)用戶交互的熱度分值比重不一熟史。首先明確用戶的的哪些行為會提高新聞的熱度值,然后對這些行為賦予一定的得分規(guī)則窄俏。

例如對于單條新聞蹂匹,用戶可以點(diǎn)擊閱讀(click),收藏(favor)凹蜈,分享(share)限寞,評論(comment)這四種行為,我們?yōu)椴煌男袨橘x予分?jǐn)?shù)仰坦,就能得到新聞的實(shí)時用戶行為分為:

S(Users) = 1*click + 5*favor + 10*comment + 20*share

這里對不同行為賦予的分?jǐn)?shù)為1,5,10,20履植,但這個值不能是一成不變的;當(dāng)用戶規(guī)模小的時候悄晃,各項事件都小玫霎,此時需要提高每個事件的行為分來提升用戶行為的影響力;當(dāng)用戶規(guī)模變大時传泊,行為分也應(yīng)該慢慢降低鼠渺,因此做內(nèi)容運(yùn)營時,應(yīng)該對行為分不斷調(diào)整眷细。

當(dāng)然也有偷懶的辦法拦盹,那就是把用戶規(guī)模考慮進(jìn)去溪椎,算固定用戶數(shù)的行為分普舆,即:

S(Users) = (1*click + 5*favor + 10*comment + 20*share)/ DAU * N(固定數(shù))

這樣就保證了在不同用戶規(guī)模下,用戶行為產(chǎn)生的行為分基本穩(wěn)定校读。

2沼侣、基于內(nèi)容特征與用戶特征進(jìn)行個性化推薦


對于此種推薦,有兩個實(shí)體:內(nèi)容和用戶歉秫,因此需要有一個聯(lián)系這兩者的東西蛾洛,即為標(biāo)簽。內(nèi)容轉(zhuǎn)換為標(biāo)簽即為內(nèi)容特征化雁芙,用戶則稱為用戶特征化轧膘。對于此種推薦,主要分為以下幾個關(guān)鍵部分:

標(biāo)簽庫

內(nèi)容特征化

用戶特征化

隱語義推薦

綜合上面講述的各個部分即可實(shí)現(xiàn)一個基于內(nèi)容和用戶畫像的個性化推薦系統(tǒng)兔甘。

標(biāo)簽庫

標(biāo)簽是聯(lián)系用戶與物品谎碍、內(nèi)容以及物品、內(nèi)容之間的紐帶洞焙,也是反應(yīng)用戶興趣的重要數(shù)據(jù)源蟆淀。標(biāo)簽庫的最終用途在于對用戶進(jìn)行行為拯啦、屬性標(biāo)記。是將其他實(shí)體轉(zhuǎn)換為計算機(jī)可以理解的語言關(guān)鍵的一步熔任。

標(biāo)簽庫則是對標(biāo)簽進(jìn)行聚合的系統(tǒng)褒链,包括對標(biāo)簽的管理、更新等笋敞。

一般來說碱蒙,標(biāo)簽是以層級的形式組織的荠瘪『幌铮可以有一級維度、二級維度等哀墓。

標(biāo)簽的來源主要有:

已有內(nèi)容的標(biāo)簽

網(wǎng)絡(luò)抓取流行標(biāo)簽

對運(yùn)營的內(nèi)容進(jìn)行關(guān)鍵詞提取

對于內(nèi)容的關(guān)鍵詞提取趁餐,使用結(jié)巴分詞+TFIDF即可。此外篮绰,也可以使用TextRank來提取內(nèi)容關(guān)鍵詞后雷。

這里需要注意的一點(diǎn)是對于關(guān)聯(lián)標(biāo)簽的處理,比如用戶的標(biāo)簽是足球吠各,而內(nèi)容的標(biāo)簽是德甲臀突、英超,那么用戶和內(nèi)容是無法聯(lián)系在一起的贾漏。最簡單的方式是人工設(shè)置關(guān)聯(lián)標(biāo)簽候学,此外也可以使用word2vec一類工具對標(biāo)簽做聚類處理,構(gòu)建主題模型纵散,將德甲梳码、英超聚類到足球下面。

內(nèi)容特征化

內(nèi)容特征化即給內(nèi)容打標(biāo)簽伍掀。目前有兩種方式:

人工打標(biāo)簽

機(jī)器自動打標(biāo)簽

針對機(jī)器自動打標(biāo)簽掰茶,需要采取機(jī)器學(xué)習(xí)的相關(guān)算法來實(shí)現(xiàn),即針對一系列給定的標(biāo)簽蜜笤,給內(nèi)容選取其中匹配度最高的幾個標(biāo)簽濒蒋。這不同于通常的分類和聚類算法“淹茫可以采取使用分詞 +Word2Vec來實(shí)現(xiàn)沪伙,過程如下:

將文本語料進(jìn)行分詞,以空格,tab隔開都可以垛贤,使用結(jié)巴分詞焰坪。

使用word2vec訓(xùn)練詞的相似度模型。

使用tfidf提取內(nèi)容的關(guān)鍵詞A,B,C聘惦。

遍歷每一個標(biāo)簽某饰,計算關(guān)鍵詞與此標(biāo)簽的相似度之和儒恋。

取出TopN相似度最高的標(biāo)簽即為此內(nèi)容的標(biāo)簽。

此外黔漂,可以使用文本主題挖掘相關(guān)技術(shù)诫尽,對內(nèi)容進(jìn)行特征化。這也分為兩種情況:

通用情況下炬守,只是為了效果優(yōu)化的特征提取牧嫉,那么可以使用非監(jiān)督學(xué)習(xí)的主題模型算法。如LSA减途、PLSI和GaP模型或者LDA模型酣藻。

在和業(yè)務(wù)強(qiáng)相關(guān)時,需要在業(yè)務(wù)特定的標(biāo)簽體系下給內(nèi)容打上適合的標(biāo)簽鳍置。這時候需要使用的是監(jiān)督學(xué)習(xí)的主題模型辽剧。如sLDA、HSLDA等税产。

用戶特征化

用戶特征化即為用戶打標(biāo)簽怕轿。通過用戶的行為日志和一定的模型算法得到用戶的每個標(biāo)簽的權(quán)重。

用戶對內(nèi)容的行為:點(diǎn)贊辟拷、不感興趣撞羽、點(diǎn)擊、瀏覽衫冻。對用戶的反饋行為如點(diǎn)贊賦予權(quán)值1诀紊,不感興趣賦予-1;對于用戶的瀏覽行為羽杰,則可使用點(diǎn)擊/瀏覽作為權(quán)值渡紫。

對內(nèi)容發(fā)生的行為可以認(rèn)為對此內(nèi)容所帶的標(biāo)簽的行為。

用戶的興趣是時間衰減的考赛,即離當(dāng)前時間越遠(yuǎn)的興趣比重越低惕澎。時間衰減函數(shù)使用1/[log(t)+1], t為事件發(fā)生的時間距離當(dāng)前時間的大小。

要考慮到熱門內(nèi)容會干預(yù)用戶的標(biāo)簽颜骤,需要對熱門內(nèi)容進(jìn)行降權(quán)唧喉。使用click/pv作為用戶瀏覽行為權(quán)值即可達(dá)到此目的。

此外忍抽,還需要考慮噪聲的干擾八孝,如標(biāo)題黨等。

另鸠项,在非業(yè)務(wù)強(qiáng)相關(guān)的情況下干跛,還可以考慮使用LSA主題模型等矩陣分解的方式對用戶進(jìn)行標(biāo)簽化。

隱語義推薦

有了內(nèi)容特征和用戶特征祟绊,可以使用隱語義模型進(jìn)行推薦楼入。這里可以使用其簡化形式哥捕,以達(dá)到實(shí)時計算的目的。

用戶對于某一個內(nèi)容的興趣度(可以認(rèn)為是CTR):

其中i=1…N是內(nèi)容c具有的標(biāo)簽嘉熊,m(ci)指的內(nèi)容c和標(biāo)簽i的關(guān)聯(lián)度(可以簡單認(rèn)為是1),n(ui)指的是用戶u的標(biāo)簽i的權(quán)重值,當(dāng)用戶不具有此標(biāo)簽時n(ui)=0遥赚,q?指的是內(nèi)容c的質(zhì)量,可以使用點(diǎn)擊率(click/pv)表示阐肤。

3凫佛、其他運(yùn)用

除了個性化推薦,基于內(nèi)容的相關(guān)性算法能精準(zhǔn)地給出一篇新聞的相關(guān)推薦列表孕惜,對相關(guān)閱讀的實(shí)現(xiàn)非常有意義愧薛。此外,標(biāo)簽系統(tǒng)對新聞分類的實(shí)現(xiàn)和提升準(zhǔn)確性诊赊,也有重要的意義厚满。

4、優(yōu)缺點(diǎn)

基于內(nèi)容的推薦算法有幾個明顯優(yōu)點(diǎn):

對用戶數(shù)量沒有要求碧磅,無論日活幾千或是幾百萬,均可以采用遵馆;因此個性化推薦早期一般采用這種方式鲸郊。

每個用戶的特征都是由自己的行為來決定的,是獨(dú)立存在的货邓,不會有互相干擾秆撮,因此惡意刷閱讀等新聞不會影響到推薦算法。

而最主要的缺點(diǎn)就是確定性太強(qiáng)了换况,所有推薦的內(nèi)容都是由用戶的閱讀歷史決定职辨,所以沒辦法挖掘用戶的潛在興趣;也就是由于這一點(diǎn)戈二,基于內(nèi)容的推薦一般與其他推薦算法同時存在舒裤。

基于用戶的協(xié)同推薦


終于,經(jīng)過團(tuán)隊的努力觉吭,你的產(chǎn)品已經(jīng)有了大量活躍用戶了腾供,這時候你開始不滿足于現(xiàn)有的算法。雖然基于內(nèi)容的推薦已經(jīng)很精準(zhǔn)了鲜滩,但總是少了那么一點(diǎn)性感伴鳖。因?yàn)槟闼薪o用戶的內(nèi)容都是基于他們的閱讀習(xí)慣推薦的,沒能給用戶“不期而遇”的感覺徙硅。

于是榜聂,你就開始做基于用戶的協(xié)同過濾了。

基于用戶的協(xié)同過濾推薦算法嗓蘑,簡單來講就是依據(jù)用戶A的閱讀喜好须肆,為A找到與他興趣最接近的群體贴汪,所謂“人以群分”,然后把這個群體里其他人喜歡的休吠,但是A沒有閱讀過的內(nèi)容推薦給A扳埂。

舉例我是一個足球迷,系統(tǒng)找到與我類似的用戶都是足球的重度閱讀者瘤礁,但與此同時阳懂,這些“足球群體”中有一部分人有看NBA新聞的習(xí)慣,系統(tǒng)就可能會給我推薦NBA內(nèi)容柜思,很可能我也對NBA也感興趣岩调,這樣我在后臺的興趣圖譜就更完善了。

1赡盘、用戶群體劃分

做基于用戶的協(xié)同過濾号枕,首先就要做用戶的劃分,可以從三方面著手:

(1)外部數(shù)據(jù)的借用

這里使用社交平臺數(shù)據(jù)的居多陨享,現(xiàn)在產(chǎn)品的登錄體系一般都借用第三方社媒的登錄體系葱淳,如國外的Facebook、Twitter抛姑,國內(nèi)的微信赞厕、微博,借用第三方賬戶的好處多多定硝,例如降低門檻皿桑,方便傳播等,還能對個性化推薦起到重要作用蔬啡。

因?yàn)榈谌劫~戶都是授權(quán)獲取部分用戶信息的诲侮,往往包括性別,年齡箱蟆,工作甚至社交關(guān)系等沟绪,這些信息對用戶群劃分很有意義。

此外還有其他的一些數(shù)據(jù)也能借用顽腾,例如IP地址近零,手機(jī)語種等。

使用這些數(shù)據(jù)抄肖,你很容易就能得到一個用戶是北京的還是上海的久信,是大學(xué)生還是創(chuàng)業(yè)者,并依據(jù)這些屬性做準(zhǔn)確的大類劃分漓摩。

比如一篇行業(yè)投資分析出來后裙士,“上海創(chuàng)業(yè)圈”這個群體80%的用戶都看過,那就可以推薦給剩下的20%管毙。

(2)產(chǎn)品內(nèi)主動詢問

常見在產(chǎn)品首次啟動的時候腿椎,彈框詢問用戶是男是女桌硫,職業(yè)等,這樣能對內(nèi)容推薦的冷啟動提供一些幫助啃炸。但總體來說铆隘,性價比偏低,只能詢問兩三個問題并對用戶的推薦內(nèi)容做非常粗略的劃分南用,同時要避免打擾到用戶膀钠;這種做法算是基于用戶個性化的雛形。

(3)對比用戶特征

新聞的特征加用戶的閱讀數(shù)據(jù)能得到用戶的特征裹虫,那就可以通過用戶特征的相似性來劃分群體肿嘲。

最后總結(jié),沒有一款完美的個性化推薦算法筑公,畢竟用戶的心里你別猜別猜別猜雳窟,但是產(chǎn)品經(jīng)理還是要結(jié)合自身產(chǎn)品不斷打磨算法。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末匣屡,一起剝皮案震驚了整個濱河市封救,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌耸采,老刑警劉巖兴泥,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異虾宇,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)如绸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進(jìn)店門嘱朽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人怔接,你說我怎么就攤上這事搪泳。” “怎么了扼脐?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵岸军,是天一觀的道長。 經(jīng)常有香客問我瓦侮,道長艰赞,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任肚吏,我火速辦了婚禮方妖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘罚攀。我一直安慰自己党觅,他們只是感情好雌澄,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著杯瞻,像睡著了一般镐牺。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上魁莉,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天睬涧,我揣著相機(jī)與錄音,去河邊找鬼沛厨。 笑死宙地,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的逆皮。 我是一名探鬼主播宅粥,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼电谣!你這毒婦竟也來了秽梅?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤剿牺,失蹤者是張志新(化名)和其女友劉穎企垦,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體晒来,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡钞诡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了湃崩。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片荧降。...
    茶點(diǎn)故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖攒读,靈堂內(nèi)的尸體忽然破棺而出朵诫,到底是詐尸還是另有隱情,我是刑警寧澤薄扁,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布剪返,位于F島的核電站,受9級特大地震影響邓梅,放射性物質(zhì)發(fā)生泄漏脱盲。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一震放、第九天 我趴在偏房一處隱蔽的房頂上張望宾毒。 院中可真熱鬧,春花似錦、人聲如沸诈铛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽幢竹。三九已至耳峦,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間焕毫,已是汗流浹背蹲坷。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留邑飒,地道東北人循签。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像疙咸,于是被迫代替她去往敵國和親县匠。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評論 2 348

推薦閱讀更多精彩內(nèi)容