基于物品相似度的智慧推薦算法
編輯導(dǎo)語:智能推薦算法的目的就在于實現(xiàn)個性化推薦,根據(jù)用戶興趣和行為特點,向用戶推薦所需的信息或商品,幫助用戶在過載信息中快速發(fā)現(xiàn)真正所需的商品,提高用戶黏性;本文作者分享了關(guān)于智慧推薦算法的分析,我們一起來了解一下。
最近接到一個任務(wù),是一個教育類App上的智慧推薦版塊,要針對用戶的購買習(xí)慣推薦相應(yīng)的可購買內(nèi)容,千人千面的滿足客戶的個性化需求,提高商品的點擊量和購買量。
一、業(yè)務(wù)邏輯及適用機制
客戶需求具體如下:
- 展覽服務(wù):結(jié)合以用戶的年齡、興趣、過往觀展記錄生成的用戶畫像,以及展方主推內(nèi)容,為用戶智能推薦展出內(nèi)容,加強用戶體驗。
- 比賽服務(wù):根據(jù)用戶以往參賽、訂閱記錄,以及系統(tǒng)中的參賽選手檔案信息,智能推薦比賽內(nèi)容。
- 演出服務(wù):根據(jù)用戶購票、退票、觀演歷史和用戶演出評價記錄,智能推送用戶可能感興趣的演出。
可以看出,此處智慧推薦的用戶個性化需求十分強烈,預(yù)設(shè)了用戶比較傾心于他以前購買過的相同類型的物品。
目前,市面上商用的主流推薦算法大致可分為如下幾類:
- 基于內(nèi)容相似度的推薦;
- 基于用戶相似度的協(xié)同過濾;
- 基于物品相似度的協(xié)同過濾;
- 基于流行度的推薦算法;
- 基于模型的推薦(輸入一些用戶特征建立模型,進而產(chǎn)生推薦結(jié)果);
- 人工推薦(人工運營添加推薦條目)。
本項目非常符合基于物品相似度的協(xié)同過濾算法的使用場景。
二、算法的特點
基于物品相似度的協(xié)同過濾算法的適用場景有如下特征:
長尾物品豐富,用戶個性化需求強烈的領(lǐng)域;長尾效應(yīng)很好理解,舉個例子,最主流、最熱門的書籍總是占據(jù)書店最顯眼的位置,而相同類型的冷門書籍?dāng)[上貨架的可能性就小得多,哪怕這些冷門書確實還是有市場需求的。那用戶購買過某熱門書籍,那我把相同類型但賣的不那么好的書推薦給老用戶,這是非常合理的吧?而每個人所看的書籍類型千差萬別,我告訴你有某個你不認(rèn)識的人也愛看某本書,你恐怕也不一定愿意買吧。
物品數(shù)遠小于用戶數(shù)的場合;物品數(shù)據(jù)相對用戶數(shù)據(jù)本身就更為穩(wěn)定,再者物品數(shù)據(jù)的樣本量小,此時計算物品的相似度不但計算量較小,也不必頻繁更新,程序壓力小。
因此該算法往往應(yīng)用在圖書、電子商務(wù)、教育及電影網(wǎng)站,這些領(lǐng)域均符合以上兩點特征。
基于物品相似度的協(xié)同過濾算法,其關(guān)注點在于維系用戶的歷史興趣,而其交互特點在于推薦結(jié)果的實時變化。其優(yōu)缺點如下:
- 缺點:存在App冷啟動的問題,即App剛開始使用時用戶數(shù)少,內(nèi)容也少,未形成用戶喜好池;對于本項目來說,也即是在缺少用戶的歷史記錄,無法據(jù)此推薦內(nèi)容的情況下,適用范圍受限。
- 優(yōu)點:推薦結(jié)果解釋性強;隨著用戶的瀏覽記錄數(shù)據(jù)的增加,推薦一般也會越來越準(zhǔn)確。
三、算法的實現(xiàn)
在本次項目中,基于物品相似度的協(xié)同過濾算法的實現(xiàn)大致如下所示:
計算物品(課程/活動/演出/展覽/比賽等)的相似度。
步驟如下:
利用物品的內(nèi)容屬性計算相似度。內(nèi)容屬性類似于一種標(biāo)簽,能體現(xiàn)出物品的共性。
物品可以是實體的物件,也可以是虛擬的娛樂服務(wù)。比如某演出的類型,是話劇、舞蹈還是歌唱?演出的適宜人群是10-18歲的青少年,還是二十來歲的大學(xué)生,還是工作穩(wěn)定家庭圓滿的中年人?演出的地點在茶館、體育館還是歌劇廳?
一個物品可以有多個標(biāo)簽,而兩個物品相同的標(biāo)簽越多,兩者的相似度也就越高。
分析用戶的行為記錄計算相似度。用戶的行為記錄包括曾經(jīng)觀看過的演出、展覽,參加過的比賽,購買過的商品等。確認(rèn)了用戶的行為偏好,就“投其所好”。
為用戶生成推薦列表。將物品和用戶的行為關(guān)聯(lián)起來,和用戶歷史上感興趣的物品越相似的物品,越有可能在用戶的推薦列表中獲得更高的排名。需要考慮以下幾個方面:
業(yè)務(wù)場景:共可分為冷啟動、非冷啟動新用戶、非冷啟動老用戶、匿名用戶四種。不同的業(yè)務(wù)場景適用的算法不同,對于本項目,基于物品協(xié)同過濾推薦算法適用于非冷啟動老用戶。
不同業(yè)務(wù)場景適用的算法不同
推薦位置:需考慮前端推薦列表的入口(首頁或某個模塊),以及其內(nèi)部的界面層級。
結(jié)果評測:推薦列表上線后,收集數(shù)據(jù)用于算法的優(yōu)化。需對比算法使用前后商品銷售量和銷售額的增長情況,以此衡量算法的有效性并及時調(diào)整推薦機制。
- 商品的數(shù)量層面的相關(guān)數(shù)據(jù):點擊量、點擊率、收藏量(若允許收藏)、加購量、加購率、提交訂單量、提交訂單率、訂單付款率、占比等等。
- 商品的金額層面的相關(guān)數(shù)據(jù):點擊量、收藏金額、加購金額、提交訂單金額、付款額、占比等等。
本次項目中,前端給定了一個智能推薦主入口,提供展覽服務(wù)、比賽服務(wù)、演出服務(wù)三個次級入口。
需要注意的是,這三個次級入口所導(dǎo)入的內(nèi)容,均是已經(jīng)維護好的,只是處于同種物品的長尾列表內(nèi),曝光率可能較低。智慧推薦要做的就是提升這些內(nèi)容的曝光率。
考慮的物品內(nèi)容屬性及權(quán)重系數(shù)有所區(qū)別:
展覽服務(wù)(展覽):
- 展覽位置:考慮到不同場館給用戶帶來的體驗不同,用戶可能偏向于在某個展館內(nèi)觀展,因此會對相同展館內(nèi)舉辦的展覽進行推薦。權(quán)重系數(shù)低。
- 展覽時間:用于相近時間段的推薦。如某展覽舉辦期間還有其他展覽也在舉辦;或者用戶在觀賞某演出的當(dāng)天,也有某個展覽正在舉行,希望用戶可以“順便”參加某展覽。權(quán)重系數(shù)低。
- 展覽類型:展覽可分為書法展、繪畫展、科技展等不同類型,每種類型又可細分為多個小類,如繪畫展可細分為中國畫展、油畫展、 版畫展等等。實際上,在維護展覽的相關(guān)信息時,已經(jīng)為不同展覽設(shè)定了標(biāo)簽。權(quán)重系數(shù)高。
- 適宜人群:不同年齡段的人所愛好的東西有其相似性,因此要對展覽的受眾進行區(qū)分,如10歲以下的幼童、10~18歲的青少年、18歲以上等等。
比賽服務(wù)(比賽):比賽類型(書法、繪畫、朗誦、小發(fā)明等標(biāo)簽)。
演出服務(wù)(演出):演出位置、演出類型(朗誦、歌唱、舞蹈、小品等標(biāo)簽)、演出時間(近期推薦)等,類似展覽。
后臺給定了算法的模板配置頁面,推薦位配置頁面以及結(jié)果評測頁面。
本文由 @Smile 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自 Unsplash ,基于 CC0 協(xié)議
如果要寫一個推薦相關(guān)的產(chǎn)品文檔,應(yīng)該跟開發(fā)列出具體的算法實現(xiàn)邏輯嗎
可以呀,只要你很會~
?。。?!
咩呀?有問題歡迎指正嘿嘿嘿