認(rèn)識(shí)個(gè)性化推薦系統(tǒng):從推薦算法到產(chǎn)品冷啟動(dòng)

4 評(píng)論 28951 瀏覽 210 收藏 20 分鐘

關(guān)于個(gè)性化推薦系統(tǒng)你了解多少?推薦算法如何結(jié)合到產(chǎn)品冷啟動(dòng)中?文章一一解析。

為什么需要個(gè)性化推薦?

科技進(jìn)步帶來(lái)的是更大程度地提高效率和生產(chǎn)力已經(jīng)是無(wú)可爭(zhēng)辯的事實(shí)。

隨著時(shí)代變遷的廣告業(yè),從廣播、電視業(yè)廣告的輝煌,到互聯(lián)網(wǎng)門(mén)戶(hù)時(shí)代的banner廣告和狂轟亂炸的edm,再到了搜索引擎和移動(dòng)互聯(lián)網(wǎng)時(shí)代的推薦位廣告,隨著人們的數(shù)據(jù)可被記錄并且計(jì)算,也隨之產(chǎn)生了計(jì)算廣告學(xué)這門(mén)新興學(xué)科。

從廣撒網(wǎng)的廣告形式到精準(zhǔn)地捕捉到用戶(hù)的需求,并且呈現(xiàn)給用戶(hù)更加恰當(dāng)?shù)膹V告,給互聯(lián)網(wǎng)公司帶來(lái)了巨額的廣告收入,這中間推薦系統(tǒng)功不可沒(méi)。

早期的門(mén)戶(hù)網(wǎng)站充斥著banner廣,并沒(méi)有精準(zhǔn)觸達(dá)用戶(hù)

電商的推薦系統(tǒng)則幫助電商網(wǎng)站大大提高銷(xiāo)售額,亞馬遜通過(guò)個(gè)性化推薦系統(tǒng)能夠提高35%的銷(xiāo)售量。

在2016年,推薦算法能夠?yàn)镹etflix節(jié)省每年10億美元。讓其中的冷門(mén)內(nèi)容也能夠發(fā)揮作用,需要依賴(lài)基于用戶(hù)習(xí)慣數(shù)據(jù)的個(gè)性化推薦系統(tǒng)——利用個(gè)性化推薦,相比簡(jiǎn)單展示最受歡迎清單,觀看率提升3-4倍。

而近兩年興起的內(nèi)容分發(fā)類(lèi)產(chǎn)品更是基于內(nèi)容推薦的個(gè)性化推薦收獲了大量用戶(hù)的注意力。今日頭條、一點(diǎn)資訊,或是百度的feed流產(chǎn)品,已經(jīng)成為了除了微信之外的“時(shí)間殺手”。讓用戶(hù)愿意沉浸其中的原因,除了產(chǎn)品內(nèi)容本身的建設(shè),也有來(lái)自于個(gè)性化推薦的重要力量。

推薦系統(tǒng)的核心思想:集群智慧

凱文凱利曾經(jīng)在《失控》中曾經(jīng)說(shuō)到蜂群的故事:

蜜蜂看到一條信息:“去那兒,那是個(gè)好地方”。它們?nèi)タ催^(guò)之后回來(lái)舞蹈說(shuō),“是的,真是個(gè)好地方?!?通過(guò)這種重復(fù)強(qiáng)調(diào),所屬意的地點(diǎn)吸引了更多的探訪(fǎng)者,由此又有更多的探訪(fǎng)者加入進(jìn)來(lái)。按照收益遞增的法則,得票越多,反對(duì)越少。漸漸地,以滾雪球的方式形成一個(gè)大的群舞,成為舞曲終章的主宰,最大的蜂群獲勝。

動(dòng)物的集群智慧

凱文凱利用超級(jí)有機(jī)體可以來(lái)形容蜂群。同樣,這個(gè)詞也可以來(lái)形容整個(gè)互聯(lián)網(wǎng)上的人群。他們?cè)诰W(wǎng)絡(luò)上留下的痕跡可以說(shuō)是無(wú)意識(shí)的,但是也帶有了某種“集群的意識(shí)”。

扯遠(yuǎn)了,還是來(lái)看看互聯(lián)網(wǎng)集群智慧的例子:

Wikipedia-用戶(hù)貢獻(xiàn)內(nèi)容:Wikipedia是一件集群智慧的典型產(chǎn)物,它完全由用戶(hù)來(lái)維護(hù),因?yàn)槊恳黄恼露紩?huì)有大量的用戶(hù)去進(jìn)行修改,所以最終的結(jié)果很少出現(xiàn)問(wèn)題,而那些惡意的操作行為也會(huì)因?yàn)橛泻A康挠脩?hù)的維護(hù)而被盡快地修復(fù)。

Google-利用海量數(shù)據(jù)進(jìn)行判斷:Google的Pagerank算法的核心思想是通過(guò)其他網(wǎng)頁(yè)對(duì)當(dāng)前網(wǎng)頁(yè)的引用數(shù)來(lái)判斷網(wǎng)頁(yè)的等級(jí),這種算法需要通過(guò)海量的用戶(hù)數(shù)據(jù)來(lái)進(jìn)行。

協(xié)同過(guò)濾

說(shuō)到個(gè)性化推薦最常用的設(shè)計(jì)思想,不得不說(shuō)說(shuō)協(xié)同過(guò)濾,它一種在做個(gè)性化推薦時(shí)候的方法論。

因?yàn)槿绻麅H僅按照單一的熱門(mén)推薦,網(wǎng)絡(luò)的馬太效應(yīng)(指強(qiáng)者愈強(qiáng)、弱者愈弱的現(xiàn)象)就會(huì)明顯;且長(zhǎng)尾中物品較難被用戶(hù)發(fā)現(xiàn),造成了資源浪費(fèi)。而協(xié)同過(guò)濾問(wèn)題恰恰解決了用戶(hù)的個(gè)性化需求(用戶(hù)更愿意打開(kāi)自己感興趣或者熟悉的內(nèi)容),使得長(zhǎng)尾上的物品有了被展示和消費(fèi)的可能性,也使得馬太效應(yīng)相對(duì)弱化。

協(xié)同過(guò)濾包括兩種類(lèi)型:

1.Item-CF(基于物品的協(xié)同過(guò)濾):

小明在網(wǎng)站上看了《超人歸來(lái)》的電影,系統(tǒng)就會(huì)推薦與這部電影的相似的電影,比如《蜘蛛俠2》給小明。這是基于電影之間的相似性做出的推薦。(注意:兩部電影時(shí)間的是否相似是由大量用戶(hù)是否同時(shí)都看了這兩部電影得到的。如果大量用戶(hù)看了A電影,同時(shí)也看了B電影,即可認(rèn)為這兩部的電影是相似的,所以Item-CF仍然是基于用戶(hù)行為的。)

騰訊視頻中,當(dāng)觀看《超人歸來(lái)》時(shí)系統(tǒng)推送的電影

2.User-CF(基于用戶(hù)的協(xié)同過(guò)濾):

小明在購(gòu)物網(wǎng)站上買(mǎi)了一副耳機(jī),系統(tǒng)中會(huì)找出與小明相似的“近鄰好友”他們除了買(mǎi)耳機(jī)之外,還買(mǎi)了什么。如果與小明相似的“近鄰”小華還買(mǎi)過(guò)音箱,而這件東西小明還沒(méi)買(mǎi)過(guò),系統(tǒng)就會(huì)給小明推薦音箱。這是基于用戶(hù)之間的相似性做出的推薦。

注:這里的CF=collaborative filtering

而這兩種類(lèi)型的協(xié)同過(guò)濾都是要基于用戶(hù)行為來(lái)進(jìn)行。

而除了協(xié)同過(guò)濾之外,還有基于內(nèi)容的推薦、基于知識(shí)的推薦、混合推薦等方式。

物以類(lèi)聚,人以群分。

這句話(huà)很好地解釋了協(xié)同過(guò)濾這種方法的思想。

亞馬遜網(wǎng)站上對(duì)圖書(shū)的推薦 -基于Item-CF

前一陣參加了一個(gè)人工智能產(chǎn)品經(jīng)理的活動(dòng),主講人香港中文大學(xué)的湯曉鷗教授(目前人工智能視覺(jué)方面的頂級(jí)專(zhuān)家)說(shuō),目前機(jī)器視覺(jué)領(lǐng)域可以通過(guò)社交網(wǎng)絡(luò)照片或者個(gè)人相冊(cè)中的圖片的學(xué)習(xí),可以做到預(yù)測(cè)個(gè)人征信。與誰(shuí)的合影,在什么地方拍照都成為了機(jī)器預(yù)測(cè)個(gè)人特征的判斷因素。

這也是利用了“人以群分”的常識(shí),只是加上了高大上的機(jī)器視覺(jué)技術(shù)而已。

機(jī)器學(xué)習(xí)與個(gè)性化推薦的關(guān)系

什么是機(jī)器學(xué)習(xí)?《集群智慧編程》這本書(shū)里是這么解釋的:

機(jī)器學(xué)習(xí)是人工智能領(lǐng)域中與算法相關(guān)的一個(gè)子域,它允許計(jì)算機(jī)不斷地進(jìn)行學(xué)習(xí)。大多數(shù)情況下,這相當(dāng)于將一組數(shù)據(jù)傳遞給算法,并由算法推斷出與這些數(shù)據(jù)的屬性相關(guān)的信息-借助這些信息,算法就能夠預(yù)測(cè)出未來(lái)有可能出現(xiàn)的其他數(shù)據(jù)。這種預(yù)測(cè)是完全有可能的,因?yàn)閹缀跛蟹请S機(jī)數(shù)據(jù)中,都會(huì)包含這樣或那樣的“模式(patterns)”,這些模式的存在使機(jī)器得以據(jù)此進(jìn)行歸納。為了實(shí)現(xiàn)歸納,機(jī)器會(huì)利用它所認(rèn)定的出現(xiàn)數(shù)據(jù)中的重要特征對(duì)數(shù)據(jù)進(jìn)行“訓(xùn)練”,并借此得到一個(gè)模型。

機(jī)器學(xué)習(xí)本質(zhì)上是從數(shù)據(jù)中構(gòu)建模型來(lái)進(jìn)行“數(shù)據(jù)預(yù)測(cè)”或者“下決定”的事兒,而個(gè)性化推薦系統(tǒng)的本質(zhì),也是預(yù)測(cè)用戶(hù)可能感興趣的事兒。機(jī)器學(xué)習(xí)可以用來(lái)做個(gè)性化推薦系統(tǒng),也可以做其他類(lèi)型的預(yù)測(cè),比如金融欺詐偵測(cè)、安防、股票市場(chǎng)分析、垃圾email過(guò)濾等等。

這張圖很好地解釋了機(jī)器學(xué)習(xí)的工作過(guò)程。機(jī)器學(xué)習(xí)分為無(wú)監(jiān)督學(xué)習(xí)和有監(jiān)督學(xué)習(xí)兩種,也有延伸出增強(qiáng)學(xué)習(xí)和半監(jiān)督學(xué)習(xí)的方法。

Hadoop與Mahout

那些推薦算法這里不再贅述,但是大數(shù)據(jù)技術(shù)方面的基礎(chǔ)知識(shí),作為小白還是需要要有所了解。

眾所周知,推薦系統(tǒng)的數(shù)據(jù)處理往往是海量的,所以處理這些數(shù)據(jù)的時(shí)候要用到像Hadoop這樣的分布式處理軟件框架。

Hadoop是一個(gè)能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式處理的軟件框架。 Hadoop 以一種可靠、高效、可伸縮的方式進(jìn)行數(shù)據(jù)處理。

Hadoop是一個(gè)生造出來(lái)的詞,而Mahout中文意思就是象夫,可以看出,如果把大數(shù)據(jù)比作一只大象的話(huà),那mahout就是就是指揮大數(shù)據(jù)進(jìn)行運(yùn)算的指揮官。

Mahout 是 Apache Software Foundation(ASF) 旗下的一個(gè)開(kāi)源項(xiàng)目,提供一些可擴(kuò)展的機(jī)器學(xué)習(xí)領(lǐng)域經(jīng)典算法的實(shí)現(xiàn),旨在幫助開(kāi)發(fā)人員更加方便快捷地創(chuàng)建智能應(yīng)用程序。

其目的也和其他的開(kāi)源項(xiàng)目一樣,Mahout避免了在機(jī)器學(xué)習(xí)算法上重復(fù)造輪子。

推薦系統(tǒng)的數(shù)據(jù)來(lái)源

眾所周知,對(duì)推薦系統(tǒng)的個(gè)性化推薦算法需要運(yùn)用來(lái)自用戶(hù)的數(shù)據(jù),那么這些數(shù)據(jù)都是來(lái)自于哪里,為我們所用呢?

基于用戶(hù)行為數(shù)據(jù):

舉個(gè)好玩的例子:通過(guò)GPS信號(hào),可以測(cè)得手機(jī)速度以及位置,當(dāng)用戶(hù)的手機(jī)在早上8點(diǎn)由高速變成低速,可以判斷是從地鐵出來(lái),就可以向他推薦附近的麥當(dāng)勞早餐優(yōu)惠券了。

另外,運(yùn)營(yíng)商是可以得到用戶(hù)手機(jī)訪(fǎng)問(wèn)過(guò)的網(wǎng)頁(yè)數(shù)據(jù)的,通過(guò)文本挖掘,可以了解用戶(hù)的偏好,如看過(guò)很多足球類(lèi)的文章,可以了解用戶(hù)為喜歡足球的用戶(hù),而喜歡足球的用戶(hù)很大的可能性是男性,則可以多推送一些相關(guān)的體育新聞內(nèi)容,甚至男性用品(比如剃須刀)廣告給他。

基于社交網(wǎng)絡(luò)數(shù)據(jù):

通過(guò)用戶(hù)的社交網(wǎng)絡(luò)數(shù)據(jù)可以基于好友關(guān)系,推薦朋友給用戶(hù)。當(dāng)小紅和小明同時(shí)有10個(gè)朋友,那就說(shuō)明他們?cè)谝粋€(gè)朋友圈子。他們共同好友越多,就更有可能在兩個(gè)人之間做相互推薦。

基于上下文的數(shù)據(jù):

上下文的數(shù)據(jù)又可以分為兩種,時(shí)間上下文與地點(diǎn)上下文

舉一個(gè)栗子,在時(shí)間上下文的情況下,某外賣(mài)app需要根據(jù)早中晚人們的用餐習(xí)慣來(lái)給用戶(hù)推送不一樣的食物或者優(yōu)惠券,這樣推薦不同的食物更符合用戶(hù)的習(xí)慣。

另外根據(jù)地點(diǎn)的上下文說(shuō)的是,如果你在辦公室用某外賣(mài)app點(diǎn)一份外賣(mài),那么推薦給你的外賣(mài)餐廳是要離你較近的,而不是推送十公里以外的餐廳。

基于內(nèi)容的推薦與熱度算法

我們要知道個(gè)性化推薦一般會(huì)有兩種通用的方法,包括基于內(nèi)容的個(gè)性化推薦,和基于用戶(hù)行為的個(gè)性化推薦

基于用戶(hù)行為的推薦,會(huì)有基于物品的協(xié)同過(guò)濾(Item-CF)與基于用戶(hù)的協(xié)同過(guò)濾(User-CF)兩種。

而協(xié)同過(guò)濾往往都是要建立在大量的用戶(hù)行為數(shù)據(jù)的基礎(chǔ)上,在產(chǎn)品發(fā)布之初,沒(méi)有那么大量的數(shù)據(jù)。所以這個(gè)時(shí)候就要依靠基于內(nèi)容的推薦或者熱度算法。

基于內(nèi)容的推薦

一般來(lái)說(shuō),基于內(nèi)容的推薦的意思是,會(huì)在產(chǎn)品初期打造階段引入專(zhuān)家的知識(shí)來(lái)建立起商品的信息知識(shí)庫(kù),建立商品之間的相關(guān)度。

比如,汽車(chē)之家的所有的車(chē)型,包括了汽車(chē)的各種性能參數(shù);電商網(wǎng)站中的女裝也包括了各種規(guī)格。

在內(nèi)容的推薦過(guò)程中,只需要利用用戶(hù)當(dāng)時(shí)的上下文情況:例如用戶(hù)正在看一個(gè)20萬(wàn)左右的大眾轎車(chē),系統(tǒng)就會(huì)根據(jù)這輛車(chē)的性能參數(shù),來(lái)找到另外幾輛與這輛車(chē)相似的車(chē)來(lái)推薦給用戶(hù)。

一般來(lái)說(shuō),建立這樣的數(shù)據(jù)庫(kù)需要專(zhuān)業(yè)人士、編輯等通過(guò)手動(dòng)完成,有一定的工作量,但對(duì)于冷啟動(dòng)階段的產(chǎn)品來(lái)說(shuō),是一個(gè)相對(duì)有效的方法。

汽車(chē)之家網(wǎng)站在用戶(hù)查看一輛車(chē)的同時(shí)推薦與其相似的車(chē)

另外一種情況是純文本的內(nèi)容沒(méi)有明確的參數(shù)特征,在這種情況下,需要通過(guò)文本分析技術(shù)來(lái)自動(dòng)提取文本的關(guān)鍵詞(通過(guò)自然語(yǔ)言技術(shù)的進(jìn)行分詞),通過(guò)數(shù)據(jù)挖掘來(lái)找到文本與文本之間的聯(lián)系和相似性。

熱度算法

左:微博? 右:今日頭條

另外,由于各種社會(huì)熱點(diǎn)話(huà)題普遍是人們關(guān)注較高的,以及由于在產(chǎn)品發(fā)展初期,沒(méi)有收集到大量用戶(hù)數(shù)據(jù)的情況下,“熱度算法”也是一種慣常使用的方式。

“熱度算法“即將熱點(diǎn)的內(nèi)容優(yōu)先推薦給用戶(hù)。

這里值得注意的是,熱點(diǎn)不會(huì)永遠(yuǎn)是熱點(diǎn),而是具有時(shí)效性的。

所以發(fā)布初期用熱度算法實(shí)現(xiàn)冷啟動(dòng),積累了一定量級(jí)以后,才能逐漸開(kāi)展個(gè)性化推薦算法。

而熱度算法在使用時(shí)也需要考慮到如何避免馬太效應(yīng):毋庸置疑的是,在滾雪球的效應(yīng)之下,互聯(lián)網(wǎng)民的消費(fèi)&觀點(diǎn)&行為會(huì)趨同,就像前一陣《戰(zhàn)狼2》的熱映一樣,史無(wú)前例的票房成績(jī)完全取決于鋪天蓋地式的宣傳,而群體將會(huì)成為烏合之眾。

產(chǎn)品的冷啟動(dòng)

每個(gè)有推薦功能的產(chǎn)品都會(huì)遇到冷啟動(dòng)(cold start)的問(wèn)題,也是很多創(chuàng)業(yè)公司遇到的較為棘手的問(wèn)題。

在早期團(tuán)隊(duì)資金有限的情況下,如何更好地提升用戶(hù)體驗(yàn)?

如果給用戶(hù)的推薦千篇一律、沒(méi)有亮點(diǎn),會(huì)使得用戶(hù)在一開(kāi)始就對(duì)產(chǎn)品失去了興趣,放棄使用。所以冷啟動(dòng)的問(wèn)題需要上線(xiàn)新產(chǎn)品認(rèn)真地對(duì)待和研究。

在產(chǎn)品剛剛上線(xiàn),新用戶(hù)到來(lái)的時(shí)候,如果沒(méi)有他在應(yīng)用上的行為數(shù)據(jù),也無(wú)法預(yù)測(cè)其興趣。另外,當(dāng)新商品上架也會(huì)遇到冷啟動(dòng)的問(wèn)題,沒(méi)有收集到任何一個(gè)用戶(hù)對(duì)其瀏覽,點(diǎn)擊或者購(gòu)買(mǎi)的行為,也無(wú)從判斷將商品如何進(jìn)行推薦。

所以在冷啟動(dòng)的時(shí)候要同時(shí)考慮用戶(hù)的冷啟動(dòng)和物品的冷啟動(dòng)

我總結(jié)了并延伸了項(xiàng)亮在《推薦系統(tǒng)實(shí)踐》中的一些方法,可以參考:

  1. 提供熱門(mén)內(nèi)容,類(lèi)似剛才所介紹的熱度算法,將熱門(mén)的內(nèi)容優(yōu)先推給用戶(hù)。
  2. 利用用戶(hù)注冊(cè)信息,可以利用人口統(tǒng)計(jì)學(xué)的一些特征,如性別、國(guó)籍、學(xué)歷、居住地來(lái)預(yù)測(cè)用戶(hù)的偏好,當(dāng)然在極度強(qiáng)調(diào)用戶(hù)體驗(yàn)的今天,注冊(cè)過(guò)程的過(guò)于繁瑣也會(huì)影響到用戶(hù)的轉(zhuǎn)化率,所以另外一種方式更加簡(jiǎn)單且有效,即利用用戶(hù)社交網(wǎng)絡(luò)賬號(hào)授權(quán)登陸,導(dǎo)入社交網(wǎng)站上的好友信息或者一些行為數(shù)據(jù)。
  3. 在用戶(hù)登錄時(shí)收集對(duì)物品的反饋,了解用戶(hù)興趣,推送相似的物品。
  4. 在一開(kāi)始引入專(zhuān)家知識(shí),建立知識(shí)庫(kù)、物品相關(guān)度表;或者通過(guò)自然語(yǔ)言處理來(lái)進(jìn)行文本的數(shù)據(jù)挖掘。
  5. 通過(guò)用戶(hù)在時(shí)間和地點(diǎn)的上下文來(lái)進(jìn)行實(shí)時(shí)的預(yù)測(cè)。

參考資料

  • 《推薦系統(tǒng)實(shí)踐》 項(xiàng)亮
  • 《集群智慧編程》Toby Segara
  • 《失控》凱文凱利
  • 《機(jī)器學(xué)習(xí)的本質(zhì)是人類(lèi)學(xué)習(xí)?5大要素詳解個(gè)性化推薦的商業(yè)化之路》紀(jì)達(dá)麒
  • 《一個(gè)大數(shù)據(jù)屌絲的一天》劉鵬的“計(jì)算廣告”公眾號(hào)
  • 《產(chǎn)品經(jīng)理需要了解的算法——熱度算法和個(gè)性化推薦》 ?盧爭(zhēng)超
  • 《煉數(shù)成金推薦系統(tǒng)課程》

 

本文由 @文俊 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來(lái)自PEXELS,基于CC0協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. :mrgreen: 寫(xiě)得好啊

    來(lái)自四川 回復(fù)
  2. 學(xué)習(xí)了。

    來(lái)自北京 回復(fù)
  3. 目前正在做冷啟動(dòng)的個(gè)性化推薦設(shè)計(jì)!受教了!

    來(lái)自四川 回復(fù)
    1. ?? 一起進(jìn)步,哈哈。

      來(lái)自北京 回復(fù)