這節(jié)課是尹相志老師《數(shù)據(jù)科學(xué)心法與機器學(xué)習(xí)實戰(zhàn)》系列課程的最后一講:《數(shù)據(jù)科學(xué)實務(wù)案例:推薦算法的案例建模與評估》
老師介紹了基于商品、基于人與商品、基于相似人三個階段的推薦算法演進過程;以Facebook為例講了內(nèi)容推薦相關(guān)知識;介紹了做產(chǎn)品推薦的思維方法和解題思路,以及如何透過追蹤機制來收集客戶數(shù)據(jù),充實推薦模型;最后講了通過深度學(xué)習(xí)對消費行為進行表征的推薦算法。
推薦算法的藝術(shù)在于不一定是要為消費者找到他需要的東西,而是讓他以為他需要這些東西……
- 產(chǎn)品設(shè)計階段:首先做出好的產(chǎn)品,思考產(chǎn)品本身怎樣打動消費者——這個步驟與推薦算法沒太大關(guān)系
- 產(chǎn)品定型之后:找到能夠被我們的產(chǎn)品打動的用戶——推薦算法
一、產(chǎn)品推薦算法演進的三個階段
1. Item-based recommendation基于商品
基本原理:看產(chǎn)品和產(chǎn)品之間的關(guān)聯(lián)性。根據(jù)購物車數(shù)據(jù)/已經(jīng)買過的東西推薦新的產(chǎn)品:買了A產(chǎn)品會有多少幾率買B(購物車算法/購物車規(guī)則,哪些商品會同時出現(xiàn)在我的購物籃里面)
權(quán)重計算:主要有三點——Recency:最后一次買到現(xiàn)在有多久 ;Frenquency:購買的頻率;Monetary:購買的金額
eg:Apriori算法1994:
- 購物車中哪些商品總是同時被購買,基于貝葉斯條件概率,計算過程簡單。
- 缺點:
- 只看商品的特征不看人的特征,不會給每個消費者畫像;
- 缺少絕對好壞、具有全局觀的指標(biāo)(support、confidence、lift三個指標(biāo)都不完全work);
- 沒有辦法做冷啟動:客戶第一次來,沒有任何信息的情況下做商品推薦。
- 現(xiàn)在適用情況:基本被拋棄了。某些匿名消費場景可能會被使用,但意義和效果不大。
2. User-product-based recommendation基于人與商品
基本原理:N個客戶對應(yīng)N個產(chǎn)品的矩陣,以客戶為基礎(chǔ),關(guān)注人的差異+物的差異,在商品特征和購買關(guān)聯(lián)性的基礎(chǔ)上,加入人的個性特征
算法:奇異值分解SVD(n個客戶m個商品:拆解成nk用戶隱向量矩陣和km商品隱向量矩陣**);因子分析;探討每一個因子跟產(chǎn)品之間的關(guān)聯(lián)性
缺點:同樣沒辦法冷啟動
現(xiàn)在適用情況:仍然是一個不錯的算法。
eg:Matrix Factorization Techniques for Recommender System 2009
3. User-based recommendation基于相似人
基本原理:看人與人的相似性。誰跟A比較像,找出BCD,BCD買了哪些東西A還沒有買,于是給A推薦那些他還沒買的商品。
相似性算法:最近鄰居法;基于聚類(行為、客戶價值等不同劃分標(biāo)準(zhǔn)),把人切位一群一群,落在同一群默認(rèn)為會有相似的購買行為
優(yōu)點:可以冷啟動;
缺點:不能滿足人求新求變的喜好(一段時間內(nèi)推薦的商品相對固定,累計時間夠久才會有變化)
K-nearest neighbors最近鄰居法:沒有被儲存下來的規(guī)則實體;歷史案例一個都不能丟;
二、內(nèi)容推薦算法
內(nèi)容推薦的重點是如何評估相似性,主要有下面4種:
- 詞頻:低階但有效?。?/li>
- 詞向量:幫助找到詞匯和詞匯之間關(guān)系。長文本詞向量效果會比較差,重要特征會被稀釋,甚至不如詞頻。對于長文本,會取標(biāo)題和第一段,;監(jiān)督失磁向量 整體簡單粗暴但有效。
- LDA:內(nèi)容推薦中不建議用。本質(zhì)上就是文本的聚類,根據(jù)文本出現(xiàn)的頻次做成一個個聚類。需要數(shù)萬數(shù)十萬,訓(xùn)練效果比較扯。只管哪些關(guān)鍵詞會出現(xiàn),但不管遠近,比較容易發(fā)生語義上的錯誤理解,不看詞頻,可能出現(xiàn)1次就會被誤中。
- 文本分類:tag比對的形式。
eg:Facebook
- 微信朋友圈:比較像twitter,完全按照時間軸的順序排列。
- Facebook:屬于社交媒體內(nèi)容。內(nèi)容上的推薦除了考慮時間順序外,還考慮以下方面:
- 誰發(fā)的
- 在哪里發(fā)的
- 內(nèi)容類型:影片>圖片>文字
- 看過的人有什么反應(yīng)
- Facebook中有的一些功能:
- 三年前的今天
- 除了??之外還有其他很多表情,表達對別人發(fā)表的內(nèi)容的想法
- 廣告:可以叉掉,并選擇自己不感興趣的原因(便于之后更準(zhǔn)確的推薦)
- 提醒朋友的生日
- 你可能喜歡的活動
- 最受facebook用戶歡迎:意外的驚喜、意外的隨機(防止推薦算法老化,防止持續(xù)給用戶推薦某一類型的東西,沒有新東西進來)

三、產(chǎn)品推薦的思路和流程

- 冷啟動:關(guān)鍵在于如何在第一次取得盡量多的信息,而不在推薦算法。
-
New-new:在沒有買過的領(lǐng)域里面創(chuàng)造新消費。
- 最熱門:爆款
- 喜好推薦:基于商品;基于人-商品;基于相似人
- 付費贊助
- 驚喜的隨機:持續(xù)地補充新東西進來(但驚喜的隨機是排除負樣本后的隨機,即排除消費者厭煩的、不喜歡的;喜好的東西可能會變,但討厭的東西一般都不會變,用戶表達討厭了一次就永遠不要再出現(xiàn)了)
- 排除冷數(shù)據(jù):暖數(shù)據(jù)是比較新的內(nèi)容;冷數(shù)據(jù)是早就看過的或已經(jīng)買過的。
- Old-new:以前買過這個品類,在舊有的消費體驗/購買歷史里面開創(chuàng)商機、推薦新產(chǎn)品
冷啟動
- 用戶行為收集和追蹤——數(shù)據(jù)來自哪里
-
發(fā)揮創(chuàng)意,收集更多的數(shù)據(jù)
用戶行為追蹤
四、基于表征為基礎(chǔ)的推薦
最早使用基于表征為基礎(chǔ)的推薦是YouTube:

YouTube的視頻推薦分為兩個步驟:
-
用深度學(xué)習(xí)把以下多種需求綜合起來,得到候選推薦視頻清單。
- A之前看了哪些影片
- A搜索了哪些影片
- A所在的地區(qū),什么影片受歡迎
- 推出時間/性別……

-
對1中生成的候選視頻清單產(chǎn)生排名和排序,主要看視頻內(nèi)容和用戶偏好的匹配度,會考慮以下維度:
- 以前觀影記錄看內(nèi)容是否匹配
- 用戶語言的匹配
- 最后一次瀏覽的時間長等

Graph神經(jīng)網(wǎng)絡(luò)

eg:尋找服裝的視覺表征
- 機器視覺的分割:機器先將圖片的各個組成元件/服裝分隔開;
- 比對相似的服裝/相似的品味/相似的款式;
附課程PPT:
《數(shù)據(jù)科學(xué)方法論-產(chǎn)品內(nèi)容推薦》
鏈接:https://pan.baidu.com/s/1SrNE9PkSZCBIf-l06p3KuQ
提取碼:95og
