《推薦系統(tǒng)實(shí)例》讀書筆記

今天我們分享下項(xiàng)亮老師的《推薦系統(tǒng)實(shí)踐》這本書,也是我特別喜歡的一本,主要講述在實(shí)戰(zhàn)案例中的應(yīng)用,我們可以利用用戶的行為數(shù)據(jù)、利用用戶的標(biāo)簽數(shù)據(jù)、利用上下文信息、利用社交網(wǎng)絡(luò)數(shù)據(jù)等等,通過設(shè)計(jì)一個(gè)真實(shí)的推薦系統(tǒng)處理不同的數(shù)據(jù),根據(jù)不同的數(shù)據(jù)設(shè)計(jì)不同的算法,并將這些算法融合到一個(gè)系統(tǒng)中。

推薦系統(tǒng)是如何和網(wǎng)站其他系統(tǒng)接口的呢?推薦系統(tǒng)的外圍架構(gòu)

《推薦系統(tǒng)實(shí)例》讀書筆記

每個(gè)網(wǎng)站都會(huì)有一個(gè)UI系統(tǒng),UI系統(tǒng)負(fù)責(zé)給用戶展示網(wǎng)頁和用戶交互,網(wǎng)站通過日志系統(tǒng)將用戶在UI系統(tǒng)中各式各樣的行為記錄到用戶行為日志中,日志存儲(chǔ)在數(shù)據(jù)庫中,也可能存儲(chǔ)在文件系統(tǒng)中也可能在內(nèi)存緩存里,而推薦系統(tǒng)通過分析用戶的行為日志,給用戶生成推薦列表,最終展示在網(wǎng)站界面上。

 從上面結(jié)構(gòu) 可以看出除推薦系統(tǒng)本身還要依賴于兩個(gè)條件—界面展示和用戶行為數(shù)據(jù)

主流的推薦系統(tǒng)界面的一些共性

(1)通過一定的方式展示物品,主要包括物品的標(biāo)題、縮略圖、和介紹

(2)很多推薦界面提供了推薦理由,理由可以增加用戶對(duì)推薦結(jié)果的信任度

(3)推薦界面還需要提供一些按鈕,讓用戶對(duì)推薦結(jié)果進(jìn)行反饋,這樣才能讓推薦算法不斷的優(yōu)化,改善用戶的個(gè)性化推薦體驗(yàn)。

二、如何收集和存儲(chǔ)用戶數(shù)據(jù)

以電子商務(wù)網(wǎng)站中的典型行為為例,從產(chǎn)生行為的用戶角度看,有些行為需要用戶注冊(cè)才能產(chǎn)生,有些行為是所有用戶都可以產(chǎn)生的,規(guī)模上看,瀏覽網(wǎng)頁、搜索記錄的規(guī)模都很大因?yàn)檫@種行為所有用戶都可以產(chǎn)生并且每個(gè)用戶會(huì)產(chǎn)生很多,但購買、收藏只有注冊(cè)用戶才可以產(chǎn)生相對(duì)來說規(guī)模較小,剩下的行為只有注冊(cè)用戶中一小部分人才會(huì)產(chǎn)生,從實(shí)時(shí)角度上看,購買、收藏、評(píng)論、分享等行為需要實(shí)時(shí)存取,因?yàn)檫@些行為有了,界面就需要體現(xiàn)出來,不同的行為數(shù)據(jù)被存儲(chǔ)在不同的媒介中,一般實(shí)時(shí)存儲(chǔ)的會(huì)是在數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫和緩存中,大規(guī)模非實(shí)時(shí)的一般存儲(chǔ)在分布式文件系統(tǒng)中,能否實(shí)時(shí)存取在推薦系統(tǒng)中非常重要,因?yàn)橥扑]系統(tǒng)的實(shí)時(shí)性主要依賴于是否拿到用戶新的行為,只要實(shí)時(shí)拿到用戶新的行為才能實(shí)時(shí)響應(yīng)用戶當(dāng)前的需求,給用戶進(jìn)行實(shí)時(shí)推薦。

《推薦系統(tǒng)實(shí)例》讀書筆記

三、推薦系統(tǒng)的架構(gòu)

推薦系統(tǒng)是聯(lián)系用戶和物品的媒介,推薦系統(tǒng)聯(lián)系用戶和物品的方式主要有三種

用戶喜歡的物品也是一種用戶特征,或者和用戶興趣相似的其他用戶也是一種用戶特征,那么用戶和物品通過特征聯(lián)系;

  • 用戶–喜歡??物品 –相似—物品
  • 用戶–有相似興趣的好友??用戶–喜歡–物品
  • 用戶–喜歡,具有??特征–包含–物品

基于特征的推薦系統(tǒng)架構(gòu),當(dāng)用戶到來后,推薦系統(tǒng)為用戶生成特征,然后對(duì)每個(gè)特征找到和特征相關(guān)的物品,從而最終生成用戶的推薦列表因而推薦系統(tǒng)核心任務(wù)有兩部分,第一是如何給用戶生成特征,第二是根據(jù)特征找到物品。

用戶特征主要包括以下幾類:

(1)人口統(tǒng)計(jì)學(xué)特征:年齡、性別、民族、國籍、地區(qū)等用戶注冊(cè)時(shí)提供的信息。

(2)用戶的行為特征:瀏覽的物品、收藏的物品、評(píng)論的物品、從時(shí)間上也可區(qū)分用戶是近期行為還是長期行為。

(3)用戶的話題特征:根據(jù)用戶的歷史行為利用話題模型,將電視劇和電影聚合成不同的話題,計(jì)算出每個(gè)用戶對(duì)什么話題感興趣,比如用戶看了《醉拳》和《葉問》可能對(duì)香港武俠電影這個(gè)話題感興趣。

推薦系統(tǒng)的推薦任務(wù)也有很多

  • 將最新加入的物品推薦給用戶
  • 將商業(yè)上需要宣傳的物品推薦給用戶
  • 給用戶推薦不同種類的物品
  • 給用戶混合推薦
  • 對(duì)于不同產(chǎn)品推薦不同新穎度產(chǎn)品
  • 考慮到用戶訪問推薦系統(tǒng)的上下文

 如果一個(gè)推薦系統(tǒng)中,把上面提到的各種特征和任務(wù)都統(tǒng)籌考慮,那么系統(tǒng)會(huì)很復(fù)雜,而且很難通過配置文件方便地配置不同特征和任務(wù)權(quán)重,因此推薦系統(tǒng)有多個(gè)推薦引擎組成,每個(gè)引擎負(fù)責(zé)一類特征或一種任務(wù),而推薦系統(tǒng)只將推薦引擎的結(jié)果按照一定的權(quán)重或者優(yōu)先級(jí)合并、排序然后返回;

《推薦系統(tǒng)實(shí)例》讀書筆記

優(yōu)勢:每一種引擎代表了一種推薦策略,不同的用戶會(huì)喜歡不同的策略,可以方便地增加/刪除引擎,控制不同引擎對(duì)推薦結(jié)果的影響,對(duì)于絕大數(shù)需求,可以通過不同引擎組合實(shí)現(xiàn),引擎推薦出來的結(jié)果,對(duì)不同用戶給予不同引擎組合權(quán)重。

四、推薦引擎的架構(gòu)

推薦引擎使用一種或幾種用戶的特征,按照一種推薦策略生成一類型物品的推薦列表。

《推薦系統(tǒng)實(shí)例》讀書筆記

第一部分:從數(shù)據(jù)庫或者緩存中拿到用戶行為數(shù)據(jù),通過分析不同的行為,生成當(dāng)前用戶的特征向量,非行為特征,不需要使用用戶行為和分析模塊,輸出的是特征向量。

第二部分:將用戶的特征向量通過特征物品  相關(guān)矩陣轉(zhuǎn)換為初始推薦物品列表

第三部分:對(duì)初始 的推薦列表進(jìn)行過濾、排名等處理,從而生成最終的推薦結(jié)果。

1、生成用戶特征向量

一般來說用戶特征包含兩種,一種是用戶注冊(cè)基本信息中提取出來,主要包括用戶人口統(tǒng)計(jì)學(xué)特征,對(duì)于使用這種特征的推薦引擎如果內(nèi)存夠可以直接存入緩存中,在推薦時(shí)直接拿到用戶的特征數(shù)據(jù)并生成特征向量,除了這種特征,另一種特征是從用戶行為中計(jì)算出來的。

用戶行為特征:用戶可以對(duì)物品產(chǎn)生不同種類的行為,用戶可以瀏覽物品、單擊物品鏈接、和好友分享物品、搜索不同物品的關(guān)鍵詞、給物品打上不同的標(biāo)簽,這些都會(huì)對(duì)物品特征權(quán)重產(chǎn)生影響,但不同的行為影響不同,大多時(shí)候很難確定什么行為更加重要,一般的標(biāo)準(zhǔn)就是用戶付出代價(jià)越大的行為權(quán)重越高,比如購買商品時(shí)掏錢。

用戶行為產(chǎn)生的時(shí)間:一般來說用戶近期行為比較重要,用戶之前相對(duì)比較久遠(yuǎn)的行為比較次要,如果用戶最近購買某一個(gè)物品,那么這個(gè)物品對(duì)應(yīng)的特征將會(huì)具有比較高的權(quán)重。

用戶行為的次數(shù):用戶對(duì)一個(gè)物品產(chǎn)生很多次行為,比如用戶會(huì)聽一首歌很多次,看一部電視劇很多集,因此用戶對(duì)同一個(gè)物品的同一種行為發(fā)生的次數(shù)也反映了用戶對(duì)物品的興趣,行為次數(shù)多的物品對(duì)應(yīng)的特征權(quán)重高。

物品的熱門程度:如果用戶對(duì)一個(gè)很熱門的商品產(chǎn)生了行為,往往不能代表用戶的個(gè)性,因?yàn)橛脩艨赡茉诟L(fēng)、也可能商品容易點(diǎn)到,曝光度高,相反如果用戶對(duì)一個(gè)不熱門的商品產(chǎn)生了行為,就說明用戶的個(gè)性需求,因此推薦引擎會(huì)加重不熱門物品的對(duì)應(yīng)特征權(quán)重。

2、特征–物品相關(guān)推薦

在得到用戶的特征向量后,根據(jù)離線相關(guān)表得到初始的物品推薦列表。

離線相關(guān)表存儲(chǔ)在MYSQL數(shù)據(jù)庫中,對(duì)于每個(gè)特征我們可以在相關(guān)表中存儲(chǔ)和他相關(guān)的N個(gè)物品的ID。

特征ID     物品ID    權(quán)重

特征-物品推薦模塊還可以接受一個(gè)候選物品集合,候選物品集合的目的保證推薦結(jié)果只包含候選集合中的物品,它的應(yīng)用場景是產(chǎn)品一般需求希望將某些類型的電視劇推薦給用戶,比如給用戶推薦最近一周加入的新物品,那么候選集合中就包括最近一周加的物品。

3、過濾模塊

得到初步推薦列表后,還不能把這個(gè)列表推薦給用戶,首先按照產(chǎn)品需求對(duì)結(jié)果進(jìn)行過濾,過濾掉那些不符合要求的物品,一般來說會(huì)過濾掉以下物品

(1)用戶已產(chǎn)生過行為的物品:因?yàn)橥扑]系統(tǒng)是幫助用戶發(fā)現(xiàn)物品,因此沒必要給用戶推薦已經(jīng)知道的物品,這樣可以保證推薦結(jié)果新穎性。

(2)候選物品以外的物品:一個(gè)是產(chǎn)品需求,比如要求首頁將新加入的物品推薦給用戶,過濾掉不滿足這一條件的物品,另一個(gè)來源為用戶自己選擇,比如選擇了某一價(jià)格區(qū)間,那么過濾模塊過濾掉不滿足用戶需求的物品

(3)某些質(zhì)量很差的物品:為了提高用戶體驗(yàn),過濾模塊需要給用戶推薦質(zhì)量好的物品。

4、排名模塊

經(jīng)過過濾后的推薦結(jié)果一般是可以推薦給用戶的,但如果對(duì)他進(jìn)行一些排名,則可以更好的提升用戶滿意度

新穎性、多樣性、時(shí)間多樣性、用戶反饋

總結(jié):推薦系統(tǒng)的本質(zhì)是通過一定的方式將用戶和物品聯(lián)系起來

文源:四場

特別提示:關(guān)注本專欄,別錯(cuò)過行業(yè)干貨!

PS:本司承接 小紅書推廣/抖音推廣/百度系推廣/知乎推廣:關(guān)鍵詞排名,創(chuàng)意短視頻,筆記種草,代寫代發(fā)等;

咨詢微信:139 1053 2512 (同電話) 

首席增長官CGO薦讀:

更多精彩,關(guān)注:增長黑客(GrowthHK.cn)

增長黑客(Growth Hacker)是依靠技術(shù)和數(shù)據(jù)來達(dá)成各種營銷目標(biāo)的新型團(tuán)隊(duì)角色。從單線思維者時(shí)常忽略的角度和高度,梳理整合產(chǎn)品發(fā)展的因素,實(shí)現(xiàn)低成本甚至零成本帶來的有效增長…

本文經(jīng)授權(quán)發(fā)布,不代表增長黑客立場,如若轉(zhuǎn)載,請(qǐng)注明出處:http://m.gptmaths.com/quan/30771.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
上一篇 2020-05-10 14:07
下一篇 2020-05-11 11:57

增長黑客Growthhk.cn薦讀更多>>

發(fā)表回復(fù)

登錄后才能評(píng)論