
需求與匹配 從數(shù)據(jù)挖掘角度看世紀(jì)佳緣推薦系統(tǒng)
昨天看到同事在朋友圈以及機(jī)器學(xué)習(xí)日?qǐng)?bào)推薦的這篇文章:《佳緣用戶推薦系統(tǒng)》,再結(jié)合自己之前的幾年的推薦系統(tǒng)經(jīng)驗(yàn),以及在婚戀網(wǎng)站半年多的經(jīng)驗(yàn),來(lái)談?wù)勎已壑械幕閼偈袌?chǎng)的推薦系統(tǒng)。
如作者所說,佳緣作為第一家也是中國(guó)最大的婚戀網(wǎng)站,的確在推薦系統(tǒng)上走了很多的彎路,但也正是這些彎路以及作者的分享精神,才給后來(lái)者的我們提供了許多一線的參考價(jià)值。我相信任何在今天看來(lái)不完善的,甚至有一些可笑的設(shè)計(jì),在當(dāng)時(shí)都是有著合理性和必要性的。那么我再回顧自己的2011年如果開始從頭搭建這樣一套系統(tǒng),是否能做成這個(gè)樣子,自認(rèn)也沒有這樣的把握。所以這篇文章純粹是站在我今天的角度來(lái)做點(diǎn)評(píng)和分析,也望大家多多探討。
首先,我們先順著作者的思路去看佳緣經(jīng)歷的推薦算法:
在2011年到2013年的算法年,佳緣嘗試了兩個(gè)算法方向,與我的想法非常背離,第一個(gè)不是最基本的Content-based,而是Item-based,相信Item-based算法大家都再了解不過,所以就不多做解釋。我們只來(lái)分析算法的業(yè)務(wù)應(yīng)用。Item-based是在構(gòu)建一個(gè)User-Item矩陣,然后計(jì)算Item-Item之間的相似度。那么具體到婚戀網(wǎng)站的業(yè)務(wù)場(chǎng)景,其實(shí)也就是構(gòu)建了一個(gè)Man-Woman的矩陣,將Woman當(dāng)做Item,計(jì)算Woman之間的相似度,這個(gè)算法場(chǎng)景基于背后的假設(shè)是認(rèn)為,如果一個(gè)男人喜歡一個(gè)女人,那么他必然喜歡和這個(gè)女人相似的女人,換句更直白的話說,每個(gè)男人都喜歡自己女朋友的閨蜜。相似,我們將User-Item矩陣做轉(zhuǎn)置后,可以繼續(xù)做Man的相似度,不再?gòu)?fù)述。
這個(gè)算法設(shè)計(jì)有如下幾個(gè)問題:
1. 如作者所說,給男性展示美女,男性的發(fā)信就會(huì)暴漲,這樣少量女性收到大部分信,而大多數(shù)女性卻收不到信。但是作者可能沒有把這部分給說透,如果單純從這一點(diǎn)來(lái)看,這并不是協(xié)同過濾算法本身的原因。這其實(shí)是一個(gè)惡性循環(huán),算法本身就是基于了一個(gè)嚴(yán)重有偏的User-Item矩陣來(lái)計(jì)算相似度,于是產(chǎn)生的推薦結(jié)果最終會(huì)造成給所有人都推薦美女。
2. 但是這并非是一個(gè)無(wú)解的問題,我們回歸Item-based的本源思考為什么熱門的條目會(huì)受到額外的照顧,拋出業(yè)務(wù)場(chǎng)景,其實(shí)根源在于Cosine-Similarity里分母開的那個(gè)根號(hào)惹的禍,可以想象10000的平方根和1000的平方根到底有多大差別,其實(shí)罪魁禍?zhǔn)拙褪瞧椒礁趸藷衢T條目的作用,如果一定希望去調(diào)整,可以根據(jù)實(shí)際的業(yè)務(wù)情況去調(diào)整指數(shù)。
3. 稀疏性問題。對(duì)于婚戀網(wǎng)站來(lái)說,長(zhǎng)尾性和稀疏性比傳統(tǒng)的條目網(wǎng)站都大得多,大家可以想象一下大多數(shù)人來(lái)婚戀網(wǎng)站的目的,以及走在大街上看到美女的概率即可,所以單純的Item-based是無(wú)法解決問題的,只會(huì)造成大部分人可能一輩子都收不到一封信。但是這其實(shí)也有解,最粗暴的方法就是對(duì)于一部分用戶配合Content-based做隨機(jī)展示(對(duì)于展示哪一部分,我們之后再來(lái)具體說)。
4. 協(xié)同過濾的傳統(tǒng)問題,就不多說了,比如說實(shí)時(shí)性,參數(shù)調(diào)整的復(fù)雜性等等。
5. 具體到婚戀業(yè)務(wù)上來(lái)說,“如果一個(gè)男人喜歡一個(gè)女人,那么他必然喜歡和這個(gè)女人相似的女人”這句話結(jié)合業(yè)務(wù)場(chǎng)景和業(yè)務(wù)目標(biāo)是有著悖論的,我們做個(gè)邏輯推演,如果我喜歡某個(gè)女人,就會(huì)給這個(gè)女人發(fā)信,如果這個(gè)女人理我了,我就愿意和她“結(jié)婚”(記住,這里不是約炮),那么我就不會(huì)也不應(yīng)該再去找其他女人。 如果這個(gè)女人看不上我,那么和她相似的人也不會(huì)看上我….. 所以…..我想大家應(yīng)該可以明白這個(gè)其中的問題了。
第二個(gè)嘗試也是我曾經(jīng)有段時(shí)間努力探索的:Reciprocal Recommendation。也許大家對(duì)這個(gè)不熟悉,我大概講一下,這種推薦算法廣泛地應(yīng)用于雙向選擇的業(yè)務(wù)場(chǎng)景下,例如求職網(wǎng)站,交友婚戀網(wǎng)站。不同于傳統(tǒng)的網(wǎng)站推薦系統(tǒng),搭建的是基于條目的推薦系統(tǒng),或者是基于用戶單向關(guān)注的推薦關(guān)系。求職網(wǎng)站給我推薦了一份Google CEO的工作,我會(huì)感興趣,但是他對(duì)我不感興趣是沒有意義的?;閼偻扑]也是如此。
那么這個(gè)算法解決的出發(fā)點(diǎn)很好,但是實(shí)話實(shí)說,其實(shí)paper一共就那么多,我總結(jié)著看了下,并沒有真正有用的東西,也沒有創(chuàng)造性的模型產(chǎn)生,只是對(duì)于傳統(tǒng)推薦算法的一個(gè)后過濾,整體思路就是把曾經(jīng)的無(wú)向圖變成了有向圖,分別求出Man–>Women,Woman->Man的雙向關(guān)系,然后或者相乘,或者搞一些奇怪的公式去做擬合。作者說不太靠譜,但是我認(rèn)為這個(gè)算法從思路上來(lái)說是對(duì)路的,無(wú)論是不是用他們那些莫名其妙的模型,但是作為思想的參考還是值得借鑒的。
接下來(lái)佳緣推薦算法的階段步入了2014的工程年,作者根據(jù)佳緣的團(tuán)隊(duì)及業(yè)務(wù)特點(diǎn)將佳緣推薦做了戰(zhàn)略上的調(diào)整,從比拼算法模型改成了比拼特征工程。我不了解佳緣的實(shí)際情況,不敢多做評(píng)價(jià),只是從個(gè)人感覺來(lái)說也許作者從一個(gè)極端走到了另一個(gè)極端。從外界來(lái)猜測(cè)一下佳緣的實(shí)現(xiàn)思路:抽出各種各樣的特征,例如用戶的基本人口學(xué)信息,加上用戶的行為屬性信息等等,然后針對(duì)每個(gè)用戶訓(xùn)練一個(gè)分類器,來(lái)預(yù)測(cè)他是不是對(duì)對(duì)方感興趣。
那我們來(lái)聊聊邏輯回歸的根本問題吧:
1. 大部分信息大多都是離散值,而這些離散值之間并非是按照數(shù)字本身的意義有著明確的大小關(guān)系,這個(gè)如果用邏輯回歸,就會(huì)面臨讓人絕望的離散值連續(xù)化問題。
2. 如果把希望寄往于特征工程,就需要對(duì)每個(gè)特征都做深入的業(yè)務(wù)和數(shù)學(xué)化理解,而且調(diào)參這個(gè)事兒結(jié)合到婚戀網(wǎng)站超長(zhǎng)的訓(xùn)練反饋鏈,幾乎是無(wú)解的。不要去討論非監(jiān)督化的特征工程了,因?yàn)榛閼倬W(wǎng)站的業(yè)務(wù)特別明確,人工特征往往比泛化的非監(jiān)督特征工程好用得多。
3. 高維特征下邏輯回歸一樣會(huì)面臨維度爆炸的問題。
4. 邏輯回歸本質(zhì)上是廣義線性模型,但是這個(gè)假設(shè)是不是適用。
5. 最關(guān)鍵的是,邏輯回歸其實(shí)和最基本的感知機(jī)有什么不一樣,從圖形上面最基本的理解,其實(shí)就是把最兩端的長(zhǎng)尾巴給壓縮了一下,但是對(duì)于婚戀網(wǎng)站來(lái)說,恰恰最需要的就是這些長(zhǎng)尾巴的東西,因?yàn)檫@些長(zhǎng)尾巴是最能讓人付費(fèi)的動(dòng)力。
我相信接下來(lái)我說的很多嘗試和做法,佳緣都已經(jīng)嘗試過了,但是站在局外者的角度,我認(rèn)為除了傳統(tǒng)的特征工程以及算法模型的優(yōu)化外,其實(shí)接下來(lái)的這些才是婚戀網(wǎng)站推薦算法成功的關(guān)鍵(結(jié)合佳緣的模式: 收取用戶的看信費(fèi)用,其實(shí)我沒用過):
1. 明確推薦評(píng)價(jià)指標(biāo),這一點(diǎn)是老生常談,做任何一個(gè)系統(tǒng)前,尤其是數(shù)字化系統(tǒng)時(shí),最重要的就是明確建立這個(gè)系統(tǒng)的指標(biāo)。對(duì)于婚戀推薦系統(tǒng)來(lái)說,最核心的指標(biāo)無(wú)外乎付費(fèi)的轉(zhuǎn)換率,那么繼承OKR的思路,我們來(lái)對(duì)這個(gè)指標(biāo)進(jìn)行拆解Key Result,想提高付費(fèi)轉(zhuǎn)換率有幾點(diǎn)需要提高: A. 收信人的覆蓋率 B. 發(fā)信者的動(dòng)力 C. 收件人的看信意愿(付費(fèi)意愿),那么接下來(lái)逐漸說
2. 識(shí)別優(yōu)質(zhì)資源,對(duì)于婚戀系統(tǒng)來(lái)說,帥哥就那么多,美女也就那么多,付費(fèi)用戶更是就那么多,所以識(shí)別用戶成為了婚戀網(wǎng)站的重中之重。所以婚戀網(wǎng)站的第一步不是推薦問題,而是一個(gè)用戶從多維度的分類問題。
3. 懂得取舍。我們繼續(xù)做邏輯推演,用戶到底愿意給什么人發(fā)信,但是到底什么人才愿意讓用戶看信。接下來(lái)什么用戶才會(huì)愿意為了一封信而付費(fèi)。其實(shí)這個(gè)時(shí)候問題已經(jīng)變成了,如何給優(yōu)質(zhì)用戶看到他感興趣的人,而這個(gè)人又對(duì)他感興趣,而且這個(gè)人恰恰又愿意付費(fèi)。這個(gè)邏輯鏈條太長(zhǎng)了。根本沒辦法來(lái)做,我們來(lái)精簡(jiǎn)邏輯鏈條,發(fā)信其實(shí)是成本最低的,而且可以通過鼓勵(lì)或者產(chǎn)品引導(dǎo)來(lái)讓用戶發(fā)信,所以我們把第一層邏輯去掉。我們倒著來(lái)推,把問題轉(zhuǎn)換為識(shí)別出最愿意付費(fèi)的那些用戶,然后找到這些用戶感興趣的用戶,通過產(chǎn)品引導(dǎo)讓這些用戶發(fā)信。
4. 推薦理由。對(duì)于婚戀推薦來(lái)說,推薦理由比傳統(tǒng)的網(wǎng)站要重要得多,因?yàn)槟阋鞔_給用戶一個(gè)付費(fèi)的理由,關(guān)于傳統(tǒng)的推薦理由,就不再?gòu)?fù)述了,無(wú)外乎你們具有相同的屬性,喜歡這個(gè)人的也喜歡,等等。但是最近的那篇<New Direction in Recommender System>也許會(huì)給我們一些額外的啟發(fā),大家也可以直接看我之前的博文:<商品推薦算法 & 推薦解釋>。
5. Reciperocal Recommendation思想的業(yè)務(wù)化應(yīng)用。在之前,我簡(jiǎn)化了發(fā)信者發(fā)信這一鏈條的聯(lián)系,但是如果精細(xì)化來(lái)說,不妨用這樣的思想來(lái)做發(fā)信者和收信者之間的平衡。
6. 在做分類以及評(píng)分預(yù)測(cè)時(shí),不妨針對(duì)業(yè)務(wù)的長(zhǎng)尾現(xiàn)象來(lái)做模型改造和模型選擇,因?yàn)橹挥行〔糠钟脩羰潜仨氁卫巫プ〉挠脩?,從這一點(diǎn)來(lái)說,邏輯回歸確實(shí)不合適。
7. 我掃了下作者2015的展望,我很期待,尤其是ADMM的應(yīng)用,目測(cè)我還沒見過身邊有人搞過,期待作者的嘗試結(jié)果。但是特征哈希這個(gè)事兒真的不靠譜,因?yàn)槿绻麤Q心做特征工程,那么特征哈希這個(gè)事情就顯得太遠(yuǎn)離業(yè)務(wù)本身而注重于泛化了,這樣子不適合邏輯回歸+特征工程這樣的戰(zhàn)略。
8. 從數(shù)據(jù)和算法出發(fā)的產(chǎn)品形態(tài)改進(jìn)。這個(gè)沒什么好說的了,其實(shí)我一直認(rèn)為婚戀網(wǎng)站的出路不在于算法和數(shù)據(jù)本身,而是能不能從數(shù)據(jù)跳出來(lái)對(duì)產(chǎn)品提出一些創(chuàng)意性改進(jìn)從而產(chǎn)生的產(chǎn)品模式和收費(fèi)模式的變革。去年我和很多VC聊過現(xiàn)在國(guó)內(nèi)資本市場(chǎng)對(duì)于婚戀市場(chǎng)的看法,大家無(wú)一例外都是搖頭,婚戀市場(chǎng)太久沒人去變革過了,至今的幾大網(wǎng)站仍然是十年前的玩法。
數(shù)據(jù)分析咨詢請(qǐng)掃描二維碼
若不方便掃碼,搜微信號(hào):CDAshujufenxi
LSTM 模型輸入長(zhǎng)度選擇技巧:提升序列建模效能的關(guān)鍵? 在循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)家族中,長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)憑借其解決長(zhǎng)序列 ...
2025-07-11CDA 數(shù)據(jù)分析師報(bào)考條件詳解與準(zhǔn)備指南? ? 在數(shù)據(jù)驅(qū)動(dòng)決策的時(shí)代浪潮下,CDA 數(shù)據(jù)分析師認(rèn)證愈發(fā)受到矚目,成為眾多有志投身數(shù) ...
2025-07-11數(shù)據(jù)透視表中兩列相乘合計(jì)的實(shí)用指南? 在數(shù)據(jù)分析的日常工作中,數(shù)據(jù)透視表憑借其強(qiáng)大的數(shù)據(jù)匯總和分析功能,成為了 Excel 用戶 ...
2025-07-11尊敬的考生: 您好! 我們誠(chéng)摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實(shí)施重大更新。 此次更新旨在確保認(rèn) ...
2025-07-10BI 大數(shù)據(jù)分析師:連接數(shù)據(jù)與業(yè)務(wù)的價(jià)值轉(zhuǎn)化者? ? 在大數(shù)據(jù)與商業(yè)智能(Business Intelligence,簡(jiǎn)稱 BI)深度融合的時(shí)代,BI ...
2025-07-10SQL 在預(yù)測(cè)分析中的應(yīng)用:從數(shù)據(jù)查詢到趨勢(shì)預(yù)判? ? 在數(shù)據(jù)驅(qū)動(dòng)決策的時(shí)代,預(yù)測(cè)分析作為挖掘數(shù)據(jù)潛在價(jià)值的核心手段,正被廣泛 ...
2025-07-10數(shù)據(jù)查詢結(jié)束后:分析師的收尾工作與價(jià)值深化? ? 在數(shù)據(jù)分析的全流程中,“query end”(查詢結(jié)束)并非工作的終點(diǎn),而是將數(shù) ...
2025-07-10CDA 數(shù)據(jù)分析師考試:從報(bào)考到取證的全攻略? 在數(shù)字經(jīng)濟(jì)蓬勃發(fā)展的今天,數(shù)據(jù)分析師已成為各行業(yè)爭(zhēng)搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢(shì)性檢驗(yàn):捕捉數(shù)據(jù)背后的時(shí)間軌跡? 在數(shù)據(jù)分析的版圖中,單樣本趨勢(shì)性檢驗(yàn)如同一位耐心的偵探,專注于從單 ...
2025-07-09year_month數(shù)據(jù)類型:時(shí)間維度的精準(zhǔn)切片? ? 在數(shù)據(jù)的世界里,時(shí)間是最不可或缺的維度之一,而year_month數(shù)據(jù)類型就像一把精準(zhǔn) ...
2025-07-09CDA 備考干貨:Python 在數(shù)據(jù)分析中的核心應(yīng)用與實(shí)戰(zhàn)技巧? ? 在 CDA 數(shù)據(jù)分析師認(rèn)證考試中,Python 作為數(shù)據(jù)處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗(yàn):數(shù)據(jù)趨勢(shì)與突變分析的有力工具? ? ? 在數(shù)據(jù)分析的廣袤領(lǐng)域中,準(zhǔn)確捕捉數(shù)據(jù)的趨勢(shì)變化以及識(shí)別 ...
2025-07-08備戰(zhàn) CDA 數(shù)據(jù)分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數(shù)據(jù)分析師認(rèn)證作為國(guó)內(nèi)權(quán)威的數(shù)據(jù)分析能力認(rèn)證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應(yīng)對(duì)策略? 長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)作為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的一種變體,憑借獨(dú)特的門控機(jī)制,在 ...
2025-07-07統(tǒng)計(jì)學(xué)方法在市場(chǎng)調(diào)研數(shù)據(jù)中的深度應(yīng)用? 市場(chǎng)調(diào)研是企業(yè)洞察市場(chǎng)動(dòng)態(tài)、了解消費(fèi)者需求的重要途徑,而統(tǒng)計(jì)學(xué)方法則是市場(chǎng)調(diào)研數(shù) ...
2025-07-07CDA數(shù)據(jù)分析師證書考試全攻略? 在數(shù)字化浪潮席卷全球的當(dāng)下,數(shù)據(jù)已成為企業(yè)決策、行業(yè)發(fā)展的核心驅(qū)動(dòng)力,數(shù)據(jù)分析師也因此成為 ...
2025-07-07剖析 CDA 數(shù)據(jù)分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數(shù)據(jù)分析師考試作為衡量數(shù)據(jù)專業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉(zhuǎn)日期:解鎖數(shù)據(jù)處理的關(guān)鍵技能? 在數(shù)據(jù)處理與分析工作中,數(shù)據(jù)格式的規(guī)范性是保證后續(xù)分析準(zhǔn)確性的基礎(chǔ) ...
2025-07-04CDA 數(shù)據(jù)分析師視角:從數(shù)據(jù)迷霧中探尋商業(yè)真相? 在數(shù)字化浪潮席卷全球的今天,數(shù)據(jù)已成為企業(yè)決策的核心驅(qū)動(dòng)力,CDA(Certifie ...
2025-07-04CDA 數(shù)據(jù)分析師:開啟數(shù)據(jù)職業(yè)發(fā)展新征程? ? 在數(shù)據(jù)成為核心生產(chǎn)要素的今天,數(shù)據(jù)分析師的職業(yè)價(jià)值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03